Paywall Tester

Check how a paywalled page looks to Google, to avoid cloaking issues.

Why this matters for paywalled content

Google allows "flexible sampling" paywalls where search crawlers and visitors both see a preview, but it explicitly prohibits showing crawlers the complete article while showing regular visitors only a locked preview - that is treated as cloaking, which can lead to a manual action against the site. This fetches your page once with a Googlebot user agent and once with a regular browser user agent, then compares how much visible text each version actually contains.

Why a small difference is normal, but a large one is the pattern worth investigating

A small difference is normal and expected for a legitimate metered or preview paywall. A large difference - where Googlebot sees dramatically more content than a real visitor - is the pattern that matters: it's the specific signature of a paywall implemented by detecting the Googlebot user agent and serving it the full article, rather than by the documented flexible-sampling approach Google permits.

Why the tool reports a character count for each version rather than just a pass/fail verdict

Showing the actual character counts (and a short text preview) for both the Googlebot and the regular-visitor version lets you see the specific gap for yourself, rather than trusting a single verdict label blindly - useful for judging whether a flagged difference is genuinely the full article being hidden, or just a longer preview than expected.

Why this checks the page's HTML directly rather than relying on the page's own schema markup

A page could claim to use flexible sampling and isAccessibleForFree structured data correctly while still serving crawlers meaningfully more content than visitors in practice - comparing what each user agent actually receives, rather than trusting what the markup claims, is what catches a real implementation gap between the two.

Frequently asked questions

Is any difference between the two versions a violation?

No - Google's structured data for paywalled content explicitly allows showing crawlers more than free visitors see, as long as it is implemented correctly (using the isAccessibleForFree schema markup). The concern is an undisclosed, large gap implemented without that markup.

What should I do if this flags a high risk?

Review how your paywall serves content to different user agents, and make sure any legitimate preview arrangement uses Google's documented flexible sampling and structured data approach rather than simple user-agent detection.

Why does the tool show character counts instead of just a verdict?

Seeing the actual counts and text previews for both versions lets you judge the specific gap yourself, rather than relying on a single label - useful for telling a genuine full-article leak apart from just a longer preview.

Why does a large gap specifically point to user-agent-based cloaking?

Serving Googlebot dramatically more text than a real visitor sees is the exact pattern produced by detecting the crawler's user agent and unlocking the full article only for it - a documented flexible-sampling paywall doesn't typically create a gap that large.

Does this check the page's schema markup for correctness?

No - it compares what Googlebot and a regular browser actually receive in practice, which can reveal a real implementation gap even on a page whose markup claims to be set up correctly.

More in Technical SEO & Site Management