Selective Hard Paywall on Metered Model
Problem Statement
Pelcro currently supports metered paywalls as a funnel to convert anonymous users into subscribers. However, when using a metered model, all content is treated equally under the meter.
Media publishers often have high-value or exclusive content (e.g. investigations, premium columns, special reports) that should always remain behind a hard paywall, regardless of a user’s remaining free articles.
At present, there is no native way to:
Exclude specific content from the meter, or
Enforce a hard paywall for selected content while still using a metered model globally.
This limits publishers’ ability to strategically monetize premium content and results in lost revenue opportunities.
User Story
As a publisher using Pelcro’s metered paywall,
I want to mark specific content (individual articles, categories, or tagged content) as always hard paywalled,
so that only authenticated subscribers or members can access it,
while all other content continues to follow the standard metered paywall flow.
Proposed Solution (High-Level)
Introduce a hard paywall override mechanism that works on top of the existing metered paywall logic.
The decision to hard paywall content is driven by metadata provided by the CMS
When flagged content is accessed:
The meter is bypassed
Access is immediately restricted to entitled users only
Non-flagged content continues to follow the standard meter rules
Functional Requirements
Content Classification
Support hard paywall rules based on CMS-provided metadata, such as:
Single article ID
Category
Tag
Metadata structure and keys should be configurable or clearly documented.
Access Logic
For flagged content:
Anonymous users → hard paywall shown immediately
Logged-in but non-entitled users → hard paywall
Entitled users → full access
Meter count must not increment for hard-paywalled content.
API Behavior
API must expose:
Whether a piece of content is subject to a hard paywall
Whether access is granted or denied based on entitlement
Decision logic must be deterministic and auditable.
JS-SDK Behavior
SDK must:
Consume CMS metadata
Call the relevant Pelcro API to evaluate access
Trigger the correct paywall state (metered vs hard)
SDK should clearly distinguish:
“Meter exhausted”
“Hard paywall – subscription required”
Out of Scope (Initial Phase)
Admin UI for managing hard paywall rules (can be API/config only initially)
Content preview or partial access logic
Dynamic pricing or offer personalization tied to hard paywalled content
Definition of Done (DoD)
✅ Publishers can flag content as hard paywalled via CMS metadata
✅ Hard paywalled content always bypasses the meter
✅ Metered content behavior remains unchanged
✅ API exposes clear access decision results
✅ JS-SDK correctly enforces hard paywall vs meter logic
✅ Anonymous and authenticated user states are handled correctly
✅ Meter counters are not affected by hard paywalled content
✅ Feature is documented (API + SDK)
✅ Automated tests cover:
Metered content
Hard paywalled content
Mixed scenarios (same user, different content types)
Business Impact
Unlocks premium content monetization
Allows publishers to protect and price exclusive journalism
Improves conversion by keeping the meter as a funnel while safeguarding high-value assets
Aligns Pelcro with industry-standard paywall strategies used by leading media organizations
Log in to comment and vote
Comments2
Michael Ghattas
Jan 6
I believe this can already be done on the platform. You can create multiple paywalls and target them based on the tags.
Chris Gogos
Jan 7
Yes, and Ahmed ran me through it, how to add another paywall to the same product. All good. Thanks