Structured dataAdvanced

Paywalled Content Markup

Paywalled content markup tells Google which parts of a page sit behind a paywall or login, so serving it fully to Googlebot is not mistaken for cloaking.

Also called: isAccessibleForFree, Subscription and paywalled content structured data

Sites that gate content behind subscriptions or registration often let Googlebot see the full text so it can be indexed. Without context, showing crawlers more than users looks like cloaking. Google's paywalled content structured data uses isAccessibleForFree set to false and a hasPart WebPageElement with a cssSelector to mark which sections are gated.

The markup

Set isAccessibleForFree to false on the Article or other CreativeWork, then describe the gated section with a WebPageElement whose cssSelector matches a class on the paywalled HTML. Google supports class selectors for this.

{
  "@context": "https://schema.org",
  "@type": "Article",
  "headline": "Annual state of usage-based pricing",
  "isAccessibleForFree": false,
  "hasPart": {
    "@type": "WebPageElement",
    "isAccessibleForFree": false,
    "cssSelector": ".gated-report"
  }
}

When SaaS companies need it

The common case is gated content: a research report or template library that asks for an email before showing the full piece. If the full text is in the HTML for crawlers while users see a form, mark it up. If crawlers see the same form as users, there is nothing hidden and no markup is needed, though the gated part then cannot be indexed.

Choosing a gating approach

Many teams show a substantial ungated section, such as the summary and key charts, with the form below. That gives search engines and readers something useful without relying on serving different content to crawlers.

Example

A gated benchmark report

Larkholm publishes a benchmark report behind an email form. Its page renders the full report in HTML inside a div with the class gated-report, hidden by a client-side gate until the form is submitted. Article markup marks that section as not free, so Google can index the text while understanding why users see a form.

Common mistakes

Selector mismatch

If the cssSelector does not match an element on the page, the markup does not describe anything.

Questions

No. Content in the HTML can be read by anyone who views the source. Use it only for content where that is acceptable.

Know the terms. Now win the searches.

We find the searches your buyers make, then build, publish and improve the pages that win them.