「地域と職種を掛け合わせてページを自動で作れば、検索からの流入は一気に増えるはず」。プログラマティックSEOのツールの紹介では、データとテンプレートさえあれば数千ページを一度に作れることが前面に出るため、作る仕組みを用意すれば終わりと思われがちです。ところが、閲覧者にほとんど価値のないページを検索順位のために大量に作ることは、作成方法を問わず「大量生成されたコンテンツの不正使用」にあたると、Googleのスパムに関するポリシーに明記されています。作るかどうかは、構造・テンプレート・インデックスの制御を設計できるかで決まります。
本記事では、プログラマティックSEOの仕組みとGoogleのポリシーとの関係から、作るかを決める基準と設計の手順まで、大規模サイトのSEOを支援する立場で順を追ってお伝えします。
- プログラマティックSEOでは、データベースの項目とテンプレートから、検索キーワードの型ごとにページをまとめて作る
- Googleのポリシーは作り方ではなく閲覧者への価値を見て、価値のないページの大量生成をスパムとして扱う
- 作るかどうかは、数千ページ規模で構造・テンプレート・インデックスの制御を設計できるかで決める
- 検索に出す条件を満たさない組み合わせは、noindexで残さず、ページもURLも作らない
プログラマティックSEOとは
プログラマティックSEOとは、データベースの項目とページのテンプレートを組み合わせ、検索キーワードの型ごとにページをプログラムでまとめて作るSEOの手法です。たとえば「〇〇市の介護職の求人」を探す人に向けて、市区町村と職種のデータを掛け合わせ、組み合わせごとに求人一覧のページを作ります。市区町村が50、職種が20なら、ページは1,000になります。
項目 | 1本ずつ書く記事 | プログラマティックSEO |
|---|---|---|
作る単位 | 記事1本 | テンプレート1つとデータ |
狙う検索キーワード | 記事ごとに選ぶ | 型を決め、データの組み合わせで広げる |
中身を決めるもの | 書き手の知識と取材 | データの値とテンプレートの文 |
誤りを直す場所 | 記事ごと | テンプレートかデータ |
品質はページ1枚ずつではなく、データとテンプレートで決まります。テンプレートの1か所の誤りは、そのテンプレートで作った数千ページに同時に出ます。反対に、テンプレートを1か所直せば全ページが直るので、ページを1枚ずつ確かめられない規模でも品質をそろえられます。

Googleは自動で作ったページを評価するか
Googleのスパムに関するポリシーが問題にするのは、ページの作り方ではなく、閲覧者にとっての価値です。ポリシーは、閲覧者の役に立つことではなく、検索順位の操作を主な目的として大量のページを作ることを「大量生成されたコンテンツの不正使用」とし、作成方法は問わないとしています。
ポリシーに挙がっている例のうち、プログラマティックSEOで当てはまりやすいのは次の4つです。
- 生成AIなどのツールで、閲覧者への価値を加えずに大量のページを作る
- 検索キーワードを含むだけで、閲覧者にはほとんど意味のないページを大量に作る
- 地域や都市ごとのページを複数作り、そこから1つのページへ誘導する
- 階層が明確でなく、検索結果の一覧に近い似たページを複数作る
地域ごとのページと、階層のない似たページの2つは、ポリシーの同じページにある「誘導ページの不正使用」の例です。誘導ページの例に階層の有無が入っていることから、ページの中身だけでなく、サイトの構造もポリシーの判断に関わると読めます。ポリシーに違反したサイトは、検索結果での掲載順位が下がったり、まったく表示されなかったりすることがあります。

※ 出典:Google検索セントラル「Google ウェブ検索のスパムに関するポリシー」
プログラマティックSEOを作るかの判断基準
プログラマティックSEOを作るかは、ページが数千規模になるかと、作るページの構造・テンプレート・インデックスの制御を設計できるかで判断します。数百ページまでなら、1ページずつ書いて確かめ、直せます。数千ページを超えると1ページずつの確認が追いつかないため、品質をテンプレートとデータの側で決める手法が意味を持つと見ています。
作る前に満たしておきたい条件は次の4つで、4つとも満たしてから作り始めます。
- 組み合わせごとに違うデータ(件数・価格・条件など)がページに載る
- 一覧から詳細へ、すべてのページに内部リンクで届く階層を作れる
- ページの種類ごとに、title・meta description・構造化データをデータから組み立てられる
- 検索に出すページの条件をデータで決め、満たさない組み合わせを作らない仕組みにできる
組み合わせごとに違うデータがないなら、需要のある組み合わせだけを選んで1本ずつ書くほうが向いています。地名や職種名を差し替えただけのページは、ポリシーの例にある「検索キーワードを含むだけで意味のないページ」に近づくためです。
求人データが1万件あるので、地域と職種の組み合わせを全部ページにすれば、検索からの流入は増えますか?
編集部
求人が集まっている組み合わせのページは、探している人の役に立つので、検索からの入口になります。ただ、求人が0件や1件の組み合わせまで作ると、中身のないページにクロールの時間が使われ、登録されないURLが増えます。求人の件数で、作るページを決めるところから始めましょう。
プログラマティックSEOを設計する3つの手順
プログラマティックSEOの設計は、URLと内部リンク、テンプレート、インデックスの制御の順に進めます。URLと階層が決まらないとテンプレートで出すリンクが決まらず、テンプレートで何を表示するかが決まらないと、検索に出すページの条件を決められないためです。
URLと内部リンクの設計
URLと内部リンクの設計では、ページの種類と階層を先に決め、URLの規則と内部リンクを階層に合わせます。求人なら、都道府県の一覧から市区町村の一覧へ、市区町村から職種ごとの一覧へと下りる形です。
URLは、1つの組み合わせに1つだけにします。絞り込み条件の並び順や並べ替えのパラメータで別のURLができると、同じ内容のURLが組み合わせの数だけ増えます。Googleは、指示がなければ、認識しているURLのすべてかほとんどをクロールしようとし、同じ内容のURLが多いとクロールに使う時間の多くが無駄になるとしています。

内部リンクは、上の階層から下の階層へ、すべての詳細ページにたどり着けるように出します。隣の市区町村や、同じ職種の別の地域へのリンクも加えると、閲覧者は条件を変えて探し直せます。誘導ページの例にある「階層が明確でない似たページ」にしないためにも、どのページも一覧の階層の中に置きます。
URLが増える原因と減らし方は、クロールバジェットの記事で扱っています。
テンプレートの設計
テンプレートの設計では、ページの種類ごとに、データから組み立てる部分と、データが欠けたときの出し方を決めます。テンプレートで決める内容は、次の4つです。
要素 | テンプレートで決めること |
|---|---|
title | 地域名と職種名に、件数など組み合わせごとに変わる値を加える |
meta description | 件数や主な条件など、ページの一覧の中身をデータから要約する |
本文 | 組み合わせごとのデータを主にし、全ページ共通の説明は短くする |
構造化データ | ページに表示する値と同じデータから出力する |
ページごとに変える部分は、地名ではなくデータの値です。地名と職種名だけを差し替えた文は、どのページでも同じ説明になります。Googleは、Google検索でサイトにクロールの資源をどれだけ割り当てるかを決める要素に、コンテンツの一意性や全体的なユーザー価値を挙げています。
構造化データについては、Google検索セントラルの「構造化データに関する一般的なガイドライン」に、ページの読者に表示されないコンテンツをマークアップしないよう書かれています。本文と構造化データを別々のデータから出すと、片方のデータだけが更新されたときに、2つの値が食い違うページがまとめてできます。
項目が空の欄をそのまま表示すると、閲覧者はページどうしを比べられません。空の欄を表示しないかどうかを項目ごとに決め、公開前には、データの多い組み合わせと少ない組み合わせのページを数枚ずつ表示して見比べます。
インデックスの制御
インデックスの制御では、検索に出すページの条件をデータで決め、条件を満たさない組み合わせはページを作らず、URLも出しません。
Googleがクロールバジェットの管理を勧めているのは、重複のないページが1万以上で毎日更新されるサイトや、Search ConsoleでURLの大部分が「検出 - インデックス未登録」になるサイトなどです。数値は目安で、正確なしきい値ではないとされています。

インデックスの制御は、次の4つの手順で進めます。
たとえば「求人が3件以上あり、地域と職種の組み合わせで検索されているもの」のように、データの件数と検索の有無で、検索に出すページの条件を決めます。
条件を満たしたページの正規URLだけをsitemapに載せます。ページの種類ごとにファイルを分け、ページを更新した日はlastmodで伝えます。
同じ内容を表示するURLは、canonical(正規URLを示すタグ)で1つにまとめます。並べ方だけが違うページのように、まとめられない重要でないURLは、robots.txtでクロールを止めます。
条件を満たさなくなって消すページは、404か410を返します。中身がないのに正常なページとして返すページ(soft 404)は、クロールされ続けます。
とりわけ見落とされがちなのが、noindexを付けたページもクロールされ続けることです。Googleは、noindexのページも引き続きリクエストし、noindexを確かめた時点で対象外にするため、クロールの時間が無駄になるとしています。検索に出さない組み合わせは、noindexで残すより、ページを作らないほうがクロールの時間を使いません。

※ 出典:Google for Developers「クロール バジェットの管理」
作るページの条件と階層を決めずに、公開を始めていませんか
条件を決めずにすべての組み合わせを公開すると、登録されないURLが増えやすくなります。データベースSEOは、数千〜数万ページ規模のデータベース型サイト向けのSEOです。内部リンクとURLの設計による構造の最適化と、クロールバジェットの配分・sitemap・canonicalによるインデックスの制御を行います。
プログラマティックSEOのよくある質問
プログラマティックSEOを作る前に確かめておきたい3つの質問に答えます。
AIで本文を量産するのもプログラマティックSEO?
AIで本文を量産しても、ページごとに違うデータがなければ利点は得られません。データを持たずにAIで文章だけを大量に作ると、ポリシーの例にある「生成AIなどのツールで価値を加えずに大量のページを作る」ことに近づきます。AIを使うなら、データの一覧に添える説明文のように、データを読み手向けの言葉にする部分に使います。
数百ページでも作る意味はある?
数百ページでも、データが毎日変わるなら、テンプレートで作る意味があります。価格や在庫、求人の掲載状況のように日々変わる値は、1ページずつ手で直すと更新が追いつかないためです。データがほとんど変わらず数百ページで足りるなら、1本ずつ書くほうが、ページごとに内容を作り込めます。
公開後は何を見ればいい?
公開後は、Search Consoleのページのインデックス登録レポートで、ページの種類ごとの登録状況を見ます。sitemapをページの種類ごとに分けておくと、レポートをsitemapで絞り込み、どのテンプレートのページが登録されていないかを見分けられます。登録されたページは、検索パフォーマンスのレポートで表示回数とクリック数を見たうえで、問い合わせや応募につながったかまで追います。
まとめ|プログラマティックSEOは作れるかより設計で決める
プログラマティックSEOは、データベースの項目とテンプレートから、検索キーワードの型ごとにページをまとめて作る手法です。Googleのポリシーが問題にするのは作り方ではなく閲覧者にとっての価値で、閲覧者にとって価値のないページを検索順位のために大量に作ると、スパムとして扱われることがあります。作るかどうかは、数千ページ規模で、URLと内部リンクの階層、ページの種類ごとのテンプレート、検索に出すページの条件を設計できるかで判断します。
私たち合同会社Writers-hubは、データベースSEOとして、数千〜数万ページ規模のデータベース型サイトの構造の最適化、テンプレートの最適化、インデックスの制御を行っています。
ページの種類ごとに、titleや構造化データをデータから組み立てられていますか
データベースSEOでは、構造の最適化とインデックスの制御に加えて、title・meta description・構造化データをページの種類ごとに整えるテンプレートの最適化を行います。







