パブリッシャー向けガイド 第4章
ペイウォール
最終確認:2026年11月
ペイウォールは、読者がもっと読みたくなるだけのものを目にしたあとで、いちばん効果を発揮します。厳しくしすぎると、新しい読者は、あなたのジャーナリズムを知る前に去ってしまいます。緩くしすぎると、購読をうながす機会が来ません。GoogleのFlexible Samplingのガイダンスが、出発点として役に立ちます。この章の残りでは、ペイウォールのマークアップと、画面ごとの見せ方を扱います。
メーターを設定する
Googleは、日ごとのメーターより、月ごとのメーターを勧めています。月ごとのメーターは、試す余地が大きく、ペイウォールが主に、最も熱心な読者に表示されるようになります。
- 日刊のニュースのパブリッシャーの多くについて、Googleは、読者1人あたり月に6〜10本という数字を想定しています。
- Googleは、検索から来る読者には、月10本の無料記事から始めて、そのあと調整することを提案しています。
- 正確な数字は、あなたが決めることです。検索から来る読者が、ペイウォールに出会う可能性が、現在とほぼ同じになる数字を探してください。
Googleはまた、ペイウォールが表示される割合が10%を超えると、全般的なユーザーの満足度が大きく下がり始めると報告しており、これは一般に、読者の約3%がペイウォールを目にした状態にあたるとしています。メーターは、小さな段階で変えてください。Googleは、アクセスを制限すると、記事の順位に影響する可能性があると警告しています。
導入部を見せる
メーターを使い切ったあとも、最初の数文は表示し続けてください。Googleはこれを、読者が記事の価値を確かめられ、購読する可能性が高まるかもしれないとして、良い方法と呼んでいます。見出し、署名、日付、導入部は、すべて確認画面の上に表示したままにします。
有料部分をマークアップする
Googleがクローキングと有料コンテンツを見分けられるよう、構造化データを使います。isAccessibleForFree を false に設定し、hasPart で、有料部分を囲むクラスを指定します。
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "NewsArticle",
"headline": "Article headline",
"datePublished": "2026-11-05T08:00:00+01:00",
"isAccessibleForFree": false,
"hasPart": {
"@type": "WebPageElement",
"isAccessibleForFree": false,
"cssSelector": ".paywall"
}
}
</script>
<div class="lead-in">The free opening of the article.</div>
<div class="paywall">The paid part of the article.</div>
Googleの3つのルールが当てはまります。
.classセレクターだけを使うこと。- 有料部分を入れ子にしないこと。
- 有料部分が複数ある場合は、
hasPartを配列にして、部分ごとに1つずつ項目を置くこと。
クローキングを避ける
クローキングとは、順位を操作するために、検索エンジンに、人が見るものとは違うコンテンツを見せることです。Googleは、アクセス権のある人と同じように、Googleがペイウォールの向こうの全コンテンツを見ることができ、Flexible Samplingのガイダンスに従っているなら、ペイウォールはクローキングではないとしています。
そのため、ペイウォールをどこに置くか、選択肢が生まれます。
| ペイウォールの種類 | 仕組み | 注意すること |
|---|---|---|
| クライアント側 | 全文がブラウザーに届き、スクリプトがそれを隠す | ページのソースで、スクレイパーを含め、誰でもテキストを読める |
| サーバー側 | 訪問者にアクセス権がない限り、サーバーは導入部だけを送る | すべてのリクエストにアクセスの確認が必要 |
Googleは、コンテンツをブラウザーに届けてはならない場合は、それを届けない実装を選ぶべきだとしています。
サーバーがGooglebotに全文を渡す場合は、リクエストごとに、まず検証してください。IPアドレスの逆引きDNSで、ホストが googlebot.com、google.com、googleusercontent.com のいずれかにあることを確認し、次に正引きを行って、同じアドレスが返ることを確かめます。Googleが公開しているIPレンジと照合することもできます。User-Agentだけの確認では、Googlebotの名前をまねるスクレイパーに、記事を渡してしまいます。この点は、AIスクレイピングの章で、さらに扱っています。
ペイウォールを上手に見せる
確認画面は、導入部の直後の、ページ内に置きます。インラインのパネルなら、フォーカスを閉じ込める必要がなく、読者は自由に戻れ、Googleが評価するオーバーレイも増えません。オーバーレイを使う場合は、ポップアップの章にあるモーダルのパターンに沿って作ってください。
モバイルでは
- 導入部を全文表示し、その下に確認画面を置きます。
- 確認画面の最初の数行に、価格と主な操作を置きます。
- パネルの場所を確保して、アクセスの確認が返ってきたときにページが跳ねないようにします。
- 購読とサインインの操作には、44×44 CSSピクセルのタップターゲットを使います。
デスクトップでは
- 確認画面は、記事の列の中に、本文と同じ幅で置きます。
- 確認画面の後ろに、ぼかした記事を置くのは避けます。CSSで隠したテキストはHTMLに残っており、スクリーンリーダーが読み上げることがあります。
- サイトのナビゲーションは使えるままにして、読者が無料のコンテンツへ移れるようにします。
すべての人のために
- メーターが尽きたあとではなく、尽きる前に、無料記事があと何本残っているかを伝えます。
- 価格、請求の期間、解約の方法を、オファーの最初の画面に示します。
- 既存の購読者向けに、オファーの横にサインインのリンクを置きます。
- 読者がパスワードを貼り付けたり、パスワードマネージャーを使ったりできるようにします。WCAG 2.2の達成基準3.3.8は、サインインでの記憶によるテストを制限しています。
- 有料のテキストは、RSSフィードに含めません。見出し、短い説明、リンクがあれば十分です。
チェックリスト
- できるなら、日ごとのメーターから月ごとのメーターに切り替える。
- 検索から来る読者には、月10本の無料記事から始め、変更のたびに効果を記録する。
- メーターを使い切ったあとも、見出し、署名、日付、導入部を表示したままにする。
- すべての有料記事テンプレートに、
isAccessibleForFreeとhasPartを追加する。 -
cssSelectorのクラスがページに存在し、入れ子になっていないことを確認する。 - クライアント側とサーバー側のどちらで配信するかを決め、その理由を記録する。
- Googlebotは、DNSかIPレンジで検証し、User-Agentだけでは決して判断しない。
- Search ConsoleのURL検査ツールで、有料記事を確認する。
- 確認画面をインラインに移し、スマートフォンとキーボードでテストする。
- フィードに有料のテキストが含まれていないか確認する。
出典
- Subscription and Paywalled Content Markup、Google Search Central
- Flexible Sampling Guidelines、Google Search Central
- Spam Policies for Google Web Search、Google Search Central
- Verify Requests from Google Crawlers and Fetchers、Google
- Web Content Accessibility Guidelines (WCAG) 2.2、W3C
- Understanding Target Size (Enhanced)、W3C WAI