Paywalle i SEO

Jak utrzymać treści za paywallem i za rejestracją w indeksie bez cloakingu — elastyczne próbkowanie, znaczniki isAccessibleForFree/cssSelector, pułapka paywalla JavaScript i strategia liczników.

Opublikowano po raz pierwszy: 3 lip 2026 · Ostatnia aktualizacja: 3 sie 2026 · Zaawansowane

Paywall sam w sobie nie szkodzi SEO — Google nie ma uprzedzeń do treści zamkniętych, a największe wydawnictwa z paywallem dobrze sobie radzą. Szkodzi to, że Google nie widzi wystarczającej ilości treści, aby zrozumieć stronę. Wspieranym rozwiązaniem jest elastyczne próbkowanie: pozwól Googlebotowi przeszukać cały artykuł, a następnie oznacz zamkniętą część danymi strukturalnymi (isAccessibleForFree plus cssSelector). To wyraźny, dozwolony wyjątek od cloakingu — cloaking dotyczy zamiaru oszukania; to jest zadeklarowany mechanizm. Używaj liczników (zacznij od około 6–10 darmowych artykułów miesięcznie) lub lead-in, blokuj po stronie serwera (nie za pomocą JavaScript, który tylko ukrywa treść w DOM), nadaj stronom logowania unikalną treść i nigdy nie używaj robots.txt do ukrywania prywatnych adresów URL.

TL;DR — Paywalle nie szkodzą pozycjom samym w sobie; problemem jest to, że Google nie widzi Twoich treści. Wspierany model to elastyczne próbkowanie — metering lub lead-in — zadeklarowane za pomocą danych strukturalnych (isAccessibleForFree: false plus hasPart/cssSelector oznaczające zamkniętą sekcję, wyłącznie selektory klas). To właśnie ta deklaracja sprawia, że serwowanie Googlebotowi pełnego artykułu nie jest cloakingiem: cloaking wymaga zamiaru manipulacji i wprowadzania w błąd, a polityka spamu Google wprost wyłącza paywalle z tej definicji. Blokuj po stronie serwera (aktualizacja dokumentacji z 2025 r. i ostrzeżenie Muellera o czytnikach ekranu dotyczą tego samego błędu ukrywania treści przez JS), nadaj stronom logowania unikalną treść, nigdy nie umieszczaj prywatnych URL-i w robots.txt i używaj noarchive, aby zapobiec wyciekowi pełnego tekstu z kopii w pamięci podręcznej. Ściany rejestracyjne używają tego samego znacznika co płatne.

Co faktycznie powoduje problemy z pozycjami (to nie brama)

Kwalifikowalność paywalla zależy od treści dostępnych do indeksowania i dokładnego znacznika; samo istnienie paywalla nie jest udokumentowane jako kara. Dowód potwierdzający to twierdzenie Official or primary documentation supporting the adjacent article claim, with scope limited to the source's published description. Zakres: No ranking guarantee or undisclosed system mechanics are inferred beyond the cited source. Poziom ufności: wysoki · Zweryfikowano: Google: Paywalled content structured data Wybory dotyczące próbkowania pozostają decyzjami wydawców z kompromisami użytkownika i biznesowymi. Dowód potwierdzający to twierdzenie Official or primary documentation supporting the adjacent article claim, with scope limited to the source's published description. Zakres: No ranking guarantee or undisclosed system mechanics are inferred beyond the cited source. Poziom ufności: wysoki · Zweryfikowano: Google: Flexible sampling

Google nie ma kary za treści za paywallem, a nadrzędny hub tego artykułu mówi to wprost: treści za bramą są w porządku, o ile Google może je przeczytać za pomocą wspieranego podejścia. Tryb awarii jest wcześniej niż pozycjonowanie — to zrozumienie. Jeśli Googlebot widzi tylko teaser, to teaser jest wszystkim, co może zaindeksować i na podstawie czego Cię pozycjonować. Każda technika poniżej istnieje, aby rozwiązać jeden problem: pozwolić wyszukiwarce przeczytać całość, podczas gdy niezalogowani użytkownicy nadal trafiają na bramę.

Warto jasno określić dwie granice, ponieważ łatwo przesadzić w którąkolwiek stronę. Po pierwsze, ten znacznik to narzędzie dla treści, które chcesz indeksować pod zadeklarowaną bramą — a nie mechanizm do ujawniania treści, których w ogóle nie chcesz indeksować. Prywatne URL-e kont/admina to inny przypadek (patrz drzewo decyzyjne poniżej): te otrzymują noindex lub przekierowanie uwierzytelniające, a nie isAccessibleForFree. Po drugie, poprawny znacznik i pełny dostęp do indeksowania nie są gwarancją pozycji. Wytyczne Google dotyczące danych strukturalnych mówią wprost, że “Google does not guarantee that features that consume structured data will show up in search results” (tłumaczenie) „Google nie gwarantuje, że funkcje korzystające z danych strukturalnych pojawią się w wynikach wyszukiwania” — znacznik to deklaracja, która trzyma Cię z dala od kategorii cloakingu, a nie obietnica indeksowania, pozycji, ruchu czy rozszerzonego wyniku.

Historycznie to właśnie stąd pochodzi największa przestroga. Gdy Wall Street Journal wycofał się z programu First Click Free Google w 2017 r., odnotował ~44% spadek ruchu z wyszukiwarki Google — nie dlatego, że paywalle są karane, ale dlatego, że Google nie mógł już w ogóle zobaczyć artykułów. (Więcej o First Click Free poniżej; to historia, nie obecna polityka.)

Elastyczne próbkowanie: metering i lead-in

Obecny, aktywny model to elastyczne próbkowanie, opisane w wytycznych Google dotyczących elastycznego próbkowania. Google opisuje dwa typy próbkowania: “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.” (tłumaczenie) „metering, który zapewnia użytkownikom limit artykułów do przeczytania, zanim będą musieli subskrybować lub się zalogować, po czym pojawią się paywalle; oraz lead-in, który oferuje część treści artykułu bez pokazywania jej w całości”.

Liczby, które mają znaczenie, wszystkie z dokumentacji Google:

  • Preferuj miesięczne rozliczanie zamiast dziennego. Google uważa, że licznik miesięczny daje większą elastyczność i bezpieczniejsze warunki testowania. Zmiana o jedną jednostkę jest znacznie mniej odczuwalna przy 10 próbkach miesięcznych niż przy 3 dziennych.
  • Zacznij od około 6–10 bezpłatnych artykułów miesięcznie. “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.” (tłumaczenie) „Jako punkt wyjścia do eksperymentów zachęcamy do udostępniania 10 artykułów miesięcznie… w przypadku większości wydawców codziennych wiadomości spodziewamy się, że wartość ta będzie wynosić od 6 do 10 artykułów na użytkownika miesięcznie.”
  • Uważaj na limit ekspozycji. “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).” (tłumaczenie) „Nasza analiza pokazuje, że ogólne zadowolenie użytkowników zaczyna znacząco spadać, gdy paywall jest wyświetlany częściej niż w 10% przypadków (co zazwyczaj oznacza, że około 3% odbiorców zostało wystawionych na działanie paywalla).”
  • Lead-in to dobra praktyka. Pokazanie pierwszych kilku zdań nad paywallem pozwala użytkownikom “experience the value of the content.” (tłumaczenie) „doświadczyć wartości treści”.

Żadna z tych liczb nie jest nakazem. Google mówi wprost: “There is no single value for optimal sampling across different businesses.” (tłumaczenie) „Nie istnieje jedna wartość optymalnego próbkowania dla różnych firm.” Liczba 6–10/miesiąc to punkt wyjścia podany specjalnie dla wydawców codziennych wiadomości. Dokładną liczbę Google pozostawia wydawcom, którzy najlepiej rozumieją wymagania własnej działalności. Traktuj to jako przetestowany zakres wyjściowy, a nie regułę do skopiowania.

Niedoceniany punkt: rozliczanie to nie tylko pokrętło monetyzacji. Google otwiera dokument ostrzeżeniem, że nawet niewielkie zmiany poziomu próbkowania mogą pogorszyć doświadczenie użytkownika i, przez ograniczenie dostępu, nieumyślnie wpłynąć na pozycję artykułu w wyszukiwarce. Zaostrzenie limitu może więc po cichu kosztować Cię widoczność.

Dlaczego to nie jest cloaking — uzasadnienie, nie tylko reguła

To jest kluczowa część całego tematu, a większość przewodników stwierdza wniosek („paywalle nie są cloakingiem, jeśli używasz danych strukturalnych”) bez pokazywania dlaczego. Oto faktyczne uzasadnienie, wprost z polityk spamowych Google.

Zacznij od definicji. Cloaking polega na prezentowaniu innych treści użytkownikom i wyszukiwarkom z zamiarem manipulowania rankingiem i wprowadzania użytkowników w błąd. Ciężar spoczywa na tym fragmencie — zamiar manipulowania i wprowadzania w błąd. Paywall nie próbuje nikogo oszukać; monetyzuje treść i deklaruje różnicę w traktowaniu poprzez znaczniki.

Następnie wyraźne wyłączenie, w tej samej polityce: “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.” (tłumaczenie) „Jeśli prowadzisz paywall lub mechanizm ograniczania treści, nie uznajemy tego za cloaking, jeśli Google widzi pełną treść tego, co znajduje się za paywallem, tak jak każda osoba mająca dostęp do materiału, oraz jeśli postępujesz zgodnie z naszymi ogólnymi wytycznymi dotyczącymi elastycznego próbkowania.”

Zatem wyjątek ma dwa warunki: (1) Google widzi tę samą pełną treść, którą widziałby płatny subskrybent, oraz (2) stosujesz elastyczne próbkowanie — co w praktyce oznacza poniższe dane strukturalne. Dokument Google o elastycznym próbkowaniu wzmacnia tę samą logikę: “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.” (tłumaczenie) „Obejmij treść za paywallem danymi strukturalnymi, aby pomóc Google odróżnić treść za paywallem od praktyki cloakingu, gdzie treść serwowana Googlebotowi różni się od treści serwowanej użytkownikom.” Dane strukturalne deklaracją, która zmienia „inną treść dla botów” z oszustwa w ujawniony, dozwolony mechanizm.

Implementacja danych strukturalnych

Znaczniki znajdują się w dokumencie Google Subscription and paywalled content. Dwie właściwości wykonują całą pracę:

  • isAccessibleForFree (Boolean, wymagane) — czy treść jest darmowa, czy ograniczona. Własny opis właściwości Google oznacza tę jako wymaganą; ustaw ją na najwyższym poziomie węzła CreativeWork/NewsArticle oraz na każdej ograniczonej sekcji.
  • hasPart (zalecane, nie wymagane) — tablica obiektów WebPageElement, po jednym na każdą ograniczoną sekcję, każdy z własnym isAccessibleForFree: false i cssSelector wskazującym na klasę, w którą opakowałeś ograniczony HTML. To sposób, w jaki mówisz Google, która część utworu jest ograniczona, gdy dotyczy to sekcji, a nie całości; to zalecany sposób uzyskania precyzji na poziomie sekcji, a nie druga wymagana właściwość obok flagi najwyższego poziomu.

Minimalny NewsArticle wygląda tak:

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

Trzy szczegóły implementacji, na których ludzie się potykają:

  • Tylko selektory klas. cssSelector “odnosi się do nazwy klasy, którą ustawiłeś w HTML.” Użyj .paywall — nie ID (#paywall), nie selektora potomnego ani atrybutowego.
  • Wiele ograniczonych sekcji używa tablicy obiektów hasPart, każdy z własnym selektorem opartym na klasie. Nie zagnieżdżaj ograniczonych sekcji wewnątrz siebie.
  • To nie tylko dla wiadomości. Znacznik jest obsługiwany na dowolnym podtypie CreativeWorkArticle, NewsArticle, Blog, Comment, Course, HowTo, Message, Review, WebPage. Szersze wytyczne dotyczące danych strukturalnych traktują isAccessibleForFree jako ogólną właściwość CreativeWork, a nie tylko dla wiadomości.
  • Poprawny znacznik nie gwarantuje wyniku. Nawet w pełni poprawny, prawidłowo zagnieżdżony znacznik tylko sprawia, że Google jest kwalifikowany do zrozumienia Twojego ograniczenia — to nie jest gwarancja rankingu ani wyniku rozszerzonego. Traktuj znacznik jako mechanizm, który trzyma Cię z dala od kategorii cloakingu, a nie obietnicę konkretnego rezultatu.

Ściany rejestracyjne używają identycznego znacznika. Google nie rozróżnia “płać, aby uzyskać dostęp” od “zarejestruj się, aby uzyskać dostęp” na poziomie schematu. John Mueller powiedział to wprost w Search Off the Record: mechanizm “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.” (tłumaczenie) „Może to być wymóg logowania, może wymóg płatności, może po określonej liczbie wyświetleń mówisz: ‚Och, to wystarczająco darmowych treści. Teraz musisz za nie zapłacić…’ To może być po prostu coś takiego jak logowanie lub inny mechanizm, który zasadniczo ogranicza widoczność treści.” Jeśli to ograniczasz, oznacz to — płatne czy nie. On nawet wskazuje testy cenowe A/B jako ważny powód: “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.” (tłumaczenie) „Jeśli masz coś takiego jak różne progi, gdzie mówisz, że niektórzy ludzie mogą zobaczyć pięć stron za darmo, a inni mają całą treść dostępną za darmo, ponieważ prowadzisz testy A/B… to chciałbyś użyć danych strukturalnych paywalla.”

Pułapka paywalla JavaScript

Oto najczęstszy błąd w świecie rzeczywistym, i jest on odrębny od “zapomnienia o danych strukturalnych.” Wiele rozwiązań paywallowych wysyła pełny artykuł w HTML, który serwer wysyła, a następnie używa JavaScript, aby go ukryć, dopóki status subskrypcji nie zostanie potwierdzony. Google wyraźnie ostrzegł przed tym w dodatku z 2025 roku do swojego dokumentu o rozwiązywaniu problemów z JavaScript: Google ostrzega, że wysłanie pełnej treści w odpowiedzi serwera i ukrycie jej JavaScriptem do czasu potwierdzenia subskrypcji nie ogranicza dostępu w niezawodny sposób. Pełną treść należy udostępnić dopiero po potwierdzeniu statusu subskrypcji.

Dlaczego to jest złe na trzech frontach:

  1. Jest trywialnie do ominięcia. Wyłącz JavaScript, a „ukryty” artykuł jest od razu w źródle. Tak naprawdę niczego nie blokujesz.
  2. Zamazuje wyjątek cloakingu. Jeśli pełny tekst siedzi w DOM dla wszystkich, Google nie może czysto odróżnić, która treść miała być zablokowana — a to właśnie to, co deklaracja danych strukturalnych ma wyjaśniać.
  3. To problem dostępności. Mueller poruszył dokładnie to w podcaście Google: ukrywanej treści nie należy w ogóle ładować do HTML ani DOM, ponieważ czytnik ekranu może ją odczytać. Zamiast ładować tekst do przeglądarki i włączać go JavaScriptem, serwuj go dopiero wtedy, gdy rzeczywiście chcesz go udostępnić. Aktualizacja dokumentu z 2025 roku i ostrożność Muellera to ten sam błąd widziany z dwóch perspektyw.

Rozwiązaniem jest blokowanie po stronie serwera: potwierdź status subskrypcji/logowania na serwerze i dołącz pełny artykuł do odpowiedzi tylko dla uwierzytelnionych użytkowników. Następnie nałóż isAccessibleForFree/cssSelector na to, aby Googlebot — który może widzieć pełny tekst w ramach elastycznego próbkowania — nadal dostawał wszystko, podczas gdy nieuwierzytelnieni ludzie naprawdę nie. To także miejsce, gdzie paywalle przecinają się z indeksowaniem mobile-first: Google indeksuje i ocenia wersję mobilną, więc pełna zablokowana treść musi być obecna również w mobilnej odpowiedzi serwera, nie tylko na desktopie.

Strony logowania i bramki rejestracyjne: cichsze pułapki

Dwa różne problemy pojawiają się wokół logowania/rejestracji, oba z tego samego odcinka podcastu Google.

Ogólne strony logowania są składane w duplikaty. Mueller wyjaśnia, że Google może uznać wszystkie adresy pokazujące tę samą ogólną stronę logowania za duplikaty, złożyć je razem i skupić się na indeksowaniu strony logowania. Wtedy osoba szukająca usługi może zobaczyć tylko instrukcję logowania, co tworzy dziwne doświadczenie. Rozwiązaniem jest nadanie stronom logowania unikalnej treści kontekstowej dla każdej usługi, aby nie były wszystkie identyczne.

Nie blokuj prywatnych URL-i przez robots.txt. To przeczy powszechnej intuicji. Mueller wyjaśnia, że taki adres nadal może zostać zindeksowany, mimo że robot nie zobaczy zawartości strony logowania. Prywatną treść należy podać z noindex albo przekierować do strony logowania; nie należy używać do tego robots.txt. URL zablokowany przez robots może nadal być indeksowany jako goły, bez treści URL — często gorzej niż czysty noindex. (To naprawdę prywatna treść, co jest innym przypadkiem niż paywalled-ale-powinien-być-indeksowany; nie myl tych dwóch.)

Testowanie i obawa o „przeciek”

Przetestuj za pomocą Testu wyników rozszerzonych. Google dodał obsługę treści paywalled do Testu wyników rozszerzonych w październiku 2023, więc waliduje isAccessibleForFree/cssSelector na żywym URL-u, testując jako Googlebot desktop lub smartphone. Mueller wyjaśnił w godzinach biurowych w 2020 roku, że używa się go jak przy każdych innych danych strukturalnych, ale Googlebot musi widzieć pełną treść, aby poprawnie zrozumieć implementację paywalla.

Sztuczka z samooceną: otwórz okno incognito (wylogowane ze wszystkiego), wyszukaj swoją markę lub usługę i zobacz, co się pojawia. Rada Muellera — “Jeśli najlepszy wynik to na przykład strona logowania i na tej stronie nie ma żadnych informacji, to prawdopodobnie jest coś, co możesz poprawić.”

Czy pokazywanie Googlebotowi pełnego artykułu jest “nieszczelne”? Nie. Danny Sullivan, Search Liaison w Google, odniósł się do powracającego zmartwienia, że ujawnia to płatne treści: “Nasz system chce widzieć pełną treść, jeśli wydawca chce nam to umożliwić. Jeśli to zrobi, rozumiemy więcej. Jeśli rozumiemy więcej, możemy być w stanie pokazać ją dla większej liczby zapytań, gdzie jest istotna” oraz “Ponieważ tylko my to widzimy, nie ma nic ‘nieszczelnego’, jak sugerujesz.” Prawdziwy wektor wycieku, jak zauważył, to zarchiwizowana kopia — rozwiązany za pomocą noarchive, osobnego kontrolera od samego znacznika paywalla. Uwagi Sullivana są przekazane za pośrednictwem relacji Search Engine Roundtable; traktuj je jako relacjonowane, a nie jako transkrypcję z pierwszej ręki.

Podejście Binga

Wytyczne Bing dotyczące subskrypcji i paywalli (Fabrice Canel, maj 2022) są strukturalnie podobne, ale nie skoncentrowane na schematach. Jego trzy punkty: (1) pozwól Bingbotowi indeksować pełną zablokowaną treść, (2) użyj noarchive/nocache (lub nagłówka X-Robots-Tag: noarchive), aby zarchiwizowane kopie nie wyciekały, oraz (3) zweryfikuj, czy robot jest naprawdę Bingbotem, sprawdzając adres IP żądającego z opublikowanymi zakresami Bing — nie ufając stringowi user-agenta, który każdy może sfałszować. Nie ma opublikowanego odpowiednika Bing dla isAccessibleForFree/cssSelector; model Bing to dostęp do indeksowania plus kontrola pamięci podręcznej, podczas gdy Google jest skoncentrowany na znacznikach. Nie zakładaj parytetu funkcji.

First Click Free — historia, nie polityka

Nadal zobaczysz wpisy na blogach i odpowiedzi na forach opisujące First Click Free, jakby było aktualne. Nie jest. Google wycofał je w październiku 2017, zastępując je elastycznym próbkowaniem. Richard Gingras, ówczesny wiceprezes Google ds. wiadomości: “Po pierwsze, elastyczne próbkowanie zastąpi First Click Free. Wydawcy są w najlepszej pozycji, aby określić, jaki poziom darmowego próbkowania działa dla nich najlepiej.” First Click Free wymagało od uczestniczących wydawców umożliwienia odwiedzającym z Google przeczytania określonej liczby artykułów dziennie (zwykle trzech) nawet poza ich własnym paywallem. Elastyczne próbkowanie oddało tę decyzję wydawcom. Jeśli widzisz FCF cytowane jako coś, co możesz dziś włączyć, te wskazówki są nieaktualne od ponad ośmiu lat.

Gdzie to się mieści w SEO dla wiadomości

Obsługa paywalla to jeden element szerszego obrazu SEO dla wiadomości i Discover — obok map witryn dla wiadomości, kwalifikowalności do Google News/Top Stories, Discover i syndykacji (kanoniczna vs. noindex). Jeśli jesteś wydawcą, uporządkuj znaczniki paywalla i politykę syndykacji, zanim jedno lub drugie po cichu kosztuje Cię indeksację lub atrybucję.

Dodaj notatkę eksperta

Przypnij cytat eksperta

Nowa osoba? Najpierw utwórz jej nieprzejęty profil na /admin/experts/ → Przypnij cytat eksperta .