Skip to main content
Outpost’s paywall system lets you limit how many posts a reader can view before they’re prompted to sign up (registration wall) or upgrade to a paid subscription (metered paywall). This is configured through the Auto Display system’s Registration/Metered Wall slot.
Registration/Metered Wall showing real-time stats, article limit settings, and tag exclusions

Registration/Metered Wall configuration with stats and limits

How it works

Outpost tracks how many unique posts each reader has viewed. When their view count exceeds the configured limit, a paywall popup appears instead of the post content. The limit means “up to N posts”: the wall appears on post N+1. For example, if the limit is set to 10, the reader can view 10 posts freely and the paywall appears on the 11th post. The paywall slot is disabled by default and must be enabled in Auto Display before it takes effect. Paid and complimentary members bypass the metered paywall entirely: it only applies to unknown visitors and free members. There are two independent walls: Both can run simultaneously: a reader might hit the registration wall first, sign up for free, and later hit the metered paywall.

Setting up the paywall

Go to CTAs/Buttons/Popups → Auto Display, then click the Registration/Metered Wall tab.

Assigning audiences

The Assign section has two audience rows, each with an enable toggle and a CTA dropdown:
  • Unknown Audience: toggle on to enable the registration wall, then pick a subscribe-style paywall popup (e.g., “Paywall Popup Modern - Subscribe”).
  • Free Audience: toggle on to enable the metered paywall, then pick an upgrade-style paywall popup (e.g., “Paywall Popup Modern - Upgrade”).
Toggle either row off to disable that wall on its own, or toggle both off to turn metering off entirely while leaving other Auto Display slots running.

Article limits

The Settings section has the post-count fields:

Display trigger

Choose when the paywall appears on a metered post:

Tag exclusions

Use Don’t show on posts with tags to exempt specific posts from metering. For example, tag your most important posts with #free-access and add that tag to the exclusion list so they’re always accessible. Excluded posts don’t count toward the reader’s metered allowance. A reader who views an excluded post (whether it’s exempted by tag, or a cross-post identified by its newsletter ref) doesn’t use up one of their free views, so the exclusion never eats into the article limit for your metered content.

Different popups by tag

You can show a different paywall popup depending on a post’s Ghost tags, without changing how many posts a reader gets. Politics posts can pitch your politics newsletter while everything else shows your general subscribe popup, and both count against the same limit. Click New audience, choose which audience this extra row applies to (Unknown Audience or Free Audience), then pick one or more tags. Assign the popup afterwards, from the new row’s dropdown. Rows set up this way are called tag-based variants. A variant is not a separate allowance. Each reader has a single post count covering your whole site, and the limits in Settings apply to every post. Keep the plain Unknown Audience and Free Audience rows switched on and assigned. Posts matching none of your variants fall back to those rows, so a variant cannot stand in for them: switch them off and posts outside your tags show nothing at all.
Two things to check after adding a variant:
  • Assign it a popup. A variant left empty stops the wall appearing on posts with that tag, and those posts still count against the reader’s allowance.
  • Switching on any row switches the wall on. If your wall was off, adding a variant starts metering every post that isn’t excluded by tag.
If instead you want certain posts to be free and not count toward the limit, use the tag exclusions above. For how variants behave on posts carrying several tags, and what happens when you rename a tag, see Tag-based variants.

Editing the paywall popups

Edit the popup content (headline, body text, button text) in the CTA Library under the Registration/Metered Wall tab.

Real-time stats

A stats panel at the top of the tab shows live counts:
  • The Registration Wall has been shown N times: total displays to unknown visitors.
  • The Metered Paywall has been shown N times: total displays to free members.
  • Free signups after hitting the Registration Wall, with click-through rate.
  • Paid upgrades after hitting the Metered Paywall, with click-through rate.
For a deeper view across all CTAs, see the CTA Dashboard.

Ghost native paywalls

Ghost also supports content-level gating via the <!--members-only--> tag in posts. Content below this tag is hidden from non-members. Outpost’s metered paywall is a separate, complementary system: Both systems can be used together: Ghost’s native gating for specific premium posts, and Outpost’s metered wall for site-wide article limits. Posts that are already gated natively in Ghost (with visibility set to “members,” “paid,” or specific tiers) are automatically excluded from Outpost’s metered paywall, so readers are never double-gated.

Customizing the paywall appearance

Paywall popup design inherits from your Default Design settings. You can also customize individual paywall CTA styles in the Library under the Registration/Metered Wall tab.

Debugging the paywall

If the paywall doesn’t appear as expected, Outpost can show a debug panel directly on the page explaining its decision. Debug mode has to be switched on for your site by the Outpost team first: contact support to enable it. Then add ?outpost_debug=1 to any page URL on your site (e.g., https://yoursite.com/some-post?outpost_debug=1) and a panel appears in the corner of the page showing:
  • Whether the paywall slot is enabled
  • The current visitor’s post view count and what their limit is
  • Why the paywall did or did not appear on that page
  • Whether the post was excluded by a tag rule or site-wide exclusion
When troubleshooting the paywall, ask support to enable debug mode first: the on-page panel explains exactly why the paywall did or didn’t appear.

Frequently asked questions

The Registration Wall targets unknown visitors (not logged in) and prompts them to sign up for a free account. The Metered Paywall targets free members and prompts them to upgrade to paid. They’re independent: a visitor might hit the registration wall, sign up for free, and later hit the metered paywall.
Outpost tracks viewed posts over an approximately one-month window. The view count resets roughly once a month: it is not a precise daily rolling window, so the reset may not fall on an exact calendar date.
In the Assign section, toggle off the Unknown Audience row. The metered paywall (Free Audience) keeps running.
Yes. Ghost’s native <!--members-only--> tag gates specific posts all-or-nothing. Outpost’s metered paywall works automatically across your entire site with article limits. Use Ghost’s tag for specific premium posts and Outpost’s wall for site-wide metering.
Yes. The Registration/Metered Wall is an Auto Display slot, so toggling off the master toggle disables it along with all other Auto Display CTAs.
Yes. Use the “Don’t show on posts with tags” field to exempt posts with specific Ghost tags. For example, tag important posts with #free-access and add that tag to the exclusion list.
Yes. Click New audience in the Assign section, pick the audience and one or more Ghost tags, then choose the popup those posts should show. Readers still have a single post count covering your whole site, so the article limits in Settings are unchanged.
No. Every reader has one post count covering your whole site, and the two limits in Settings apply to every post. A tag-based variant only changes which popup appears when a reader reaches the limit. If you want certain posts not to count at all, exclude them by tag instead.

Auto Display CTAs

The Registration/Metered Wall is configured as an Auto Display slot

Tiers & Pricing

Set up the paid tiers that readers upgrade to

CTA Dashboard

View paywall performance analytics