Paywalls và SEO

Cách giữ paywalled và registration-gated nội dung indexable không có cloaking — flexible sampling, isAccessibleForFree/cssSelector markup, đó JavaScript-paywall trap, và metering strategy.

Xuất bản lần đầu: 3 thg 7, 2026 · Cập nhật lần cuối: 8 thg 8, 2026 · Advanced
Ngôn ngữ

MỘT paywall không inherently hurt SEO — Google có không bias so với gated nội dung, và đó biggest paywalled publishers xếp hạng fine. Điều gì hurts là Google không đang able để see đủ nội dung để understand đó trang. Đó supported cách sửa là flexible sampling: let Googlebot crawl đó đầy đủ bài viết, thì declare đó gated part với dữ liệu có cấu trúc (isAccessibleForFree plus một cssSelector). đó là an rõ ràng, sanctioned exception để cloaking — cloaking là về intent để deceive; này là một declared mechanism. Dùng metering (bắt đầu khoảng 6–10 free các bài viết/month) hoặc lead-trong, gate máy chủ-side (không với JavaScript đó chỉ hides nội dung trong đó DOM), cho login các trang unique copy, và không bao giờ dùng robots.txt để hide riêng tư URLs.

Tóm tắt — Paywalls không inherently hurt thứ hạng; Google là unable để see của bạn nội dung làm. supported model là flexible sampling — metering hoặc lead-trong — declared với dữ liệu có cấu trúc (isAccessibleForFree: false plus hasPart/cssSelector marking gated section, class selectors chỉ). đó declaration là Điều gì làm serving Googlebot đầy đủ bài viết không cloaking: cloaking requires intent để manipulate và mislead, và Google spam policy explicitly carves paywalls out của đó definition. Gate máy chủ-side ( 2025 doc cập nhật và Mueller screen-reader caution cả hai đích giống nhau JS-hiding mistake), cho login các trang unique copy, không bao giờ robots.txt riêng tư các URL, và sử dụng noarchive để dừng được lưu đệm copy leaking đầy đủ text. Registration walls sử dụng giống nhau markup as paid ones.

Điều gì thực ra gây ra xếp hạng các vấn đề (nó không phải gate)

Paywall eligibility phụ thuộc vào crawlable nội dung và chính xác markup; presence của paywall alone không phải được ghi lại as hình phạt. Evidence for this claim Official or primary documentation supporting the adjacent article claim, with scope limited to the source's published description. Scope: No ranking guarantee or undisclosed system mechanics are inferred beyond the cited source. Confidence: high · Verified: Google: Paywalled content structured data Sampling choices vẫn publisher decisions với người dùng và business tradeoffs. Evidence for this claim Official or primary documentation supporting the adjacent article claim, with scope limited to the source's published description. Scope: No ranking guarantee or undisclosed system mechanics are inferred beyond the cited source. Confidence: high · Verified: Google: Flexible sampling

Google có không hình phạt cho paywalled nội dung, và điều này bài viết parent hub nói as nhiều: gated nội dung là fine miễn là Google có thể đọc nó qua supported approach. thất bại chế độ là upstream của xếp hạng — nó comprehension. nếu Googlebot chỉ bao giờ sees teaser, đó teaser là all nó có thể chỉ mục và xếp hạng bạn cho. mỗi technique dưới tồn tại để solve một vấn đề: let engine đọc toàn bộ điều, trong khi unauthenticated humans vẫn hit gate.

Hai boundaries worth stating plainly, since đây là easy để overreach trong either direction. Đầu tiên, này markup là một tool cho nội dung bạn muốn được lập chỉ mục dưới một declared gate — không một mechanism cho exposing nội dung bạn không muốn được lập chỉ mục tại all. Genuinely riêng tư account/admin URLs là một khác nhau case (see đó decision tree dưới): những nhận noindex hoặc an authentication chuyển hướng, không isAccessibleForFree. Second, hợp lệ markup và đầy đủ crawl access không phải một xếp hạng bảo đảm. Google structured-dữ liệu guidelines chẳng hạn trực tiếp đó “Google does not guarantee that features that consume structured data will show up in search results” (bản dịch) «Google không bảo đảm đó features đó consume dữ liệu có cấu trúc sẽ cho thấy lên trong kết quả tìm kiếm» — đó markup là đó declaration đó giữ bạn out of đó cloaking bucket, không một promise of lập chỉ mục, xếp hạng, traffic, hoặc một rich kết quả.

Trong lịch sử Đây là nơi biggest cautionary tale xuất hiện từ. Khi Wall Street Journal pulled out của Google old đầu tiên Nhấp Free program trong 2017, nó reported ~44% drop trong Google tìm kiếm traffic — không vì paywalls là penalized, nhưng vì Google có thể không lâu hơn see các bài viết tại all. (nhiều hơn on đầu tiên Nhấp Free dưới; nó là history, không hiện tại policy.)

Flexible sampling: metering và lead-trong

Đó hiện tại, active model là flexible sampling, laid out trong Google Flexible Sampling guidelines. Google mô tả hai sampling types: “metering, which provides users with a quota of articles to consume before requiring users to subscribe or log in, after which paywalls will start appearing; and lead-in, which offers a portion of an article’s content without it being shown in full.” (bản dịch) «metering, mà cung cấp người dùng với một quota of các bài viết để consume trước requiring người dùng để subscribe hoặc log trong, sau mà paywalls sẽ bắt đầu appearing; và lead-trong, mà offers một portion of an bài viết nội dung không có điều này đang shown trong đầy đủ.»

numbers đó quan trọng, all từ Google own doc:

  • Ưu tiên monthly over daily metering. Google: “In general, we think that monthly, rather than daily metering provides more flexibility and a safer environment for testing.” (bản dịch) «Nhìn chung, we think đó monthly, thay vì daily metering cung cấp hơn flexibility và một safer environment cho kiểm thử.» MỘT một-unit thay đổi là far ít hơn jarring tại 10 monthly samples hơn tại 3 daily ones.
  • Bắt đầu khoảng 6–10 free các bài viết/month. “As a starting point for your explorations, we encourage you to provide 10 articles per month… for most daily news publishers, we expect the value to fall between 6 and 10 articles per user per month.” (bản dịch) «As một starting point cho của bạn explorations, we encourage bạn để cung cấp 10 các bài viết theo month… cho hầu hết daily news publishers, we expect đó giá trị để fall giữa 6 và 10 các bài viết theo người dùng theo month.»
  • Watch đó exposure ceiling. “Our analysis shows that general user satisfaction starts to degrade significantly when paywalls are shown more than 10% of the time (which generally means that about 3% of the audience has been exposed to the paywall).” (bản dịch) «Của chúng ta analysis cho thấy đó chung người dùng satisfaction bắt đầu để degrade significantly khi paywalls là shown hơn 10% of đó time (mà generally có nghĩa là đó về 3% of đó audience đã được exposed để đó paywall).»
  • Lead-trong là một good practice. Cho thấy đó đầu tiên một vài sentences trên đó paywall lets người dùng “experience the value of the content.” (bản dịch) «experience đó giá trị of đó nội dung.»

None of những numbers là một mandate. Google says trực tiếp: “There is no single value for optimal sampling across different businesses” (bản dịch) «Có không single giá trị cho optimal sampling trên khác nhau businesses» — đó 6–10/month hình là một starting point Google cho cụ thể cho daily news publishers, và ngay cả đó xuất hiện với “we leave the exact number to the discretion of individual publishers, who are best positioned to understand the particular demands of their businesses.” (bản dịch) «we leave đó chính xác number để đó discretion of riêng lẻ publishers, ai là best positioned để understand đó particular demands of của họ businesses.» Treat điều này as một tested starting range, không một rule để copy verbatim.

Đó dưới-appreciated point: metering không phải purely một monetization dial. Google opens đó doc noting đó “even minor changes to the current sampling levels could degrade user experience and, as user access is restricted, unintentionally impact article ranking in Google Search.” (bản dịch) «ngay cả minor thay đổi để đó hiện tại sampling levels có thể degrade người dùng experience và, as người dùng access là restricted, unintentionally impact bài viết xếp hạng trong Google Search.» Tightening đó meter có thể âm thầm cost bạn thứ hạng.

Vì sao điều này không phải cloaking — reasoning, không chỉ rule

Này là đó load-bearing part of đó toàn bộ topic, và hầu hết các hướng dẫn assert đó conclusion (“paywalls aren’t cloaking if you use structured data” (bản dịch) «paywalls không cloaking nếu bạn dùng dữ liệu có cấu trúc») không có cho thấy vì sao. Ở đây đó thực tế reasoning, straight từ Google spam policies.

Bắt đầu với đó definition. Cloaking là “the practice of presenting different content to users and search engines with the intent to manipulate search rankings and mislead users.” (bản dịch) «đó practice of presenting khác nhau nội dung để người dùng và các công cụ tìm kiếm với đó intent để manipulate tìm kiếm thứ hạng và mislead người dùng Đó load là on đó clause — intent để manipulate và mislead. MỘT paywall không trying để trick anyone; đây là monetizing nội dung, và đây là declaring đó khác biệt trong treatment qua markup.

Thì đó rõ ràng carve-out, trong đó giống nhau policy: “If you operate a paywall or a content-gating mechanism, we don’t consider this to be cloaking if Google can see the full content of what’s behind the paywall just like any person who has access to the gated material and if you follow our Flexible Sampling general guidance.” (bản dịch) «Nếu bạn operate một paywall hoặc một nội dung-gating mechanism, we không consider này để là cloaking nếu Google có thể see đó toàn bộ nội dung of điều gì là behind đó paywall chỉ như bất kỳ person ai có access để đó gated material và nếu bạn follow của chúng ta Flexible Sampling chung hướng dẫn.»

So đó exception có hai conditions: (1) Google sees đó giống nhau toàn bộ nội dung một paid subscriber sẽ, và (2) bạn follow flexible sampling — mà trong thực tế có nghĩa là đó dữ liệu có cấu trúc dưới. Google flexible-sampling doc reinforces đó giống nhau logic: “Enclose paywalled content with structured data in order to help Google differentiate paywalled content from the practice of cloaking, where the content served to Googlebot is different from the content served to users.” (bản dịch) «Enclose paywalled nội dung với dữ liệu có cấu trúc trong order để help Google differentiate paywalled nội dung từ đó practice of cloaking, nơi đó nội dung phân phối để Googlebot là khác nhau từ đó nội dung phân phối để người dùng.» Đó structured dữ liệu đó declaration đó turns “different content for bots” (bản dịch) «khác nhau nội dung cho bots» từ deception vào một disclosed, sanctioned mechanism.

Implementing dữ liệu có cấu trúc

markup lives trong Google Subscription và paywalled nội dung doc. Hai properties làm hoạt động:

  • isAccessibleForFree (Boolean, bắt buộc) — liệu nội dung là free hoặc gated. Google own thuộc tính reference marks điều này bắt buộc một; đặt nó on top-cấp độ CreativeWork/NewsArticle node on mỗi gated section.
  • hasPart (được khuyến nghị, không bắt buộc) — array của WebPageElement objects, một theo gated section, mỗi với của nó own isAccessibleForFree: falsecssSelector pointing tại class bạn wrapped gated HTML trong. Đây là Cách bạn tell Google mà part của piece là gated Khi nó section rather hơn toàn bộ điều; nó được khuyến nghị way để nhận section-cấp độ precision, không thứ hai bắt buộc thuộc tính alongside top-cấp độ flag.

minimal NewsArticle looks như điều này:

{
  "@context": "https://schema.org",
  "@type": "NewsArticle",
  "isAccessibleForFree": false,
  "hasPart": {
    "@type": "WebPageElement",
    "isAccessibleForFree": false,
    "cssSelector": ".paywall"
  }
}

Three chi tiết triển khai mọi người trip on:

  • Class selectors chỉ. Đó cssSelector “references the class name that you set in the HTML.” (bản dịch) «references đó class name đó bạn set trong đó HTML.» Dùng .paywall — không an ID (#paywall), không một descendant hoặc thuộc tính selector.
  • Multiple gated sections dùng an array of hasPart objects, mỗi với của nó own class-based selector. không nest đó gated sections bên trong mỗi other.
  • đây là không chỉ cho news. Đó markup là supported on bất kỳ CreativeWork subtype — Article, NewsArticle, Blog, Comment, Course, HowTo, Message, Review, WebPage. Đó rộng hơn dữ liệu có cấu trúc hướng dẫn xử lý isAccessibleForFree as một chung CreativeWork thuộc tính, không một news-chỉ một.
  • Correct markup không bảo đảm một kết quả. Ngay cả fully hợp lệ, correctly-nested markup chỉ làm Google eligible để understand của bạn gating — điều này không một xếp hạng hoặc rich-kết quả bảo đảm. Treat đó markup as đó mechanism đó giữ bạn out of đó cloaking bucket, không một promise of bất kỳ cụ thể outcome.

Registration walls dùng đó giống hệt markup. Google không distinguish “pay to access” (bản dịch) «pay để access» từ “register to access” (bản dịch) «register để access» tại đó schema cấp độ. John Mueller đã nói as nhiều on Tìm kiếm Off đó Record: đó mechanism “could be maybe you require a login, maybe you require a payment, maybe after a certain number of iterations you’re like, ‘Oh, this is enough free content.’ Now you have to pay for it… It can just be something like a login or some other mechanism that basically limits the visibility of the content.” (bản dịch) «có thể là maybe bạn require một login, maybe bạn require một payment, maybe sau một certain number of iterations bạn là như, ‘Oh, này là đủ free nội dung.’ Hiện tại bạn có để pay cho điều này… Điều này có thể chỉ là điều gì đó như một login hoặc some other mechanism đó basically limits đó visibility of đó nội dung.» Nếu bạn gate điều này, mark điều này — paid hoặc không. He ngay cả flags MỘT/B pricing các kiểm thử as một hợp lệ reason: “if you have something like different thresholds where you say some people get to view five pages for free and others have the whole content available for free because you’re doing A/B testing… then you’d want to use a paywall structured data.” (bản dịch) «nếu bạn có điều gì đó như khác nhau thresholds nơi bạn chẳng hạn some mọi người nhận để view five các trang cho free và others có đó toàn bộ nội dung khả dụng cho free vì bạn là đang làm MỘT/B kiểm thử… thì bạn’d muốn để dùng một paywall dữ liệu có cấu trúc.»

JavaScript-paywall trap

Ở đây đó single hầu hết phổ biến thực tế mistake, và đây là distinct từ “forgetting the structured data.” (bản dịch) «forgetting đó dữ liệu có cấu trúc.» MỘT lot of paywall các giải pháp ship đó đầy đủ bài viết trong đó HTML đó máy chủ gửi, thì dùng JavaScript để hide điều này until subscription status là confirmed. Google explicitly warned so với này trong một 2025 addition để của nó JavaScript khắc phục sự cố doc: “Some JavaScript paywall solutions include the full content in the server response, then use JavaScript to hide it until subscription status is confirmed. This isn’t a reliable way to limit access to the content. Make sure your paywall only provides the full content once the subscription status is confirmed.” (bản dịch) «Some JavaScript paywall các giải pháp bao gồm đó toàn bộ nội dung trong đó máy chủ phản hồi, thì dùng JavaScript để hide điều này until subscription status là confirmed. Này không một reliable way để limit access để đó nội dung. Hãy bảo đảm của bạn paywall chỉ cung cấp đó toàn bộ nội dung khi đó subscription status là confirmed.»

Vì sao nó bad on three fronts:

  1. đây là trivially bypassable. Disable JavaScript và đó “hidden” bài viết là right ở đó trong đó nguồn. bạn là không thực ra gating bất cứ điều gì.
  2. Điều này muddies đó cloaking exception. Nếu đó đầy đủ text là sitting trong đó DOM cho mọi người, Google không thể cleanly tell mà nội dung đã là meant để là gated — mà là đó toàn bộ điều đó structured-dữ liệu declaration là supposed để làm clear.
  3. đây là an accessibility vấn đề. Mueller raised chính xác này on Tìm kiếm Off đó Record: “when a user looks at your page, you don’t load the content into the HTML, but rather you make sure that it’s really not loaded into the page’s DOM so that, if a browser has something like… a screen reader, that the screen reader doesn’t go off and read all of this text that you’re trying to hide… make sure you don’t load it into the browser and use JavaScript to turn it on, but rather that it’s really only served to the user when you want to make it available.” (bản dịch) «khi một người dùng looks tại trang của bạn, bạn không load đó nội dung vào đó HTML, nhưng rather bạn hãy bảo đảm đó đây là thực sự không loaded vào đó trang DOM so đó, nếu một trình duyệt có điều gì đó như… một screen reader, đó screen reader không go off và đọc toàn bộ điều này text đó bạn là trying để hide… hãy bảo đảm bạn không load điều này vào đó trình duyệt và dùng JavaScript để turn điều này on, nhưng rather đó đây là thực sự chỉ phân phối để người dùng khi bạn muốn để làm điều này khả dụng.» Đó 2025 doc cập nhật và Mueller caution là đó giống nhau mistake seen từ hai angles.

khắc phục là máy chủ-side gating: xác nhận subscription/login status on máy chủ, và chỉ bao gồm đầy đủ bài viết trong phản hồi cho authenticated người dùng. sau đó layer isAccessibleForFree/cssSelector on top so Googlebot — mà được phép để see đầy đủ text dưới flexible sampling — vẫn nhận mọi thứ, trong khi unauthenticated humans genuinely không. Đây là cũng nơi paywalls intersect với mobile-đầu tiên lập chỉ mục: Google crawl và evaluates mobile version, so đầy đủ gated nội dung có để là present trong mobile máy chủ phản hồi cũng, không chỉ desktop.

Login các trang và registration gates: quieter pitfalls

Hai distinct các vấn đề hiển thị lên khoảng login/registration, cả hai từ giống nhau Tìm kiếm Off Record episode.

Generic login các trang nhận folded vào duplicates. Mueller: “if you have a very generic login page, we will see all of these URLs that show that login page, that redirect to that login page, as being duplicates… We’ll fold them together as duplicates, and we’ll focus on indexing the login page… If someone is searching for your service… the only thing… they find in search is like, ‘Here’s how to log in,’ that might be a kind of a weird experience for them.” (bản dịch) «nếu bạn có một very generic login trang, we sẽ see all of những URLs đó cho thấy đó login trang, đó chuyển hướng để đó login trang, as đang duplicates… We’ll fold them together as duplicates, và we’ll focus on lập chỉ mục đó login trang… Nếu ai đó là searching cho của bạn service… điều duy nhất… they tìm trong tìm kiếm là như, ‘Ở đây cách log trong,’ đó có thể là một kind of một weird experience cho them.» Đó cách sửa là để cho login các trang unique contextual copy theo service, so họ là không all giống hệt.

không robots.txt riêng tư URLs. Này một contradicts một phổ biến intuition. Mueller: “whether all of this should just be blocked by robots.txt, which is another common strategy… The problem, I think, with doing that is the URLs could become indexable so we wouldn’t see the contents of the login page… if it’s private content, serve it with a noindex or redirect it to a login page somewhere. Don’t use robots.txt.(bản dịch) «liệu toàn bộ điều này nên chỉ là Bị chặn bởi robots.txt, mà là một sản phẩm khác phổ biến strategy… Đó vấn đề, I think, với đang làm đó là đó URLs có thể become indexable so we sẽ không see đó nội dung of đó login trang… nếu đây là riêng tư nội dung, serve điều này với một noindex hoặc chuyển hướng điều này để một login trang nơi nào đó. không dùng robots.txt.» MỘT robots-blocked URL có thể vẫn là được lập chỉ mục as một bare, contentless URL — thường tệ hơn một sạch noindex. (Này là genuinely-riêng tư nội dung, mà là một khác nhau case từ paywalled-nhưng-nên-là-được lập chỉ mục; không confuse đó hai.)

Kiểm thử và “leaky” worry

Kiểm thử với đó Rich Kết quả Kiểm thử. Google đã thêm paywalled-nội dung hỗ trợ để đó Rich Kết quả Kiểm thử trong October 2023, so điều này validates isAccessibleForFree/cssSelector on một trực tiếp URL, kiểm thử as Googlebot desktop hoặc smartphone. As Mueller put điều này lại trong một 2020 office-hours, “you would use the rich results test, like any other kind of structured data… the tricky part with some of these paywall implementations is that Googlebot, of course, needs to be able to see the full content.” (bản dịch) «bạn sẽ dùng đó rich kết quả kiểm thử, như bất kỳ other kind of dữ liệu có cấu trúc… đó tricky part với some of những paywall implementations là đó Googlebot, of course, cần để là able để see đó toàn bộ nội dung.»

Đó self-audit trick: open an incognito window (logged out of mọi thứ), tìm kiếm của bạn own brand hoặc service, và see điều gì cho thấy. Mueller advice — “If the top result is something like a login page and there’s no information on this page at all otherwise, then probably that’s something that you can improve.” (bản dịch) «Nếu đó top kết quả là điều gì đó như một login trang và có không information on này trang tại all nếu không, thì probably đó là điều gì đó bạn có thể improve.»

Là cho thấy Googlebot đó đầy đủ bài viết “leaky”? Không. Danny Sullivan, Google Tìm kiếm Liaison, addressed đó recurring worry đó này exposes paid nội dung: “Our system is looking to be shown the full content, if a publisher wants to do that. If they do, we understand more about it. If we understand more, then we might be able to show it for more queries where it’s relevant,” (bản dịch) «Của chúng ta hệ thống là looking để là shown đó toàn bộ nội dung, nếu một publisher wants để làm đó. Nếu they làm, we understand hơn về điều này. Nếu we understand hơn, thì we có thể là able để cho thấy điều này cho hơn các truy vấn nơi đây là relevant,»“Since only we are seeing this, there’s nothing ‘leaky’ as you are suggesting.” (bản dịch) «Since chỉ we là seeing này, có không có gì ‘leaky’ as bạn là suggesting.» Đó real leak vector, he noted, là đó được lưu đệm copy — solved với noarchive, một tách biệt control từ đó paywall markup itself. Sullivan remarks là relayed qua Công cụ tìm kiếm Roundtable coverage; treat them as reported thay vì một đầu tiên-party transcript.

Bing approach

Bing subscription và paywall hướng dẫn (Fabrice Canel, có thể 2022) là structurally similar nhưng không schema-centric. Của nó three points: (1) let Bingbot crawl đầy đủ gated nội dung, (2) sử dụng noarchive/nocache (hoặc X-Robots-Tag: noarchive header) so được lưu đệm copies không leak, và (3) verify crawler là genuinely Bingbot by kiểm tra requesting IP so với Bing published ranges — không by trusting người dùng-agent string, mà anyone có thể spoof. có không published Bing tương đương để isAccessibleForFree/cssSelector; Bing model là crawl-access-plus-bộ nhớ đệm-control, nơi Google là markup-centric. không assume feature parity.

đầu tiên Nhấp Free — history, không policy

Bạn’ll vẫn see blog posts và forum các câu trả lời describing Đầu tiên Nhấp Free as nếu đây là hiện tại. Điều này không. Google retired điều này trong October 2017, thay thế điều này với flexible sampling. Richard Gingras, thì Google VP of News: “First, Flexible Sampling will replace First Click Free. Publishers are in the best position to determine what level of free sampling works best for them.” (bản dịch) «Đầu tiên, Flexible Sampling sẽ replace Đầu tiên Nhấp Free. Publishers là trong đó best position để determine điều gì cấp độ of free sampling hoạt động best cho them.» Đầu tiên Nhấp Free đã có bắt buộc participating publishers để let Google-referred khách truy cập đọc một set number of các bài viết một day (commonly three) ngay cả past của họ own paywall. Flexible sampling handed đó decision lại để publishers. Nếu bạn see FCF cited as điều gì đó bạn có thể opt vào hôm nay, đó hướng dẫn là eight-plus năm stale.

nơi điều này sits trong news SEO

Paywall xử lý là một piece của rộng hơn News & Discover SEO picture — alongside news sitemaps, Google News/Top Stories eligibility, Discover, và syndication (canonical so với. noindex). nếu bạn’re publisher, nhận của bạn paywall markup và của bạn syndication policy sorted trước khi either một âm thầm costs bạn indexation hoặc attribution.

Add an expert note

Pin an expert quote

New person? Create their unclaimed profile at /admin/experts/ → Pin a quote first.