Subscription/Paywall Schema Generator

Generate valid JSON-LD structured data for content behind paywalls and subscription gates. Configure your access model, whether it's metered, hard paywall, freemium, or registration wall, and this generator builds valid Schema.org CreativeWork markup with the isAccessibleForFree and hasPart properties Google needs to properly index and display your gated content. Keep your paywalled articles in Google's index without violating cloaking guidelines.

Select Access Model
Hard Paywall
Fully locked behind subscription
Metered
Free articles per time period
Freemium
Mix of free and premium content
Registration Wall
Free but requires account
Lead Generation
Access in exchange for email
Paywall + Preview
Free preview, rest locked
Content Type
Article
News Article
Blog Post
Creative Work
Article Details
Author & Publisher
Featured Image
Access Configuration
How it works: Use CSS selectors to point Google to the HTML elements that contain your free preview content and your locked content. For example, .free-preview for visible content and .paywalled-content for gated content.
Free Content Section Accessible
Locked Content Section Requires Access

Generated Paywall Schema (JSON-LD)

Why Do Paywalled Sites Need Special Schema?

When content sits behind a paywall, search engines face a dilemma. They can see the full content during crawling (most paywall systems let Googlebot through), but regular users can't access it without paying. Without structured data explaining this arrangement, Google has to guess whether the page is intentionally restricting access or whether something is broken.

More critically, Google needs to distinguish between legitimate paywall implementations and cloaking, which is the practice of showing different content to search engines than to users. Cloaking is a serious spam violation. Paywall schema exists specifically to tell Google "yes, we're showing you the full content, and yes, users see a gate, and here's exactly how the access model works." It's a transparency mechanism that protects your site from being flagged for deceptive practices.

Without this schema, Google may choose not to index your paywalled content at all, or may index it but suppress it in results because it can't confidently present content that users might not be able to read. Either outcome defeats the purpose of having your content discoverable through search in the first place.

Google formalized its approach to paywalled content in 2017 with the "Flexible Sampling" guidelines, which were later refined into the structured data requirements for subscription and paywalled content. The schema markup this tool generates is the technical implementation of those guidelines.

How Does Google Handle Paywalled Content?

Google's approach to paywalled content has evolved through several phases, and understanding the current model helps explain why the schema matters.

In the early days of web search, paywalled content was largely invisible. If Googlebot couldn't see the content, it couldn't index it, and the page effectively didn't exist in search. Publishers responded by letting Googlebot access the full article while blocking regular users, which worked but looked a lot like cloaking.

Google eventually created an explicit exception to its cloaking policy for news publishers using "First Click Free," which required publishers to show the full article to users arriving from Google for their first visit, then gate subsequent articles. This program was controversial and limiting.

The current model replaced First Click Free with a more flexible approach. Publishers can implement whatever access model they choose, from hard paywalls to metered access to registration walls, as long as they use structured data to describe the arrangement. Google indexes the full content (accessed through Googlebot), understands the access restrictions through the schema, and can then decide how to present the content in search results.

Google may show paywalled content in regular search results with a small label or icon indicating restricted access. The content competes for rankings like any other page, but users see an indication that they may need a subscription to read the full article. This transparency benefits everyone: publishers get search visibility, users know what to expect, and Google maintains result quality.

What Access Models Does This Generator Support?

The generator handles every common paywall and subscription model, each producing slightly different schema configurations.

  • Hard paywall. Content is completely locked behind a subscription. Users see a headline and maybe a sentence or two before hitting the gate. The schema marks the entire article body as requiring paid access while identifying any free portions like the headline and lead paragraph.
  • Metered paywall. Users get a set number of free articles per time period before the paywall activates. The New York Times model of "10 free articles per month" is the classic example. The schema indicates that the content is conditionally free, with access depending on the user's consumption history.
  • Freemium model. Some content is always free and some is always locked. The schema distinguishes between free sections and premium sections within the same page, or marks entire pages as free or premium depending on how your site structures its content tiers.
  • Registration wall. Content is free but requires the user to create an account or log in. No payment is involved, but access is gated behind registration. The schema reflects that the content requires authentication but not a paid subscription.
  • Lead generation gate. Content is accessible in exchange for an email address or form submission rather than a login or payment. This is common for whitepapers, reports, and gated guides. The schema indicates that access requires an action but not a financial transaction.
  • Hard paywall with preview. A variation where a meaningful portion of the content is freely visible and the remainder requires payment. The schema uses the hasPart property to define exactly which sections are free and which are gated, giving Google precise information about what users can see without paying.

What Properties Does the Schema Include?

The generator builds a CreativeWork schema block (typically using the Article or NewsArticle subtype) with the specific properties Google requires for paywalled content.

  • isAccessibleForFree. The core property. Set to "False" when the full content requires payment or subscription. Set to "True" when the content is fully free. For mixed-access pages where some parts are free and others aren't, this is set to "False" at the article level with individual parts marked separately.
  • hasPart. This property defines sections of the page with their own access rules. Each part is a WebPageElement identified by a CSS selector (using cssSelector) that points to the specific HTML element containing that section. Each part has its own isAccessibleForFree value.
  • CSS selectors for content sections. The hasPart entries use cssSelector to point to DOM elements. You specify selectors like ".article-body" for the locked portion and ".free-preview" for the accessible portion. Google uses these selectors to understand the boundary between free and gated content.
  • Standard article properties. The paywall-specific properties sit alongside normal article schema: headline, author, publisher, datePublished, dateModified, image, and description. A complete schema block for paywalled content is a regular article schema block with the access control properties added on top.

How Should I Structure My HTML for This to Work?

The schema relies on CSS selectors to identify free and locked content sections, which means your HTML needs to have clear, targetable boundaries between the two.

  • Wrap free content in its own container. The portion of the article visible to all users should be inside a distinct HTML element with a class or ID you can reference. Something like <div class="free-preview"> works well.
  • Wrap locked content in a separate container. Everything behind the paywall should be in its own element, like <div class="paywalled-content">. This gives you a clean selector to reference in the hasPart property.
  • Keep the paywall gate outside both containers. The subscription prompt, pricing information, and login form should be in their own element, separate from both the free content and the locked content.
  • Use stable, semantic class names. The selectors in your schema need to match your HTML reliably across every article. Don't use dynamically generated class names or markup that changes between articles.

If your CMS generates article HTML with a predictable structure, you can use the same selectors across all articles and generate the schema dynamically. If each article has a custom layout, you'll need to configure the selectors per article or standardize your templates.

Does This Affect How My Content Ranks?

Paywall schema doesn't boost or penalize your rankings. Google has stated that paywalled content is eligible to rank on the same terms as free content. The schema is about access transparency, not ranking signals.

  • Indexing reliability. Without the schema, Google may not index your paywalled content consistently. With it, Google indexes the full article and understands the access model, which means your content is eligible to rank for relevant queries.
  • Click-through considerations. Users who see a paywall indicator in search results may be less likely to click if they're not subscribers. However, the users who do click are pre-qualified: they either have a subscription, are willing to subscribe, or are willing to consume whatever free portion you offer.
  • Content quality signals. Google evaluates content quality based on what Googlebot can see, which for most paywall implementations is the full article. High-quality paywalled content from authoritative publishers can and does outrank free content on the same topic.
  • Subscriber conversion opportunity. Every search impression for a paywalled article is a potential subscriber touchpoint. The schema makes this funnel possible by keeping your content in the search index.

What Are Google's Cloaking Rules for Paywalls?

Understanding the cloaking boundary is essential for any paywalled site. Get it wrong, and Google may apply a manual action that removes your pages from search entirely.

  • What's allowed. Showing Googlebot the full article content while showing users a paywall gate is allowed as long as you implement the structured data correctly. This is the explicit exception Google carved out for subscription content. The schema is your declaration that the content difference between Googlebot's view and the user's view is intentional and transparent.
  • What's not allowed. Showing Googlebot entirely different content than what exists behind the paywall. If Googlebot sees a 2,000-word article but subscribers see a 500-word article with different text, that's cloaking regardless of your schema.
  • Metered access specifics. For metered paywalls, Google expects that users arriving from search can access the content within the meter's allowance. If your meter allows five free articles per month, a user clicking through from Google should be able to read the article as one of their five. Blocking Google referral traffic from consuming meter credits while claiming the content is metered would be deceptive.

Can I Use This for Non-News Content?

Absolutely. While paywall schema was developed primarily with news publishers in mind, it works for any content type that restricts access.

  • Online courses and educational platforms. Course content where the first lesson is free and the rest requires enrollment maps directly to the hasPart model.
  • Research reports and whitepapers. Analyst reports, industry studies, and research papers often show an executive summary for free while gating the full document.
  • Premium blog content. Membership-based blogs and newsletters that publish some posts for free and others for paying subscribers.
  • SaaS documentation with tiered access. Some software products restrict access to advanced documentation or API references behind a paid tier.
  • Legal and financial databases. Platforms that provide case law, financial filings, or regulatory documents behind a subscription.

The CreativeWork type that the paywall properties attach to is broad enough to cover any content format. Whether you're gating articles, videos, podcasts, tools, or downloadable resources, the same isAccessibleForFree and hasPart properties apply.

Common Paywall Schema Mistakes to Avoid

  • Omitting the schema entirely. Letting Googlebot crawl your full content without structured data explaining the paywall is technically cloaking. Implement the schema on every paywalled page to stay clearly within guidelines.
  • Using incorrect CSS selectors. If your selectors don't match the actual HTML elements containing free and locked content, the schema provides Google with wrong information about what users can see. Test your selectors in the browser console before deploying.
  • Marking the entire page as free when only a preview is accessible. Setting isAccessibleForFree to "True" when most of the content requires payment misrepresents the user experience. Google may penalize this if it detects that users consistently hit a paywall on pages marked as free.
  • Forgetting to update schema when the access model changes. If you switch from a hard paywall to a metered model, the schema needs to reflect the new reality. Outdated access information creates exactly the kind of mismatch the schema is supposed to prevent.
  • Not including standard article properties. Paywall schema doesn't replace normal article schema. It extends it. A schema block with only isAccessibleForFree and hasPart but no headline, author, publisher, or dates is incomplete and won't support rich results.
  • Blocking Googlebot from paywalled content. If your paywall blocks Googlebot along with regular users, Google can't see the content to index it. Configure your paywall to recognize Googlebot and serve the full page, then use the schema to explain the access restriction.

Let's Grow Your Business

Want some free consulting? Let’s hop on a call and talk about what we can do to help.