
llms.txt ジェネレーター比較|AI クローラー向けファイルを自動生成【2026年版】
llms.txt を手書きせず自動生成できるツール・サービスを比較。CMS別 (WordPress/Next.js/Hugo/Astro) の自動化方法、無料ジェネレーター、Webhook 連携の手順まで解説。
目次(48項目)
- llms.txt 手書きの限界と自動生成が必要な理由
- llms.txt ジェネレーターの4系統
- 主要ジェネレーター詳細レビュー
- 1. llmstxtgenerator.dev(無料Webツール)
- 2. Mintlify llms.txt generator
- 3. Firecrawl llms.txt API
- 4. WordPress プラグイン(LLMO Toolkit / Yoast SEO 拡張)
- 5. Next.js / Hugo / Astro のビルド時生成
- 機能比較表
- 出力品質の比較
- CMS別実装ガイド
- WordPress での実装
- Next.js (App Router) での実装
- Hugo での実装
- Astro での実装
- Eleventy での実装
- サンプル llms.txt(業界別)
- サンプル1: BtoB SaaS(業務効率化ツール)
- サンプル2: EC サイト(小売)
- サンプル3: メディアサイト(ニュース)
- サンプル4: ローカルビジネス(飲食店)
- CI/CD で自動更新する方法
- パターン1: 記事公開時に再生成(GitHub Actions)
- パターン2: Firecrawl API を呼び出す
- パターン3: WordPress + Webhook
- 検証ツールとデバッグ
- 失敗事例から学ぶアンチパターン
- 失敗1: サイト内容と乖離したコピペ
- 失敗2: URL リスト過多
- 失敗3: 自動生成ツールの仕様準拠ミス
- 失敗4: メンテナンス放置
- 失敗5: robots.txt との不整合
- メンテナンスフロー
- 効果計測の指標
- ジェネレーター選定フローチャート
- 実装後のチェックリスト
- FAQ
- Q1. 手書きと自動生成、どちらが SEO 上有利ですか?
- Q2. 無料ジェネレーターで十分ですか?
- Q3. WordPress プラグインは複数入れても大丈夫ですか?
- Q4. llms-full.txt も必要ですか?
- Q5. 自動生成ツールに学習データとして使われませんか?
- Q6. CMSが特殊で、どのジェネレーターも使えません。どうすれば?
- Q7. 多言語サイトの場合、llms.txt も言語別に作るべきですか?
- Q8. CDN にキャッシュさせて大丈夫ですか?
- まとめ
- 関連用語
- 関連記事
llms.txt ジェネレーター比較|AI クローラー向けファイルを自動生成【2026年版】
この結論: 2026年5月時点で実用的な llms.txt ジェネレーターは「無料Webツール」「Firecrawl 等のクローラ系SaaS」「CMS プラグイン (WordPress)」「ビルド時生成スクリプト (Next.js / Hugo / Astro)」の4系統。手書きは初回のみ、運用は CI/CD 連携の自動生成が事実上の標準です。
最終更新日: 2026-05-06
llms.txt 手書きの限界と自動生成が必要な理由
llms.txt は仕様上 Markdown のサブセットでとてもシンプルです。トップに H1、その下に Blockquote 要約、続いて H2 セクションごとに [タイトル](URL): 説明 形式で URL を列挙するだけで成立します。だからこそ「最初の1枚は手書きで十分」という意見もあり、実際 Anthropic や Stripe の初期版もチームメンバーが手書きで仕上げたと公開しています。ただし運用に入ると、手書きには3つの致命的な弱点が浮かび上がります。第一に、コンテンツ更新のたびに人間がファイルを開いて手で書き換える必要があり、サイトの規模が大きくなるほど負債化します。第二に、URL のタイプミスやリンク切れに気づきにくく、AI クローラーから「壊れたファイル」と判定されると逆効果になります。第三に、Markdown のフォーマットが微妙にズレるだけで LLM のパース結果が変わり、引用率に影響します。
→ 詳しくは llms.txt とは?AI クローラー向け新標準
自動生成のメリットは、この3つの弱点を一気に解消することです。サイトマップや CMS の記事リストと同期させれば、新規記事を公開した瞬間に llms.txt が更新されます。リンク切れ検知やフォーマット検証もスクリプトに組み込めば、人間がレビューしなくても破綻しないファイルが維持できます。さらに LLMO の効果計測においても、「いつ llms.txt を更新したか」「どのページを追加したか」がコミット履歴で追跡可能になり、効果検証が一気に容易になります。
→ 詳しくは LLMOとは?AI検索時代の新SEO【完全入門】
llms.txt ジェネレーターの4系統
2026年5月時点で実運用に耐えるジェネレーターは、おおまかに以下の4つに分類できます。
| 系統 | 代表例 | 動作場所 | 向いているサイト |
|---|---|---|---|
| 無料Webジェネレーター | llmstxtgenerator.dev / Mintlify llms.txt generator | ブラウザ | 小規模 (50ページ未満) |
| クローラ系SaaS | Firecrawl llms.txt / Spider Cloud | クラウド | 中〜大規模、ヘッドレスCMS |
| CMS プラグイン | WordPress 用 LLMO Toolkit / Yoast SEO 拡張 | WordPress | WordPress サイト全般 |
| ビルド時スクリプト | Next.js / Hugo / Astro / Eleventy 内蔵 | CI/CD | 静的サイト、Jamstack |
それぞれ「初期セットアップ難易度」「メンテナンス頻度」「対応CMS」「料金」が異なるため、自社サイトの構成と運用体制から逆算して選ぶのが鉄則です。たとえば WordPress を使っている中小企業サイトなら CMS プラグインが圧倒的に楽ですし、Next.js で構築した ChatGPT Search 対策狙いの SaaS サイトなら、ビルド時スクリプトを組んで GitHub Actions で自動デプロイするのが定石です。
→ 詳しくは ChatGPT に引用されるための実践的書き方ガイド
主要ジェネレーター詳細レビュー
1. llmstxtgenerator.dev(無料Webツール)
最もシンプルで導入しやすいのが llmstxtgenerator.dev です。サイトのトップ URL を入力すると、サイトマップを読み込み、自動で llms.txt の雛形を生成してダウンロードさせてくれます。生成結果は llmstxt.org の仕様準拠で、H1 サイト名・Blockquote 要約・H2 セクション・URL リスト形式で出力されます。要約文の精度はそれなりに高く、META description や og:description を優先的に拾います。ただし数百ページを超える大規模サイトでは処理が重く、また llms-full.txt(本文を含む拡張版)の生成には対応していません。あくまで「初回1枚を手書きする手間を省く」用途と割り切るのが正解です。
→ 詳しくは Perplexity SEO 対策ガイド
2. Mintlify llms.txt generator
Mintlify はドキュメント特化型 SaaS ですが、付属の llms.txt generator が単体でも使えます。GitHub リポジトリの URL や Markdown ファイル群を直接読み込めるのが強みで、開発者ドキュメント・API リファレンスのような構造化されたコンテンツに最適です。出力は llms.txt と llms-full.txt の両方に対応しており、Mintlify 上でホストされているドキュメントサイトであれば、設定を ON にするだけで /llms.txt が公開されます。
3. Firecrawl llms.txt API
Firecrawl は Web スクレイピング SaaS ですが、専用の llms.txt 生成エンドポイントを提供しています。POST /v1/llmstxt にサイト URL を投げると、内部でクロール・要約・Markdown化を行い、完成版を返してくれます。最大の特徴は「サイトの実コンテンツから本文要約を生成する」点で、META description が貧弱なサイトでも精度の高い要約が得られます。月間1,000ページまで無料、それ以上は従量課金です。API ベースなので、社内バッチや GitHub Actions に組み込みやすく、運用自動化を前提とするチームに最も人気があります。
→ 詳しくは llms.txt とは?AI クローラー向け新標準
4. WordPress プラグイン(LLMO Toolkit / Yoast SEO 拡張)
WordPress 環境では2025年後半から複数の専用プラグインが登場しました。代表的な LLMO Toolkit は、固定ページ・投稿・カテゴリーから自動的に llms.txt を生成し、wp-json/llmo/v1/llms-txt エンドポイントで配信します。.htaccess のリライト設定で /llms.txt にマップすれば公開完了です。Yoast SEO の有償拡張も類似機能を提供しており、既存の sitemap.xml 設定と連動して更新タイミングを揃えられます。CMS 側で記事を公開した瞬間に llms.txt が再生成されるため、運用負荷はほぼゼロです。
5. Next.js / Hugo / Astro のビルド時生成
Jamstack サイトでは、ビルドプロセスに llms.txt 生成スクリプトを組み込むのが鉄板パターンです。Next.js なら app/llms.txt/route.ts で動的レスポンスを返す、Hugo なら layouts/_default/llms.txt.html を作って静的生成する、Astro なら src/pages/llms.txt.ts で同様の処理を書く、というように、各フレームワークが標準的な「カスタムルート」機能を備えています。記事の frontmatter から自動でリストを生成すればメンテナンスフリーで、CI/CD と組み合わせれば公開と同時に更新されます。
→ 詳しくは sitemap.xmlとrobots.txtの役割と作り方
機能比較表
主要ジェネレーターの機能・対応CMS・料金を一覧で比較します。
| ツール | 対応CMS/環境 | 出力形式 | メンテナンス頻度 | 料金 |
|---|---|---|---|---|
| llmstxtgenerator.dev | 任意 (Web) | llms.txt | 手動再実行 | 無料 |
| Mintlify llms.txt generator | Mintlify / GitHub | llms.txt + llms-full.txt | 自動 (Push連動) | 無料〜$120/月 |
| Firecrawl llms.txt API | API経由で任意 | llms.txt + llms-full.txt | API再実行 | 1,000ページ/月 無料、従量 |
| Spider Cloud | API経由 | llms.txt | API再実行 | $50/月〜 |
| WordPress LLMO Toolkit | WordPress | llms.txt | 自動 (記事公開連動) | 無料 |
| Yoast SEO 拡張 | WordPress | llms.txt | 自動 | $99/年〜 |
| Next.js 自前実装 | Next.js | llms.txt | 自動 (ビルド連動) | 無料 |
| Hugo 自前実装 | Hugo | llms.txt | 自動 (ビルド連動) | 無料 |
| Astro 自前実装 | Astro | llms.txt | 自動 (ビルド連動) | 無料 |
| Eleventy 自前実装 | Eleventy | llms.txt | 自動 (ビルド連動) | 無料 |
→ 詳しくは LLMOとは?AI検索時代の新SEO【完全入門】
選定の指針はシンプルです。WordPress なら LLMO Toolkit、Jamstack なら自前実装、ヘッドレスCMS や非標準環境なら Firecrawl API、まず1枚試したいだけなら llmstxtgenerator.dev、というのが定石です。料金は基本的に無料枠で運用開始できますが、月10万PV以上の中規模サイトで Firecrawl の従量課金が月数千円〜数万円になるケースがあります。
→ 詳しくは Perplexity SEO 対策ガイド
出力品質の比較
ジェネレーターによって、生成される llms.txt の品質には差があります。観点ごとに評価表を整理しました。
| 評価観点 | llmstxtgenerator.dev | Firecrawl | WordPress LLMO Toolkit | 自前実装 |
|---|---|---|---|---|
| 仕様準拠度 | ◎ | ◎ | ○ | 設計次第 |
| 要約文の精度 | ○ (META依存) | ◎ (本文要約) | △ (固定文) | 設計次第 |
| URL網羅性 | ○ (sitemap依存) | ◎ (実クロール) | ◎ (DB直結) | ◎ (DB直結) |
| 更新追従性 | × (手動) | △ (再実行) | ◎ (自動) | ◎ (自動) |
| 大規模サイト対応 | × | ◎ | ◎ | ◎ |
注目すべきは「要約文の精度」です。llms.txt の H2 セクションごとに付くリスト項目は [タイトル](URL): 説明 形式で、説明部分が AI クローラーの理解度を大きく左右します。META description が機械的に詰め込まれただけのサイトでは、Firecrawl のような本文要約型ジェネレーターを使ったほうが、引用率が上がる傾向があります。一方、すでに人間がきちんと書いた META description が揃っているサイトなら、シンプルなジェネレーターで十分です。
→ 詳しくは ChatGPT に引用されるための実践的書き方ガイド
CMS別実装ガイド
ここからは、主要 CMS 別の具体的な実装手順を見ていきます。コピペで動くサンプルコードを提示するので、自社環境に合わせて調整してください。
WordPress での実装
WordPress では LLMO Toolkit プラグインを使うのが最短ルートです。プラグインインストール後、管理画面の「LLMO Toolkit > llms.txt 設定」で以下を指定します。
| 設定項目 | 推奨値 | 説明 |
|---|---|---|
| サイト名 | サイトタイトル | H1 に出力される |
| サイト要約 | 1〜2文 | Blockquote に出力される |
| 含めるカテゴリー | 主要カテゴリーのみ | 全件含めるとファイルが肥大化 |
| 含める投稿タイプ | post + custom | LP や告知ページは除外 |
| 自動更新 | ON | 記事公開時に再生成 |
| キャッシュ時間 | 1時間 | サーバー負荷軽減 |
設定後、/llms.txt にアクセスして正しく出力されているか確認します。WordPress の パーマリンク設定によっては .htaccess にリライトルールを追加する必要があります。
RewriteRule ^llms\.txt$ /wp-json/llmo/v1/llms-txt [L]
プラグインを使わずに自前で実装する場合は、functions.php に WP_Query で投稿を取得して Markdown 出力する関数を書き、add_action('init', ...) でリライトルールを登録する流れになります。20〜30行程度のコードで実装可能です。
→ 詳しくは llms.txt とは?AI クローラー向け新標準
Next.js (App Router) での実装
Next.js 13 以降の App Router では app/llms.txt/route.ts というファイルを作るだけで、/llms.txt への GET リクエストに対する動的レスポンスを返せます。
// app/llms.txt/route.ts
import { getAllArticles } from '@/lib/articles';
export async function GET() {
const articles = await getAllArticles();
const body = `# サイト名
> サイトの1〜2文要約
## 主要記事
${articles.map(a => `- [${a.title}](${a.url}): ${a.description}`).join('\n')}
`;
return new Response(body, {
headers: {
'Content-Type': 'text/markdown; charset=utf-8',
'Cache-Control': 'public, max-age=3600',
},
});
}
このコードで、記事を追加・更新するたびに次のビルドで自動的に llms.txt が更新されます。Pages Router を使っている場合は pages/llms.txt.ts に同等のコードを書き、getServerSideProps でレスポンスを返す形になります。Vercel にデプロイしている場合、Edge Function として動作するため数十ms以内にレスポンスが返り、AI クローラーのタイムアウトを心配する必要はありません。
→ 詳しくは Perplexity SEO 対策ガイド
Hugo での実装
Hugo では、出力フォーマットを追加してテンプレートを書くアプローチが標準的です。config.toml に以下を追記します。
[outputFormats.LLMSTXT]
mediaType = "text/markdown"
baseName = "llms"
isPlainText = true
[outputs]
home = ["HTML", "RSS", "LLMSTXT"]
続いて layouts/_default/index.llmstxt.txt を作成し、テンプレートを記述します。
# {{ .Site.Title }}
> {{ .Site.Params.description }}
## 主要記事
{{ range (where .Site.RegularPages "Section" "articles") }}
- [{{ .Title }}]({{ .Permalink }}): {{ .Description }}
{{ end }}
hugo コマンドでビルドすると public/llms.txt が生成され、そのまま静的ホスティングで配信できます。Hugo は処理が高速なので、数千ページのサイトでも数秒で完了します。
Astro での実装
Astro では src/pages/llms.txt.ts を作成し、API ルートとして実装します。
// src/pages/llms.txt.ts
import type { APIRoute } from 'astro';
import { getCollection } from 'astro:content';
export const GET: APIRoute = async () => {
const articles = await getCollection('articles');
const body = `# サイト名
> サイトの1〜2文要約
## 主要記事
${articles.map(a => `- [${a.data.title}](/articles/${a.slug}): ${a.data.description}`).join('\n')}
`;
return new Response(body, {
headers: { 'Content-Type': 'text/markdown; charset=utf-8' },
});
};
Astro Content Collections と組み合わせれば、frontmatter に書いた title・description を自動的に拾えるため、メンテナンスコストはほぼゼロです。
Eleventy での実装
Eleventy では src/llms.njk ファイルを作成し、Nunjucks テンプレートで出力します。
---
permalink: /llms.txt
eleventyExcludeFromCollections: true
---
# {{ site.title }}
> {{ site.description }}
## 主要記事
{% for article in collections.articles %}
- [{{ article.data.title }}]({{ article.url | url }}): {{ article.data.description }}
{% endfor %}
Eleventy のビルド時に _site/llms.txt として出力されるため、そのまま静的配信できます。
サンプル llms.txt(業界別)
実際にどんな内容で書けば良いのか、業界別のサンプルを4パターン提示します。コピペで使えるよう、構造もそのまま掲載しています。
サンプル1: BtoB SaaS(業務効率化ツール)
# Acme Workflow
> 中小企業向けワークフロー自動化SaaS。導入企業3,000社、平均業務時間40%削減。
## 製品情報
- [製品概要](https://acme.example.com/product): ワークフロー自動化の主要機能と料金
- [料金プラン](https://acme.example.com/pricing): Free/Pro/Enterpriseの3プラン詳細
- [ユースケース](https://acme.example.com/cases): 業界別導入事例10件
## ドキュメント
- [導入ガイド](https://docs.acme.example.com/start): 30分で始めるワークフロー設定
- [API リファレンス](https://docs.acme.example.com/api): REST API 全エンドポイント
- [Webhook 連携](https://docs.acme.example.com/webhooks): イベント駆動の自動化方法
## ブログ
- [生産性向上のベストプラクティス](https://acme.example.com/blog/productivity)
- [導入事例: 株式会社A](https://acme.example.com/blog/case-a)
## Optional
- [採用情報](https://acme.example.com/careers)
- [プレスリリース](https://acme.example.com/press)
このサンプルでは「製品情報」「ドキュメント」「ブログ」の3階層に分けて構造化しており、AI クローラーが用途別に取得しやすい設計になっています。Optional セクションには採用情報など、回答生成にあまり使われない情報を配置します。
サンプル2: EC サイト(小売)
# Acme Store
> オーガニック食品専門のECサイト。国内産100%、5,000品目を取り扱い。
## 商品カテゴリー
- [野菜・果物](https://store.example.com/c/fresh): 旬の有機野菜と果物
- [調味料](https://store.example.com/c/seasoning): 醤油・味噌・みりん等
- [お米・雑穀](https://store.example.com/c/rice): 国内産有機米
## サービス
- [配送について](https://store.example.com/shipping): 全国送料無料、最短翌日配送
- [定期便](https://store.example.com/subscribe): 月1回お届けプラン
## ヘルプ
- [よくある質問](https://store.example.com/faq)
- [返品・交換](https://store.example.com/return)
ECサイトでは商品ページ全件を載せると数千行になるため、カテゴリーTOPページ単位での記載が現実的です。
サンプル3: メディアサイト(ニュース)
# Acme News
> AI業界専門メディア。月間PV300万、記者15名体制で速報・分析記事を毎日配信。
## 主要カテゴリー
- [生成AI最新ニュース](https://news.example.com/c/genai)
- [AI企業動向](https://news.example.com/c/companies)
- [規制・政策](https://news.example.com/c/policy)
- [導入事例](https://news.example.com/c/cases)
## 特集記事
- [2026年AI市場予測レポート](https://news.example.com/special/2026)
- [GPT-5徹底レビュー](https://news.example.com/special/gpt5)
## 編集部について
- [編集方針](https://news.example.com/about/editorial)
- [記者プロフィール](https://news.example.com/about/team)
メディアサイトは更新頻度が高いため、自動生成必須です。新着記事は llms-full.txt で配信し、llms.txt 本体はカテゴリーTOPと特集だけに絞るのがベストプラクティスです。
サンプル4: ローカルビジネス(飲食店)
# Acme Cafe
> 東京・恵比寿の自家焙煎コーヒー専門店。2008年創業、シングルオリジン豆を常時20種取り揃え。
## 店舗情報
- [アクセス](https://acme-cafe.example.com/access): 恵比寿駅徒歩3分、営業時間8:00-22:00
- [メニュー](https://acme-cafe.example.com/menu): フード・ドリンク全品目
## オンラインショップ
- [コーヒー豆通販](https://acme-cafe.example.com/shop): 自家焙煎豆を全国配送
- [サブスク](https://acme-cafe.example.com/subscribe): 月1回お届け
## イベント
- [カッピング会](https://acme-cafe.example.com/events/cupping): 月2回開催
ローカルビジネスでは10〜20リンクで十分です。住所・営業時間・電話番号など Local SEO 要素を Blockquote 要約に含めると、AI が「○○エリアのコーヒーショップは?」という質問で引用しやすくなります。
→ 詳しくは LLMOとは?AI検索時代の新SEO【完全入門】
CI/CD で自動更新する方法
llms.txt の真価は「常に最新」を保つ運用にあります。GitHub Actions を使った典型的な自動更新ワークフローを紹介します。
パターン1: 記事公開時に再生成(GitHub Actions)
# .github/workflows/llms-txt.yml
name: Update llms.txt
on:
push:
paths:
- 'content/articles/**'
schedule:
- cron: '0 0 * * *' # 毎日 0時 (UTC)
jobs:
generate:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Generate llms.txt
run: node scripts/generate-llms-txt.js
- name: Commit and push
run: |
git config user.name "github-actions"
git config user.email "actions@github.com"
git add public/llms.txt
git diff --staged --quiet || git commit -m "chore: regenerate llms.txt"
git push
このワークフローは「記事ファイルが更新されたとき」と「毎日0時」の2タイミングで llms.txt を再生成し、差分があれば自動コミットします。
パターン2: Firecrawl API を呼び出す
- name: Call Firecrawl API
run: |
curl -X POST https://api.firecrawl.dev/v1/llmstxt \
-H "Authorization: Bearer ${{ secrets.FIRECRAWL_KEY }}" \
-H "Content-Type: application/json" \
-d '{"url": "https://example.com", "maxUrls": 100}' \
-o public/llms.txt
サイトが大規模で、CMS から自前生成するのが難しい場合に有効です。月1回程度の頻度なら無料枠で十分カバーできます。
パターン3: WordPress + Webhook
WordPress プラグインの中には、記事公開時に外部 Webhook を叩く機能を持つものがあります。Webhook 先で llms.txt を再生成し、CDN にプッシュする構成にすれば、CMS 側の負荷をかけずに更新できます。
| パターン | 適したサイト | 更新頻度 | 実装難度 |
|---|---|---|---|
| GitHub Actions (push連動) | Jamstack | 即時 | 低 |
| GitHub Actions (cron) | 任意 | 1日1回 | 低 |
| Firecrawl API + cron | ヘッドレスCMS、複雑構造 | 1週間〜1日 | 中 |
| WordPress + Webhook | WordPress | 即時 | 中 |
| CMSプラグイン内蔵 | WordPress | 即時 | 極低 |
→ 詳しくは llms.txt とは?AI クローラー向け新標準
検証ツールとデバッグ
生成した llms.txt が正しくパースされるかを確認する手段は、いくつかあります。
| 検証手段 | チェック内容 | URL/コマンド |
|---|---|---|
| llmstxt.org Validator | 仕様準拠 | llmstxt.org/validator |
| Markdown Linter | 構文エラー | npm i -g markdownlint-cli |
| AI クローラーシミュレータ | 実際の取得結果 | curl -A "ClaudeBot" |
| Perplexity 引用チェック | 引用率 | 主要KWで検索して結果確認 |
特に重要なのは「実際に Perplexity や ChatGPT Search が llms.txt を読んでいるか」を継続的に観測することです。User-Agent ログを集計し、ClaudeBot, GPTBot, PerplexityBot などからのアクセスが llms.txt パスに対して発生しているかを毎週チェックする習慣をつけると、運用効果が見えるようになります。
→ 詳しくは ChatGPT に引用されるための実践的書き方ガイド
失敗事例から学ぶアンチパターン
実際に「自動生成したが効果が出なかった」「むしろ評価が下がった」事例から、避けるべきパターンを抜粋します。
失敗1: サイト内容と乖離したコピペ
最も多い失敗が「他社の llms.txt をコピペして編集が中途半端」のパターンです。たとえば SaaS スタートアップが Anthropic の llms.txt をテンプレートに使い、サイト名だけ書き換えた結果、Blockquote 要約に「世界をリードするAI研究所」のような実態と合わない記述が残ってしまうケースが散見されます。AI クローラーは要約文と実コンテンツの矛盾を学習するため、信頼性が下がります。
失敗2: URL リスト過多
「自動生成だから載るだけ載せよう」と全ページを一気に列挙する例です。1,000件を超える URL リストは、LLM のコンテキストウィンドウを圧迫し、結果として「重要な情報が埋もれる」逆効果を生みます。LLMO の文脈では、主要50〜100ページに絞り込むほうが引用率が上がる傾向があります。
失敗3: 自動生成ツールの仕様準拠ミス
一部のジェネレーターは llmstxt.org 仕様の細部に準拠しておらず、たとえば H1 が複数行になっていたり、Blockquote の代わりに通常段落になっていたりします。これは LLM のパースを混乱させるため、生成後は必ず llmstxt.org Validator で構文チェックすべきです。
失敗4: メンテナンス放置
「初回生成して終わり」のパターンも頻出します。サイト内の記事 URL が変わったり、削除されたりしているのに llms.txt が古いままで、404 リンクだらけになっている例です。この状態だと、AI クローラーから「メンテナンスされていないサイト」と評価される恐れがあります。CI/CD で必ず自動更新を組みましょう。
失敗5: robots.txt との不整合
robots.txt で Disallow: / しているサイトが、llms.txt で「主要記事はこちら」と URL を列挙しているケースです。AI クローラーは robots.txt を尊重するため、llms.txt に書かれた URL も結局取得できず、無意味になります。robots.txt と llms.txt は必ず整合させる必要があります。
→ 詳しくは sitemap.xmlとrobots.txtの役割と作り方
メンテナンスフロー
llms.txt の運用は、以下の月次・四半期サイクルで回すのが効率的です。
| 頻度 | チェック項目 | 担当 | 所要時間 |
|---|---|---|---|
| 毎日 (自動) | 自動再生成・差分コミット | CI/CD | 0分 (自動) |
| 毎週 | クローラーアクセスログ確認 | 運用担当 | 15分 |
| 毎月 | リンク切れチェック | 運用担当 | 30分 |
| 毎月 | Perplexity / ChatGPT 引用率測定 | SEO担当 | 60分 |
| 四半期 | サイト構造変更との整合性確認 | SEO担当 | 2時間 |
| 半年 | 仕様改訂チェック (llmstxt.org) | エンジニア | 1時間 |
最も大事なのは「四半期ごとのサイト構造との整合性確認」です。新しい主要ページが追加された、サブドメインを切った、サービス名が変わった、といった変化は自動生成だけでは捕捉しきれず、人間のレビューが必要です。
→ 詳しくは LLMOとは?AI検索時代の新SEO【完全入門】
効果計測の指標
llms.txt 自動生成を導入したあと、効果を測るための指標は以下の通りです。
| 指標 | 計測方法 | 目標値 (中規模サイト) |
|---|---|---|
| AI クローラーアクセス数 | サーバーログ集計 | 月100回以上 |
| llms.txt 取得頻度 | アクセスログ | 週1回以上 |
| Perplexity 引用率 | 主要KWで検索 | 上位3件中1件以上 |
| ChatGPT Search 引用率 | 主要KWで検索 | 上位5件中1件以上 |
| 引用経由トラフィック | GA4 referer 分析 | 月50セッション以上 |
AI Overview や Perplexity からの引用が増えれば、それが llms.txt の効果か他施策の効果かを切り分けるのは難しいですが、「llms.txt 導入前後で引用率が大きく変化したか」は最低限のシグナルになります。
→ 詳しくは Perplexity SEO 対策ガイド
ジェネレーター選定フローチャート
最後に、自社サイトに最適なジェネレーターを選ぶための判定フローを整理します。
| 状況 | 推奨ツール |
|---|---|
| WordPress を使用、コーディング不可 | LLMO Toolkit プラグイン |
| WordPress を使用、コーディング可能 | functions.php に自前関数 |
| Next.js / Astro / Hugo / Eleventy | フレームワーク内 API ルート |
| ヘッドレスCMS (Contentful等) | Firecrawl API + GitHub Actions |
| 1ページだけの LP | llmstxtgenerator.dev で1回生成 |
| 数千ページの大規模メディア | Firecrawl API + 自動 cron |
| 開発リソースゼロ・WordPressでもない | Mintlify でドキュメントごと移管 |
選定で迷ったら「まず llmstxtgenerator.dev で1枚作る → 内容を確認して必要性を判断 → 運用フェーズに入る段階で自動化ツールへ移行」という2段階アプローチが最もリスクが低いです。
→ 詳しくは llms.txt とは?AI クローラー向け新標準
実装後のチェックリスト
llms.txt をデプロイしたあとに必ず確認すべき項目を、チェックリスト形式でまとめました。
| チェック項目 | 確認方法 | 合格基準 |
|---|---|---|
/llms.txt がHTTP 200で返る | curl -I | 200 OK |
| Content-Type が text/markdown | curl -I | text/markdown |
| 文字コードが UTF-8 | nkf -g | UTF-8 |
| H1 が1つだけ存在 | grep '^# ' | 1行 |
| Blockquote が冒頭に存在 | grep '^> ' | 1行以上 |
| 全URLが200で返る | リンクチェッカー | 全件200 |
| robots.txt と矛盾なし | curl /robots.txt | 整合 |
| sitemap.xml と矛盾なし | XML比較 | 整合 |
これら8項目をすべて満たして、初めて「llms.txt が動いている」状態と言えます。CI/CD のステップとして自動チェックを組み込めば、リグレッションを防げます。
→ 詳しくは sitemap.xmlとrobots.txtの役割と作り方
FAQ
Q1. 手書きと自動生成、どちらが SEO 上有利ですか?
A. 内容そのものに差はありません。重要なのは「常に最新で、サイトの実態と一致していること」です。手書きで毎週きちんと更新できるなら手書きでも問題ありませんが、現実的には3ヶ月以内に放置されるケースがほとんどなので、最初から自動生成を組むほうが安全です。SEO と LLMO の両方の観点から、メンテナンスされている llms.txt のほうが評価されます。
Q2. 無料ジェネレーターで十分ですか?
A. 50ページ未満の小規模サイトであれば、llmstxtgenerator.dev のような無料ツールで初回生成し、月1回手動で再実行する運用で十分です。それ以上の規模では、Firecrawl API か CMS プラグイン、自前実装のいずれかを選ぶ必要があります。
Q3. WordPress プラグインは複数入れても大丈夫ですか?
A. 複数の llms.txt 生成プラグインを同時に有効化すると、/llms.txt の出力が衝突する可能性があります。基本的には1つに絞って使ってください。LLMO Toolkit と Yoast SEO 拡張を併用したい場合は、Yoast 側の llms.txt 機能を無効化するなど、明示的に役割分担させる必要があります。
Q4. llms-full.txt も必要ですか?
A. ドキュメントサイトや技術ブログのように「本文をAIに読ませたい」用途では、llms-full.txt も併設するのが有効です。一方、EC サイトやコーポレートサイトでは llms.txt だけで十分です。Mintlify と Firecrawl は llms-full.txt の自動生成にも対応しています。
Q5. 自動生成ツールに学習データとして使われませんか?
A. ジェネレーターの種類によります。Firecrawl などの SaaS は「お客様のコンテンツは学習に使わない」と利用規約で明記しており、安心して利用できます。一方、無料 Web ツールの中には利用規約が曖昧なものもあるため、機密性の高いサイトでは規約を確認してから使ってください。自前実装なら、当然ながら学習に使われる心配はありません。
Q6. CMSが特殊で、どのジェネレーターも使えません。どうすれば?
A. ヘッドレスCMS や独自CMS を使っている場合、Firecrawl API のような「サイト URL を渡せばクロールして生成してくれる」タイプを使うのが最も汎用性が高いです。月1回程度の更新なら無料枠で運用できます。それも難しい場合は、サイトマップから簡単な Python スクリプトを書いて llms.txt を生成するのが現実的です。
Q7. 多言語サイトの場合、llms.txt も言語別に作るべきですか?
A. はい。/llms.txt (日本語版) と /en/llms.txt (英語版) のように、言語ディレクトリごとに配置するのが推奨です。それぞれの言語に対応した AI クローラーが正しく取得できるよう、hreflang のような明示的なリンクも併用すると確実です。
Q8. CDN にキャッシュさせて大丈夫ですか?
A. 問題ありません。むしろ推奨です。Cache-Control: public, max-age=3600 程度を指定し、Cloudflare や Vercel の CDN にキャッシュさせると、AI クローラーからのアクセスにも安定して応答できます。CMS の更新タイミングで CDN キャッシュをパージする運用にしておけば、リアルタイム性も担保できます。
→ 詳しくは llms.txt とは?AI クローラー向け新標準
まとめ
llms.txt のジェネレーター選びは、「サイト規模」「使用CMS」「運用体制」の3軸で決まります。手書き運用は初回1枚を作るときの選択肢にとどめ、本格運用に入ったら自動生成・自動更新の仕組みに必ず移行してください。WordPress なら LLMO Toolkit、Jamstack なら自前実装、ヘッドレスCMS なら Firecrawl API、というのが2026年5月時点のベストプラクティスです。導入後は CI/CD で常に最新化し、月次でアクセスログと引用率を計測する運用を組めば、llms.txt は AI 検索時代における最も投資対効果の高い施策の1つになります。
→ 詳しくは LLMOとは?AI検索時代の新SEO【完全入門】
関連用語
- SEO: 検索エンジン最適化
- LLMO: LLM最適化
- llms.txt: AIクローラー向けファイル仕様
- LLM: 大規模言語モデル
- AI Overview: Google の AI 要約機能
- Perplexity: AI 検索エンジン
- ChatGPT Search: OpenAI の検索機能
- robots.txt: クローラー制御ファイル
- sitemap.xml: URL 一覧ファイル
関連記事
関連用語
- hreflang
hreflangとは、多言語サイトで「このページは何語版か」「他の言語版はどこにあるか」を検索エンジンに伝えるタグ。日本人には日本語版、英語ユーザーには英語版を表示するために使います。
- llms.txt
llms.txtとは、サイト運営者がAIクローラーに「このサイトの重要な情報はここ」と伝えるためのMarkdownファイルの提案。2024年9月にJeremy Howard氏が提唱し、急速に普及しつつある新しい標準です。
- クローラー
クローラーとは、Web上のページを自動巡回してデータを集めるプログラムのこと。Googleの「Googlebot」が代表例で、これに見つけてもらわないと検索結果に表示されません。
- sitemap.xml
sitemap.xmlとは、サイト内のページ一覧をXML形式でまとめたファイル。クローラーに「うちにはこんなページがありますよ」と教えるための地図で、新規サイトのインデックス促進に必須です。
- Perplexity
Perplexity(パープレキシティ)とは、回答に必ず引用元(出典URL)を表示する米国発のAI検索エンジン。2022年公開で急速に成長中。LLMOで「サイテーションされる」最初の主戦場として重視されています。
- robots.txt
robots.txtとは、サイトのルートに置くテキストファイルで、クローラーに「どのページをクロールしていいか・してはいけないか」を伝える設定ファイル。SEO・LLMO両方の入り口です。