Skip to main content
Offers let you present special pricing to prospective or existing members. They’re built on top of tiers: an offer is a discounted or promotional way to access a tier. Ghost provides its own offer system, and so does Outpost. You can use either or both.
Ghost Offers page listing offers with tier, discount type, amount, duration, redemption count, and status

The Ghost Offers page showing active offers with discount details and redemption stats

Go to Subscriptions → Ghost Offers to manage Ghost-side offers, or Subscriptions → Outpost Promotions to manage Outpost-side promotions. The two use similar configuration forms but differ in how the checkout flow runs (see comparison below).

Offer types

Discount duration

When creating a percent or fixed discount, choose how long the discount lasts. The dropdown labels in the form are:

Creating a Ghost Offer

Go to Subscriptions → Ghost Offers and click New Offer. Configure:

Creating an Outpost Promotion

Go to Subscriptions → Outpost Promotions and click New Offer. Promotions check out directly through Stripe instead of Ghost Portal, and add quarterly and semi-annual billing and native support for existing paid and complimentary members: Outpost creates the corresponding Stripe price/coupon automatically. When a member subscribes via an offer or promotion, the discount is applied at checkout.
Each offer is tied to a specific tier and billing interval. If you want to offer the same discount on both monthly and annual plans, create two separate offers.

Sharing an offer

Each offer has a unique URL. Share it in: When a visitor clicks the offer link, the discounted pricing is pre-applied to the subscription checkout page. A shared offer link is for readers who don’t have a subscription yet. It’s the same address for every reader, so a reader who already subscribes is told they already have an active subscription, and one who is signed out can start a second subscription alongside the one they’re already paying for. If you send this through Ghost or publish it on a post, restrict that email or post to free readers.

Tracking offer performance

The offer detail page shows performance metrics:

Archiving and restoring offers

  • Archive an offer to deactivate it. The offer URL will no longer work for new signups, but existing members who redeemed it keep their discount.
  • Unarchive to reactivate an archived offer and make it available again.
Archived offers are hidden from the main list but can be viewed by filtering for archived offers.

Archiving an offer used in an autoresponder email

If a Ghost Offer is still assigned to an autoresponder action when you archive it, Outpost flags the problem in three places:
  • On the Basic Autoresponder page, the action’s Offer cell reads “Archived: ” followed by the offer’s terms, and the action row is highlighted so you can spot it. (If the offer was deleted from Ghost entirely rather than archived, the cell reads “Removed offer” instead.)
  • Opening the offer selector for that action shows a message telling you the template is assigned to an archived offer and asking you to choose an active one to replace it.
  • Outpost sends an “Archived offers needs attention” notification listing every action affected.
Archived offers never appear in the offer selector, so you either pick an active offer or clear the one that’s set and save. The empty choice sits at the top of each tab: No Offer on the Ghost Offers tab, No Promotion on the Outpost Promotions tab. An offer that’s still active but whose tier has been archived is flagged the same way.

Offers in autoresponder emails

Offers integrate with the Autoresponder: many pre-built email actions include an Offer dropdown where you can attach a discount. You can select any existing Ghost Offer or Outpost Promotion rather than creating a new one each time. For example:
  • Welcome drip emails can include progressively better offers to convert free members
  • Cancellation emails can include a retention offer
  • Renewal reminder emails can include a loyalty discount
  • The Nudge action automatically uses the offer a reader originally clicked
Attaching the offer is half the job. The email body has to link to it with the %OFFER_URL% shortcode, which is what tells Outpost to build each reader their own checkout link. Put %OFFER_URL% in the URL field of the offer button, and in any other link in the body pointing to the offer, rather than a web address you write yourself. See Offer and action links for where that field is. If an action has an offer attached and the email never links to it, the Autoresponder page prints a warning under that action’s row, and the daily Autoresponder problems needs attention email names the emails affected. This usually happens when a new body is pasted over one of the built-in emails, because the replacement has no shortcode in it while the offer stays attached. Reusing an existing offer across multiple autoresponder actions keeps your Ghost and Outpost offer lists clean.

Tier vs. Ghost Offer vs. Outpost Promotion

These three terms get conflated a lot. Before comparing offer types, the lay of the land: So both an Offer and a Promotion are pricing modifications on top of a tier. They aren’t tiers themselves. Pick between them based on the comparison below.

Ghost Offers vs Outpost Promotions

When attaching an offer to an autoresponder action, or choosing which type of offer to share, you have two options. They behave differently in important ways:
Auto-conversion happens when Outpost sends the offer for you. Attach a Ghost Offer to an autoresponder action, a campaign or a flow, and link to it in the email with %OFFER_URL%, and Outpost builds each reader their own link: an existing paid or complimentary member gets a direct checkout that upgrades the subscription they already have, and a free or signed-out reader goes through Ghost Portal. A Ghost Offer URL pasted into an email is the same address for every reader, so it doesn’t get converted for anyone.

When to use Ghost Offers

Ghost Offers appear in Ghost Portal and are the natural choice when a free or unknown visitor is converting to a paid subscription for the first time. They stay in sync with Ghost automatically. Best for: free-to-paid conversion, welcome drip sequences, any scenario where the reader doesn’t yet have a subscription.

When to use Outpost Promotions

Outpost Promotions route checkout through Stripe directly, which lets them do things Ghost Offers can’t:
  • Existing paid and complimentary subscribers: Ghost Offers are built for free and signed-out visitors checking out through Ghost Portal. When you attach one to an autoresponder action, Outpost automatically converts it to a direct checkout for paid or complimentary recipients so it still applies, but Outpost Promotions use that direct checkout for everyone natively, which makes them the cleaner choice for retention, upgrades, and plan changes.
  • Subscription schedules: set an introductory rate that automatically transitions to a standard renewal price after a set period. This is useful for 3- or 6-month intro plans.
Best for: retention flows, upgrade offers, annual-to-monthly or monthly-to-annual switches, any scenario involving an existing subscriber.

Frequently asked questions

An Offer (also called a Ghost Offer) is created through Ghost’s native offer system: checkout goes through Ghost Portal. An Outpost Promotion is Outpost’s own offer system: checkout goes through a direct Stripe page. Promotions are more flexible: they work for existing paid and complimentary subscribers and can use subscription schedules. See the comparison table above for full details.
Yes. When creating a Ghost Offer, set the offer type to Free trial and choose the trial length in days. Readers who redeem the offer get full paid access for the trial period and are charged when it ends. Outpost Promotions support free trials too, so pick whichever checkout flow fits: Ghost Portal for new signups, or a Promotion for existing subscribers (see the comparison table above). Ghost separately supports a tier-wide trial, a setting on the tier itself that applies to everyone who subscribes to it.
Yes, when you attach them to an autoresponder action. Ghost Offers normally check out through Ghost Portal, which only works for free or signed-out visitors. But when Outpost sends an offer to a member it already knows is complimentary or on a paid plan, it automatically converts the Ghost Offer into an equivalent direct checkout so the discount still applies. (A raw Ghost Offer link opened by a signed-out visitor still goes through Ghost Portal.) If you’re specifically targeting existing subscribers, an Outpost Promotion skips the conversion and is the better fit.
No. A member can only use one offer when subscribing. If they click a new offer link while already on a discounted plan, they would need to cancel and resubscribe to use the new offer.
When the discount duration ends (e.g., after 3 months), Stripe automatically starts charging the full tier price on the next billing cycle. No action needed from you or the member. When a member who already has a subscription takes the offer as a plan change, the checkout screen names the next renewal date with the price charged on it, and when a Multiple Months discount is still running at that renewal it adds a second dated line for the first renewal back at full price. That second line is left out only when the discount is long enough to outlast the twelve renewals the screen looks ahead. See Upgrading Existing Subscribers for what that screen shows.
You can update some fields on an existing offer, but certain fields may be locked once members have redeemed it. If you need substantially different terms, create a new offer and archive the old one.
Many autoresponder actions have an Offer dropdown. Attach an offer there, then make sure the email links to it: the offer button’s URL field, and any other link in the body pointing to the offer, need to be %OFFER_URL%. Outpost turns that shortcode into a checkout link built for the reader receiving the email, with the discount pre-applied. If an offer is attached and the body never uses the shortcode, Outpost warns you on the Autoresponder page. This is particularly useful for retention emails: you can automatically offer a discount to members who cancel.
Offers themselves don’t have audience targeting, but you control distribution. Share the offer URL only with the audience you want (via targeted email campaigns, specific CTAs, or private links). You can also set an expiration date to control usage.
Outpost validates the customer’s Stripe currency against the offer before checkout. If a returning customer already has a currency on file (for example, USD) and the offer is priced only in a different currency (for example, EUR), the checkout is blocked and the customer sees “Currency mismatch. Please contact support.” This is a safety net: most publications run a single Stripe currency and never see this. If you intentionally run multi-currency offers, configure each offer’s prices with currency_options for every currency you sell in.

Tiers & Pricing

The subscription products that offers are built on top of

Autoresponder

Attach offers to automated emails for conversion and retention

CTAs & Auto Display

Display offers in conversion popups, slide-ups, and in-post CTAs

Subscription Schedules

Two-phase pricing as an alternative to offer-based discounts