mcpField
S
seo-aeo-audit

seo-aeo-audit

github.com/warpdotdevマーケティング・グロース822625 回インストール28 週間前に更新
リポジトリ

seo-aeo-audit について

seo-aeo-auditは、サイト運営者向けに技術SEO、ページ内コンテンツ、構造化データ、AI上の可視性を扱うスキルです。チェックリストと任意のスクリプトを使い、検索エンジンやAIの回答におけるコンテンツの表示を監査できます。

主な機能

  1. 01クロール、インデックス、正規URLの確認
  2. 02タイトル、説明文、ページ構成のレビュー
  3. 03JSON-LD構造化データのガイド
  4. 04モバイルSEOと国際SEOへの対応
  5. 05Lighthouseなどの監査スクリプト
  6. 06AEOコンテンツと可視性の確認方法

活用シーン

  1. 01クロールやインデックスの障害の特定
  2. 02ページタイトル、説明文、内部リンクの確認
  3. 03構造化データの追加と検証
  4. 04AI回答でのコンテンツの見つけやすさの評価

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/warpdotdev/oz-skills --skill seo-aeo-audit

インストール後、Claude Code で/seo-aeo-auditを入力して読み込まれたか確認します。

同梱ファイル

SKILL.md と一緒にインストールされる参考資料やスクリプト。

references/
json-ld-templates.md
scripts/
lighthouse.sh
pagespeed.sh
search-console-export.mjs

詳細

SEO 最適化

Lighthouse の SEO 監査と Google 検索のガイドラインに基づく検索エンジン最適化です。テクニカル SEO、オンページ最適化、構造化データに重点を置きます。

テクニカル SEO

クロール可能性

robots.txt:

# /robots.txt
User-agent: *
Allow: /

# Block admin/private areas
Disallow: /admin/
Disallow: /api/
Disallow: /private/

# Don't block resources needed for rendering
# ❌ Disallow: /static/

Sitemap: https://example.com/sitemap.xml

メタ robots:


<meta name="robots" content="index, follow">


<meta name="robots" content="noindex, nofollow">


<meta name="robots" content="index, nofollow">


<meta name="robots" content="max-snippet:150, max-image-preview:large">

正規 URL:


<link rel="canonical" href="https://example.com/page">


<link rel="canonical" href="https://example.com/current-page">


<link rel="canonical" href="https://example.com/products">

XML サイトマップ
<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
  <url>
    <loc>https://example.com/</loc>
    <lastmod>2024-01-15</lastmod>
    <changefreq>daily</changefreq>
    <priority>1.0</priority>
  </url>
  <url>
    <loc>https://example.com/products</loc>
    <lastmod>2024-01-14</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.8</priority>
  </url>
</urlset>

サイトマップのベストプラクティス:

  • 1 つのサイトマップにつき URL は最大 50,000 件、または 50MB まで
  • 大規模なサイトではサイトマップインデックスを使用する
  • 正規 URL かつインデックス登録可能な URL のみを含める
  • コンテンツの変更時に lastmod を更新する
  • Google Search Console に送信する
URL 構造
✅ Good URLs:
https://example.com/products/blue-widget
https://example.com/blog/how-to-use-widgets

❌ Poor URLs:
https://example.com/p?id=12345
https://example.com/products/item/category/subcategory/blue-widget-2024-sale-discount

URL のガイドライン:

  • アンダースコアではなくハイフンを使用する
  • 小文字のみを使用する
  • 短くする(75 文字未満)
  • ターゲットキーワードを自然に含める
  • 可能な限りパラメーターを避ける
  • 常に HTTPS を使用する
HTTPS とセキュリティ

<img src="https://example.com/image.jpg">


<img src="http://example.com/image.jpg">

SEO の信頼性を示すセキュリティヘッダー:

Strict-Transport-Security: max-age=31536000; includeSubDomains
X-Content-Type-Options: nosniff
X-Frame-Options: DENY

オンページ SEO

タイトルタグ

<title>Page</title>
<title>Home</title>


<title>Blue Widgets for Sale | Premium Quality | Example Store</title>

タイトルタグのガイドライン:

  • 50〜60 文字(Google では約 60 文字で省略されます)
  • 主要キーワードを前半に配置する
  • 各ページで固有のタイトルにする
  • (ホームページを除き)末尾にブランド名を付ける
  • 適切な場合は行動を促す表現にする
メタディスクリプション

<meta name="description" content="">


<meta name="description" content="Shop premium blue widgets with free shipping. 30-day returns. Rated 4.9/5 by 10,000+ customers. Order today and save 20%.">

メタディスクリプションのガイドライン:

  • 150〜160 文字
  • 主要キーワードを自然に含める
  • 魅力的な行動喚起を含める
  • 各ページで固有の内容にする
  • ページのコンテンツと一致させる
見出し構造

<h2>Welcome to Our Store</h2>
<h4>Products</h4>
<h1>Contact Us</h1>


<h1>Blue Widgets - Premium Quality</h1>
  <h2>Product Features</h2>
    <h3>Durability</h3>
    <h3>Design</h3>
  <h2>Customer Reviews</h2>
  <h2>Pricing</h2>

見出しのガイドライン:

  • 1 ページにつき <h1> は 1 つ(ページの主題)
  • 論理的な階層にする(レベルを飛ばさない)
  • キーワードを自然に含める
  • 一般的な表現ではなく、内容が分かる表現にする
画像 SEO

<img src="IMG_12345.jpg">


<img src="blue-widget-product-photo.webp"
     alt="Blue widget with chrome finish, side view showing control panel"
     width="800"
     height="600"
     loading="lazy">

画像のガイドライン:

  • キーワードを含む、内容が分かるファイル名を付ける
  • 代替テキストで画像の内容を説明する
  • 圧縮し、適切なサイズにする
  • WebP/AVIF を使用し、フォールバックを用意する
  • ファーストビューより下の画像は遅延読み込みする
内部リンク

<a href="/products">Click here</a>
<a href="/widgets">Read more</a>


<a href="/products/blue-widgets">Browse our blue widget collection</a>
<a href="/guides/widget-maintenance">Learn how to maintain your widgets</a>

リンクのガイドライン:

  • キーワードを含む、内容が分かるアンカーテキストを使う
  • 関連性の高い内部ページにリンクする
  • ページあたりのリンク数を適切に保つ
  • リンク切れは速やかに修正する
  • 階層を示すためにパンくずリストを使用する

構造化データ(JSON-LD)

Organization
<script type="application/ld+json">
{
  "@context": "https://schema.org",
  "@type": "Organization",
  "name": "Example Company",
  "url": "https://example.com",
  "logo": "https://example.com/logo.png",
  "sameAs": [
    "https://twitter.com/example",
    "https://linkedin.com/company/example"
  ],
  "contactPoint": {
    "@type": "ContactPoint",
    "telephone": "+1-555-123-4567",
    "contactType": "customer service"
  }
}
</script>
Article
<script type="application/ld+json">
{
  "@context": "https://schema.org",
  "@type": "Article",
  "headline": "How to Choose the Right Widget",
  "description": "Complete guide to selecting widgets for your needs.",
  "image": "https://example.com/article-image.jpg",
  "author": {
    "@type": "Person",
    "name": "Jane Smith",
    "url": "https://example.com/authors/jane-smith"
  },
  "publisher": {
    "@type": "Organization",
    "name": "Example Blog",
    "logo": {
      "@type": "ImageObject",
      "url": "https://example.com/logo.png"
    }
  },
  "datePublished": "2024-01-15",
  "dateModified": "2024-01-20"
}
</script>
Product
<script type="application/ld+json">
{
  "@context": "https://schema.org",
  "@type": "Product",
  "name": "Blue Widget Pro",
  "image": "https://example.com/blue-widget.jpg",
  "description": "Premium blue widget with advanced features.",
  "brand": {
    "@type": "Brand",
    "name": "WidgetCo"
  },
  "offers": {
    "@type": "Offer",
    "price": "49.99",
    "priceCurrency": "USD",
    "availability": "https://schema.org/InStock",
    "url": "https://example.com/products/blue-widget"
  },
  "aggregateRating": {
    "@type": "AggregateRating",
    "ratingValue": "4.8",
    "reviewCount": "1250"
  }
}
</script>
FAQ
<script type="application/ld+json">
{
  "@context": "https://schema.org",
  "@type": "FAQPage",
  "mainEntity": [
    {
      "@type": "Question",
      "name": "What colors are available?",
      "acceptedAnswer": {
        "@type": "Answer",
        "text": "Our widgets come in blue, red, and green."
      }
    },
    {
      "@type": "Question",
      "name": "What is the warranty?",
      "acceptedAnswer": {
        "@type": "Answer",
        "text": "All widgets include a 2-year warranty."
      }
    }
  ]
}
</script>
Breadcrumbs
<script type="application/ld+json">
{
  "@context": "https://schema.org",
  "@type": "BreadcrumbList",
  "itemListElement": [
    {
      "@type": "ListItem",
      "position": 1,
      "name": "Home",
      "item": "https://example.com"
    },
    {
      "@type": "ListItem",
      "position": 2,
      "name": "Products",
      "item": "https://example.com/products"
    },
    {
      "@type": "ListItem",
      "position": 3,
      "name": "Blue Widgets",
      "item": "https://example.com/products/blue-widgets"
    }
  ]
}
</script>
検証

次のツールで構造化データをテストします。


モバイル SEO

レスポンシブデザイン

<meta name="viewport" content="width=1024">


<meta name="viewport" content="width=device-width, initial-scale=1">
タップターゲット
/* ❌ Too small for mobile */
.small-link {
  padding: 4px;
  font-size: 12px;
}

/* ✅ Adequate tap target */
.mobile-friendly-link {
  padding: 12px;
  font-size: 16px;
  min-height: 48px;
  min-width: 48px;
}
フォントサイズ
/* ❌ Too small on mobile */
body {
  font-size: 10px;
}

/* ✅ Readable without zooming */
body {
  font-size: 16px;
  line-height: 1.5;
}

国際 SEO

Hreflang タグ

<link rel="alternate" hreflang="en" href="https://example.com/page">
<link rel="alternate" hreflang="es" href="https://example.com/es/page">
<link rel="alternate" hreflang="fr" href="https://example.com/fr/page">
<link rel="alternate" hreflang="x-default" href="https://example.com/page">
言語の宣言
<html lang="en">

<html lang="es-MX">

SEO 監査チェックリスト

重大
  • HTTPS が有効
  • robots.txt でクロールが許可されている
  • 重要なページに noindex が設定されていない
  • タイトルタグが設定され、ページごとに固有である
  • 1 ページにつき <h1> が 1 つ
優先度:高
  • メタディスクリプションが設定されている
  • サイトマップが送信されている
  • 正規 URL が設定されている
  • モバイル対応している
  • Core Web Vitals の基準を満たしている
優先度:中
  • 構造化データが実装されている
  • 内部リンクの方針がある
  • 画像に代替テキストが設定されている
  • 内容が分かる URL になっている
  • パンくずナビゲーションがある
継続的な対応
  • Search Console のクロールエラーを修正する
  • コンテンツの変更時にサイトマップを更新する
  • 検索順位の変化を監視する
  • リンク切れを確認する
  • Search Console のインサイトを確認する

監査ワークフロー

  1. ベースライン:主要なテンプレート(ホーム、カテゴリ、詳細、ブログ)で Lighthouse と PageSpeed を実行します。
  2. クロール:インデックス登録の可否、正規 URL、重複コンテンツを確認します(Search Console とクローラーを使用)。
  3. ブロッカーの修正:noindex、robots.txt、正規 URL の不一致、リダイレクトチェーンに対処します。
  4. オンページ:タイトル、メタディスクリプション、見出し、内部リンク、画像の代替テキストを確認します。
  5. 構造化データ:JSON-LD を追加し、リッチリザルトを検証します。
  6. 再検証:Lighthouse/PageSpeed を再実行し、Search Console のカバレッジを確認します。

よくある落とし穴

  • 重要なページに誤って noindex や X-Robots-Tag が設定されている
  • robots.txt が CSS/JS または重要なレンダリングリソースをブロックしている
  • 正規 URL が、インデックス登録されている URL と異なる URL を指している
  • http/https または www/non-www が混在し、重複コンテンツが発生している
  • リダイレクトチェーン/ループが発生している(クロールバジェットを浪費し、ページの読み込みを遅くします)
  • パラメーター付き URL(フィルター、並べ替え、UTM)が正規 URL の制御なしにインデックス登録可能になっている
  • JavaScript でレンダリングされたコンテンツが初期 HTML から確認できない
  • ソフト 404 が発生している(「見つかりません」というコンテンツを含む 200 ステータス)
  • サイトマップに正規 URL ではない URL や noindex の URL が含まれている
  • Hreflang タグに相互リンクがない、または誤った言語/地域コードが使われている

ツール

ツール用途
Google Search Consoleインデックス登録を監視し、問題を修正します
Google PageSpeed Insightsパフォーマンスと Core Web Vitals を確認します
Rich Results Test構造化データを検証します
LighthouseSEO 全般を監査します
Screaming Frogクロールを分析します

スクリプト(任意)

繰り返し実行できる監査用スクリプトは scripts/ にあります。

  • scripts/lighthouse.sh:URL または URL リストに対して Lighthouse CLI を実行し、JSON レポートを保存します。
  • scripts/pagespeed.sh:curl で PageSpeed Insights API を呼び出し、JSON 出力を取得します。
  • scripts/search-console-export.mjs:Search Console Search Analytics のデータをエクスポートします(OAuth アクセストークンが必要です)。

使用例:

# Lighthouse (SEO category only)
scripts/lighthouse.sh https://example.com
scripts/lighthouse.sh urls.txt reports/lighthouse

# PageSpeed Insights API (requires PAGESPEED_API_KEY)
PAGESPEED_API_KEY=... scripts/pagespeed.sh https://example.com
PAGESPEED_API_KEY=... scripts/pagespeed.sh urls.txt reports/pagespeed

# Search Console API (requires GSC_ACCESS_TOKEN)
GSC_ACCESS_TOKEN=... scripts/search-console-export.mjs https://example.com 2024-01-01 2024-01-31

AEO/AI 可視性の最適化

回答エンジン最適化(AEO)は、AI エージェント(ChatGPT、Perplexity、Gemini、Google AI Overviews)がコンテンツを見つけ、引用できるようにすることを重視します。SEO が検索順位とクリックを対象とするのに対し、AEO は AI が生成する回答内での引用、言及、ブランドの権威性を対象とします。

SEO との主な違い
SEO: Rank high → get clicks → drive traffic
AEO: Be cited → own the answer → build authority

SEO metric: Position, CTR, impressions
AEO metric: Citations, mentions, AI visibility score

SEO query: "best project management software"
AEO query: "What's the best project management software for a remote team of 15 with budget under $500/month?"

市場の変化:

  • Gartner は、AI チャットボットの影響で 2026 年までに従来の検索量が 25% 減少すると予測しています
  • 週あたり 4 億人以上が OpenAI 製品を利用しています
  • 検索の 58% は現在「ゼロクリック」です(AI インターフェース上で直接回答されます)
AEO に適したコンテンツ構成

回答を先に提示する形式:


## What is AEO?
In recent years, the rise of AI-powered search has transformed 
how users discover information. This shift has created new 
opportunities for brands. Answer Engine Optimization is...


## What is AEO?
Answer Engine Optimization (AEO) is the practice of structuring 
content so AI systems can directly extract and cite answers. 
It focuses on citations in AI responses rather than search rankings.

Unlike traditional SEO, AEO optimizes for conversational queries 
and zero-click results where users get answers without visiting 
your site.

ガイドライン:

  • 最初に 40~60 語の直接的な回答を提示します
  • 周囲の文脈がなくても内容が伝わる回答にします(AI が周辺の文脈なしで抽出できるようにします)
  • 会話に近い自然な言葉遣いにします
  • 曖昧な主張より具体的なデータを優先します
  • 数値化された主張、日付、信頼性の高い引用を含めます

エンティティベースの最適化:


"Our software helps teams collaborate better with features 
for project management and communication."


"Acme PM is a project management platform for remote teams. 
Founded in 2020, serves 50,000+ companies. Key features: 
Kanban boards, time tracking, Slack integration. Pricing: 
$12/user/month."

自分が何者で、何をしており、なぜ AI が信頼すべきなのかを明確にします。

AEO 向けスキーマ

AI による抽出に最適化するため、SEO 向けスキーマを拡張します。

AEO に不可欠なスキーマタイプ:

  1. FAQPage(AI による引用率が最も高い)
    • テンプレート:references/json-ld-templates.md

AEO 向け FAQ の回答ガイドライン:

  • 40~60 語が理想です(30 語未満では内容が不足し、80 語を超えると抽出が困難です)
  • 画面に表示される H2/H3 見出しと、スキーマの「name」プロパティを正確に一致させます
  • 具体的な数値、日付、データを含めます
  • 文脈がなくても意味が通るようにします
  • ユーザーが実際に尋ねるような自然な質問の表現にします
  1. Author + Organization(信頼性のシグナル)
    • テンプレート:references/json-ld-templates.md

重要な理由: AI エンジンは、特定可能で権威のある情報源のコンテンツを優先します。ブランドを明確に区別するには、sameAs リンクを使用します。

  1. Product(e コマースの AEO 向け)
    • テンプレート:references/json-ld-templates.md

AI ショッピングモジュールで、正確な価格、在庫状況、レビューを表示できるようにします。

プラットフォームごとの最適化

AI エンジンによって好みは異なります。引用される可能性を最大限に高めるには、3 つすべてのバランスを取ります。

ChatGPT:

  • 中立的で百科事典のような文体
  • 権威ある外部引用
  • 具体的なデータと数値化された主張
  • フォーマルな構成
Example: "According to a 2025 Gartner study, 78% of enterprises 
adopted AI-powered search tools. The primary drivers were cost 
reduction (cited by 62% of respondents) and improved accuracy 
(58%). Source: Gartner AI Search Report 2025."

Perplexity:

  • 会話に近く、経験に基づいた内容
  • 実践的な例やケーススタディ
  • コミュニティの知見と実社会の文脈
  • 比較的カジュアルな文体
Example: "Most teams start with the free tier and upgrade after 
2-3 months once they've proven ROI. Based on feedback from 500+ 
customers, common triggers for upgrading include hitting user 
limits or needing advanced reporting."

Google AI Overviews:

  • E-E-A-T シグナル(経験、専門性、権威性、信頼性)
  • 新しい日付の付いた最新コンテンツ
  • 強調スニペットに適した形式
  • モバイル向けに最適化された構成
Example: "Updated February 2026: Current pricing starts at 
$12/user/month (annual billing). Month-to-month adds 20%. 
Education and nonprofit discounts available. No free tier 
as of Q1 2026."
AEO の測定とツール

指標:

  • 引用頻度(AI がブランドに言及する頻度)
  • 可視性スコア(AI プラットフォーム全体での存在感)
  • コンテキストの質(肯定的/中立的/否定的な感情)
  • 出典の明示(AI が引用する URL)

AI 経由の参照トラフィックの追跡:

Google Analytics 4 で、トラフィックソースを絞り込みます。

  • chat.openai.com(ChatGPT)
  • perplexity.ai
  • gemini.google.com
  • copilot.microsoft.com

これらを個別の集客ソースとしてモニタリングします。

お好みの AEO モニタリングツールを使って、引用頻度、コンテキスト、出典の明示を追跡します。

AEO 監査チェックリスト
コンテンツ監査
  • 重要なページすべてに、冒頭に40~60語の直接的な回答がある
  • 自己完結した回答を含む FAQ セクションがある
  • 自然な検索クエリに合った会話調の言葉遣いになっている
  • 曖昧な主張ではなく、具体的なデータ(数値、日付、出典)がある
  • 著者プロフィールと組織情報が確認できる
  • コンテンツが最近の日付で更新されている(鮮度)
スキーマ監査
  • FAQ/ガイドページに FAQPage スキーマがある
  • すべての記事/ブログに Author スキーマがある
  • サイト全体に Organization スキーマがある
  • 商品ページに Product スキーマがある(EC サイトの場合)
  • datePublished/dateModified を含む Article スキーマがある
  • スキーマが表示されているコンテンツと完全に一致している(隠しマークアップがない)
  • Google Rich Results Test で検証している
技術監査
  • JSON-LD 形式を使用している(AI エンジンに推奨)
  • Schema.org の標準に準拠している
  • 競合するスキーマや重複したスキーマがない
  • ページの読み込みが速い(AI クローラーは高速なサイトを優先)
  • HTML 構造が整理されている(セマンティックな見出し)
  • モバイル向けに最適化されている(特に Google AI Overviews 向け)
エンティティと権威性のシグナル
  • ブランドのアイデンティティが明確(誰で、何をしているか)
  • Web 全体で NAP(名称、住所、電話番号)が一貫している
  • LinkedIn、Twitter、公式プロフィールへの sameAs リンクがある
  • 権威あるソースからの外部引用やバックリンクがある
  • レビュープラットフォームで積極的に活動している
  • Google ビジネス プロフィールが最適化されている(地域ビジネスの場合)
AI の可視性モニタリング
  • 商用クエリの上位10~20件を毎月テストしている
  • GA4 で AI 経由の参照トラフィックを追跡している
  • AI プラットフォーム全体でブランドへの言及をモニタリングしている
  • 引用のコンテキストを確認している(肯定的/中立的/否定的)
  • ブランドに関する AI の回答が事実として正確か検証している
  • 可視性の変化に関するアラートを設定している(有料ツールを使用している場合)

参考資料

コメント