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 on an Outpost checkout page instead of Ghost Portal. They add quarterly and semi-annual billing, and a price of their own: 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. If a subscriber clicks it while signed in, they’re told they already have a subscription. If they aren’t signed in, they can end up paying for a second one. 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 need 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, which go to annual subscribers, can include an offer to move to a different tier
  • The Nudge action automatically uses the offer a reader originally clicked
For this action to work, the email body has to link to the offer 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 link 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 Autoresponder problems need attention alert names the emails affected. It arrives with the subject “Some of your autoresponder emails need attention”. 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. One case needs an Outpost Promotion rather than a Ghost Offer: a discount on the plan a subscriber already has, while that plan is still renewing. A Ghost Offer discounts its tier’s regular price, so that checkout finds nothing to change and tells the reader “You already have an active subscription to this plan.” A Promotion has a price of its own, so it goes through as a plan change instead. A subscriber who has already turned off auto-renew can take either one. See If the offer is for the plan they already have. 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. In an autoresponder action, a campaign or a flow, attach a Ghost Offer to the email and link to it with %OFFER_URL%. Outpost builds each reader their own link to that same offer: an existing paid member gets a direct checkout that changes the plan they’re on, a complimentary member gets the same direct checkout for a new subscription, and a free reader goes through Ghost Portal. Outpost decides from what it knows about the reader, not from whether they are signed in. A reader that is in a group subscription or part of an institutional subscription is told at that checkout that they already have access. If you paste a Ghost Offer link into an email yourself, Outpost can’t convert it, so it only works for readers who don’t have a subscription yet.

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 check out on an Outpost checkout page, which is what makes these possible:
  • A discount on the plan a subscriber already has: a Ghost Offer discounts its tier’s regular price, so while that plan is still renewing, checkout finds nothing to change. A Promotion has a price of its own, so it goes through as a plan change.
  • 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.
  • Quarterly and semi-annual billing: a Ghost Offer’s cadence is monthly or annual.
  • A branded checkout page: the promotion’s own link shows your headline and description.
Best for: intro pricing, quarterly and semi-annual billing, and discounts on the plan a subscriber already has.

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 an Outpost checkout page. A Promotion has a price of its own, so it can change a subscription that already exists, and it 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 Outpost sends them for you from an autoresponder action, a campaign, or a flow. Ghost Offers check out through Ghost Portal, which shows offers only to visitors who don’t already have a subscription, because Ghost treats anyone redeeming an offer as signing up for the first time. 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. There is one exception: an offer for the plan a paid member is already on. While that plan is still renewing, the checkout tells them they already have an active subscription to this plan, so a discount on a subscriber’s own plan needs an Outpost Promotion. See If the offer is for the plan they already have. A Ghost Offer link you share yourself, including one pasted into an email, always goes through Ghost Portal. If you’re specifically targeting existing subscribers, an Outpost Promotion skips the conversion and is the better fit.
No. Only one offer applies to a subscription at a time. Someone already on a discounted plan who takes a new offer doesn’t have to cancel anything: the new offer goes through as a change to the plan they already have. Whether that happens right away or at their renewal date follows the rules in Upgrading Existing Subscribers. The one offer that doesn’t go through is one for the plan they’re already on: see If the offer is for the plan they already have.
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. Make sure the email links to the offer first: the offer button’s URL field, and any other link in the body pointing to the offer, need to be %OFFER_URL%. Then choose the offer in the dropdown. 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