本文へスキップ
Mera News

パブリッシャー向けガイド 第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検査ツールで、有料記事を確認する。
  • 確認画面をインラインに移し、スマートフォンとキーボードでテストする。
  • フィードに有料のテキストが含まれていないか確認する。

出典