geollms.txtai検索実装ガイド

llms.txtの書き方ガイド|AI検索に自サイトを正しく認識させる方法

llms.txtとは

llms.txtは、大規模言語モデル(LLM)やAI検索エンジンに対して、Webサイトの概要・構造・主要コンテンツを伝えるためのテキストファイルです。robots.txtが検索エンジンのクローラーに対するルールを記述するファイルであるように、llms.txtはAIに対してサイト情報を提供する役割を持ちます。

2025年に提案されたこの仕組みは、AIがWebサイトの内容を効率的かつ正確に理解するための手段として急速に普及しています。

なぜllms.txtが必要なのか

AIクローラーがWebサイトの全ページをクロールして内容を把握するには、膨大な時間とリソースが必要です。llms.txtを設置することで、以下のメリットが得られます。

  • サイトの全体像をAIに素早く伝えられる:主要ページの一覧と概要を一箇所にまとめて提示できる
  • 重要なコンテンツを明示できる:AIに優先的に参照してほしいページを指定できる
  • 正確な情報伝達ができる:サイトの目的や運営者情報を明確に記述できる
  • AI検索での引用可能性が高まる:AIがサイトの構造を理解しやすくなることで、回答生成時の引用元として選ばれやすくなる

llms.txtの基本構造

llms.txtはMarkdown形式で記述します。ファイルはサイトのルートディレクトリ(https://example.com/llms.txt)に配置します。

基本テンプレート

# サイト名

サイトの概要説明。このサイトが何を提供しているかを簡潔に記述します。

## 主要ページ

- [ページタイトル](URL): ページの簡潔な説明
- [ページタイトル](URL): ページの簡潔な説明

## オプション情報

追加で伝えたい情報があれば記述します。

各セクションの説明

見出し(h1):サイト名を記述します。1つのファイルにh1は1つだけです。

概要文:h1の直後に、サイトの目的や提供する価値を2〜3文で簡潔に記述します。

主要ページ一覧:h2セクションの中に、Markdownのリンク形式でページ一覧を記載します。各リンクの後にコロンとスペースを置き、そのページの簡潔な説明を添えます。

実践的なllms.txtの書き方

コーポレートサイトの例

# 株式会社サンプル

株式会社サンプルは、中小企業向けのWebマーケティング支援を行う会社です。SEO対策、コンテンツマーケティング、Web広告運用の3つのサービスを提供しています。

## サービス

- [SEO対策サービス](https://example.com/services/seo): 内部対策からコンテンツ戦略まで、包括的なSEOサービスを提供
- [コンテンツマーケティング](https://example.com/services/content): 記事制作、ホワイトペーパー作成、オウンドメディア運営を支援
- [Web広告運用](https://example.com/services/ads): Google広告、SNS広告の運用代行と最適化

## 会社情報

- [会社概要](https://example.com/about): 設立2015年、東京都渋谷区所在、従業員50名
- [お問い合わせ](https://example.com/contact): サービスに関するご相談はこちら

## 実績・事例

- [導入事例一覧](https://example.com/cases): 100社以上の支援実績
- [お客様の声](https://example.com/testimonials): クライアントからの評価・フィードバック

ブログサイトの例

# テックブログ サンプル

Webフロントエンド技術を中心に、実務で役立つ技術情報を発信するブログです。React、Next.js、TypeScriptの記事が特に充実しています。

## 人気記事

- [Next.js App Router完全ガイド](https://example.com/blog/nextjs-app-router): Next.js 14以降のApp Routerの使い方を網羅的に解説
- [TypeScript実践パターン集](https://example.com/blog/typescript-patterns): 実務で使える型定義パターンを30個紹介
- [React Server Componentsの基本](https://example.com/blog/react-server-components): RSCの概念と実装方法を初心者向けに解説

## カテゴリ

- [React](https://example.com/category/react): Reactに関する記事一覧
- [Next.js](https://example.com/category/nextjs): Next.jsに関する記事一覧
- [TypeScript](https://example.com/category/typescript): TypeScriptに関する記事一覧

## 著者情報

- [プロフィール](https://example.com/about): フロントエンドエンジニア歴8年、著書2冊

llms-full.txtの活用

llms.txtに加えて、llms-full.txtというファイルを設置することもできます。こちらにはサイトのより詳細な情報を記述します。

# サイト名

(llms.txtと同じ概要)

## 詳細情報

llms.txtでは概要のみ記載した各ページについて、
より詳しい内容をここに記述します。

### サービスA の詳細

サービスAの具体的な内容、対象顧客、料金体系、
導入フローなどの詳細情報を記述します。

### サービスB の詳細

(同様に詳細を記述)

llms.txtはAIにサイトの概要を効率的に伝えるための「要約版」、llms-full.txtはより深い理解を促すための「詳細版」という位置づけです。

llms.txtの設置手順

ステップ1:ファイルを作成する

テキストエディタでllms.txtファイルを作成します。文字エンコーディングはUTF-8を使用してください。

ステップ2:ルートディレクトリに配置する

作成したファイルをWebサイトのルートディレクトリに配置します。https://example.com/llms.txtでアクセスできるようにしてください。

ステップ3:Content-Typeを確認する

サーバーがllms.txttext/plainのContent-Typeで配信していることを確認します。

curl -I https://example.com/llms.txt
# Content-Type: text/plain; charset=utf-8 であることを確認

ステップ4:Next.jsでの配置方法

Next.jsを使用している場合は、publicディレクトリに配置するか、Route Handlerで動的に生成できます。

// app/llms.txt/route.ts
export async function GET() {
  const content = `# サイト名

サイトの概要説明

## 主要ページ

- [トップページ](https://example.com): サイトのトップページ
- [サービス紹介](https://example.com/services): 提供サービスの一覧
`;

  return new Response(content, {
    headers: {
      'Content-Type': 'text/plain; charset=utf-8',
    },
  });
}

llms.txtを書く際のポイント

やるべきこと

  • 簡潔に書く:llms.txtは概要を伝えるファイルです。冗長な文章は避け、各ページの説明は1〜2文にまとめましょう
  • 正確な情報を記載する:URLやページの説明が実際の内容と一致していることを確認してください
  • 定期的に更新する:新しいページを追加したり、既存ページの内容が変わったりした場合は、llms.txtも更新しましょう
  • 最も重要なページを優先する:すべてのページを列挙する必要はありません。AIに認識してほしい重要なページを厳選しましょう

避けるべきこと

  • 大量のURLを羅列しない:数百ものURLを列挙すると、AIにとって情報の優先順位が不明確になります
  • 宣伝的な文章を書かない:「業界No.1」のような主観的な宣伝文句は控え、客観的な事実を記述しましょう
  • 機密情報を含めない:公開したくない情報やURLは記載しないでください
  • sitemap.xmlの代替として使わない:llms.txtはAI向けの概要情報であり、全ページの網羅的な一覧ではありません

効果の確認方法

llms.txtを設置した後、効果を確認する方法はまだ標準化されていませんが、以下の方法で間接的に確認できます。

  • サーバーログでAIクローラーのアクセスを確認する:GPTBot、ClaudeBot、PerplexityBotなどがllms.txtにアクセスしているか確認する
  • AI検索で自サイトの情報が引用されるか試す:ChatGPTやPerplexityで自サイトに関連する質問をして、引用されるか確認する
  • 当サイトのスコアリングツールを利用する:GEOスコアの中でllms.txtの有無と内容の充実度をチェックできます

IndexReadyでの実装例

筆者がIndexReady自体のllms.txtを作成した際の経験を紹介します。

最初はシンプルに「サイト名と説明文だけ」のllms.txtを作りました。5行程度の内容です。これだけでも「llms.txtあり」としてスコアリングではwarning(7点)が付きました。しかし満点(12点)を取るには、llms-full.txtの設置と、llms.txtの内容が5行以上であることが条件でした。

そこでllms.txtにはサイト概要・チェック項目のサマリー・主要ページリンクを記載し(約30行)、llms-full.txtには全23チェック項目の詳細な判定基準、機能説明、技術スタック、ブログ記事一覧まで含めました(約100行)。これで12点満点を獲得しています。

作成にかかった時間は合計30分程度です。llms.txtは10分、llms-full.txtは20分ほど。一度作れば頻繁に更新する必要はないため、費用対効果は非常に高い施策だと実感しています。

実際にサーバーログを確認すると、GPTBotやPerplexityBotがllms.txtに定期的にアクセスしているのが確認できました。AIクローラーはこのファイルを実際に読みに来ています。

まとめ

llms.txtは、AI検索時代において自サイトの情報を正確にAIに伝えるための重要なファイルです。Markdown形式でサイトの概要と主要ページの一覧を記述し、ルートディレクトリに配置するだけで設置できます。

まだ設置していない方は、まず基本的なllms.txtから始めて、徐々に内容を充実させていくことをおすすめします。筆者の経験では、30分の作業でGEOスコアが12点改善しました。

よくある質問(FAQ)

llms.txtは必須ですか?

現時点では必須ではありません。しかし、AI検索での引用可能性を高めたい場合は設置することを強くおすすめします。設置のコストは低く、デメリットもほとんどないため、対応しない理由は少ないでしょう。

llms.txtとrobots.txtの違いは何ですか?

robots.txtはクローラーに対して「どのページをクロールしてよいか」を指示するファイルです。一方、llms.txtはAIに対して「サイトの概要と主要コンテンツは何か」を伝えるファイルです。両者は役割が異なるため、どちらも設置するのが望ましいです。

llms.txtのファイルサイズに制限はありますか?

公式な制限はありませんが、AIが効率的に処理できるよう、llms.txtは簡潔に保つことが推奨されています。目安として、数KBから数十KB程度に収めるのがよいでしょう。詳細な情報はllms-full.txtに記載してください。

WordPressでもllms.txtは設置できますか?

はい、可能です。WordPressのルートディレクトリ(wp-config.phpと同じ階層)にllms.txtファイルをアップロードするか、プラグインを使って自動生成することもできます。