FAQPage・HowTo・Product・Person スキーマ 完全解説:用途別に使い分ける応用JSON-LD

第2章で解説した4大スキーマはWebサイトの「基盤」です。本章では、それをさらに発展させる用途別の応用スキーマ を解説します。重要なのは、2026年4月13日時点では 「構造化データを入れれば何でもGoogleで派手に表示される」時代ではない ということです。 Product や Review のように今も検索表示に直結しやすい型がある一方、 FAQPage や HowTo は schema.org として有効でも、Google検索での表示期待は限定的です。 その違いを踏まえて、SEO・AI検索・E-E-A-T・アプリ理解の観点から優先順位を整理します。

🗺️ 2026年時点の見取り図
  • 今もGoogle表示で強い:Product / Review / AggregateRating / Breadcrumb / Article
  • AI検索・E-E-A-Tで価値が高い:Person / Organization / ProfilePage 的な設計
  • 構造化としては有効だがGoogle表示期待は低い:FAQPage / HowTo
  • SaaSやWebアプリ向けに有効:SoftwareApplication

1. FAQPage スキーマ:Q&A構造を機械可読にする

FAQPage スキーマ は、Q&Aコンテンツの意味構造をはっきり伝えるための型です。 ただし 2026年4月13日時点では、Google検索でのFAQ rich resultsは一般サイトではほぼ期待できません。現在は「GoogleにQ&Aを大きく見せるための主力施策」というより、 ページ構造の明示、他エンジンへの補助情報、社内のスキーマ整備という位置づけで考えるのが現実的です。

⚠️ FAQPageを実装できる条件(Googleポリシー)
  • ページ内に 実際のQ&Aコンテンツが存在すること(スキーマだけで見えないQ&Aは不可)
  • 各Q&Aが ページで一般公開されていること(ログインが必要なコンテンツは不可)
  • Q&Aが 宣伝・広告目的ではないこと(「今すぐ購入してください」形式は不可)
  • 同一の質問・回答が複数ページに重複していないこと
FAQPage スキーマ 完全テンプレートJSON-LD
{
  "@context": "https://schema.org",
  "@type": "FAQPage",
  "mainEntity": [
    {
      "@type": "Question",
      "name": "JSON-LDとは何ですか?",
      "acceptedAnswer": {
        "@type": "Answer",
        "text": "JSON-LD(JavaScript Object Notation for Linked Data)は、schema.orgが定義する語彙を使って、Webページの意味情報を機械が読み取れる形で記述する構造化データ形式です。HTMLのheadタグ内にscriptタグとして埋め込み、GoogleのリッチリザルトやAI検索エンジンへの情報提供に使用されます。"
      }
    },
    {
      "@type": "Question",
      "name": "FAQPageスキーマは何個のQ&Aまで記述できますか?",
      "acceptedAnswer": {
        "@type": "Answer",
        "text": "FAQPageスキーマ自体に個数制限はありません。ただし質問数が多すぎると1問ごとの情報密度が下がり、メンテナンスも難しくなります。実務では、ユーザーが本当に知りたい質問に絞って5〜10件程度に整理する運用が現実的です。"
      }
    },
    {
      "@type": "Question",
      "name": "構造化データを実装するとSEO効果はどのくらいありますか?",
      "acceptedAnswer": {
        "@type": "Answer",
        "text": "スキーマの効果はタイプによって異なります。2026年時点ではFAQPageやHowToを入れただけでGoogle検索表示が大きく改善するとは限りません。一方で、Product・Review・Article・Personのようなスキーマは、検索エンジンやAIにページの意味を伝える基盤として引き続き重要です。"
      }
    }
  ]
}
💡 text の中のHTMLタグについて
acceptedAnswer.text はプレーンテキストを推奨します。HTMLタグを含めることは技術的には可能ですが、 Googleがリッチリザルトとして表示する際にHTMLがそのまま表示されてしまうことがあります。 リンク・太字・改行は使わず、平易な日本語テキストで完結させることをお勧めします。

FAQPage × AI検索(ChatGPT・Perplexity・Gemini)の相乗効果

AI検索エンジンは「ユーザーの質問に直接答える」ことが目的のため、 Q&A形式で整理されたコンテンツを優先的に参照・引用します。 FAQPageスキーマによってQ&Aの構造が明示されると、 クローラーがコンテンツを解析する際に「これは質問と回答だ」と明確に識別でき、 引用品質が向上します。 ただし、どのAI検索エンジンがどの程度JSON-LDを直接利用しているかは公開範囲が限られるため、 ここは「Googleの確定仕様」ではなく 実務上の推定と観測 として捉えるのが安全です。

2. HowTo スキーマ:手順コンテンツを構造化する

「〇〇の方法」「〇〇のやり方」「〇〇の手順」という形式のコンテンツには HowTo スキーマ が適しています。 ただし Google Search の How-to rich results は既に deprecated であり、2026年4月13日時点では「検索結果の目立つ表示」を主目的に採用する型ではありません。それでも、手順構造を明示したいドキュメント、他検索エンジンや社内データ連携、将来の再利用性を意識するなら実装価値はあります。

HowTo スキーマ 完全テンプレートJSON-LD
{
  "@context": "https://schema.org",
  "@type": "HowTo",
  "name": "Next.jsにJSON-LDを実装する方法",
  "description": "Next.js App Routerを使ったプロジェクトに構造化データ(JSON-LD)を正しく実装するための手順を解説します。",
  "totalTime": "PT30M",
  "estimatedCost": {
    "@type": "MonetaryAmount",
    "currency": "JPY",
    "value": "0"
  },
  "tool": [
    {
      "@type": "HowToTool",
      "name": "Next.js 14以上"
    },
    {
      "@type": "HowToTool",
      "name": "テキストエディタ(VS Code、Cursor等)"
    }
  ],
  "step": [
    {
      "@type": "HowToStep",
      "position": 1,
      "name": "JSON-LDオブジェクトを定義する",
      "text": "実装したいスキーマタイプ(Article、OrganizationなどのJSON-LDオブジェクト)をJavaScriptオブジェクトとして定義します。",
      "image": "https://example.com/howto/step1.jpg",
      "url": "https://example.com/blog/nextjs-json-ld#step1"
    },
    {
      "@type": "HowToStep",
      "position": 2,
      "name": "page.tsxにscriptタグを追加する",
      "text": "Next.jsのpage.tsxまたはlayout.tsxに、type='application/ld+json'を指定したscriptタグを追加し、dangerouslySetInnerHTMLでJSON.stringifyしたオブジェクトを渡します。",
      "image": "https://example.com/howto/step2.jpg",
      "url": "https://example.com/blog/nextjs-json-ld#step2"
    },
    {
      "@type": "HowToStep",
      "position": 3,
      "name": "Google Rich Results Testで検証する",
      "text": "実装後、Google Rich Results Test(search.google.com/test/rich-results)にURLを入力し、スキーマが正しく認識されているか・エラーがないかを確認します。",
      "image": "https://example.com/howto/step3.jpg",
      "url": "https://example.com/blog/nextjs-json-ld#step3"
    },
    {
      "@type": "HowToStep",
      "position": 4,
      "name": "Google Search Consoleでリッチリザルトを監視する",
      "text": "Google Search Consoleの「拡張」セクションでリッチリザルトの表示状況とエラーを定期的に確認し、問題が発生した場合に迅速に対応します。",
      "image": "https://example.com/howto/step4.jpg",
      "url": "https://example.com/blog/nextjs-json-ld#step4"
    }
  ]
}
💡 totalTime はISO 8601形式で記述する
totalTime の値は ISO 8601 の Duration 形式で記述します。PT30M = 30分、PT2H = 2時間、PT1H30M = 1時間30分。estimatedCost も省略可能ですが、費用感を明示するとユーザーの信頼性が向上します(無料の場合は value: "0")。

3. Product・AggregateRating スキーマ:評価星と価格をリッチ表示

ECサイトや製品・サービス紹介ページには Product スキーマ を実装します。AggregateRating(集計レビュー)を組み合わせることで、 検索結果に 星評価(⭐⭐⭐⭐☆)と価格 を表示できます。 購買意欲のあるユーザーへのアピール力が高く、ECサイトでは特に重要なスキーマです。

⚠️ Googleのレビューポリシー違反に注意
AggregateRating実際のユーザーレビューの集計値 でなければなりません。 架空の高評価を記述したり、社内スタッフのレビューのみを集計して星5を表示するなどの 「水増し」はGoogleのスパムポリシー違反として手動ペナルティの対象になります。
Product + AggregateRating スキーマ 完全テンプレートJSON-LD
{
  "@context": "https://schema.org",
  "@type": "Product",
  "@id": "https://example.com/products/sample-product#product",
  "name": "商品名",
  "description": "商品の詳細説明。素材・特徴・使用方法などを記述します。",
  "image": [
    "https://example.com/products/sample-product/image-1x1.jpg",
    "https://example.com/products/sample-product/image-4x3.jpg"
  ],
  "sku": "SKU-12345",
  "gtin13": "1234567890123",
  "brand": {
    "@type": "Brand",
    "name": "ブランド名"
  },
  "offers": {
    "@type": "Offer",
    "url": "https://example.com/products/sample-product",
    "priceCurrency": "JPY",
    "price": "9800",
    "priceValidUntil": "2026-12-31",
    "availability": "https://schema.org/InStock",
    "seller": {
      "@type": "Organization",
      "name": "株式会社サンプル"
    }
  },
  "aggregateRating": {
    "@type": "AggregateRating",
    "ratingValue": "4.3",
    "reviewCount": "127",
    "bestRating": "5",
    "worstRating": "1"
  },
  "review": [
    {
      "@type": "Review",
      "reviewRating": {
        "@type": "Rating",
        "ratingValue": "5",
        "bestRating": "5"
      },
      "author": {
        "@type": "Person",
        "name": "田中 花子"
      },
      "reviewBody": "非常に使いやすく満足しています。",
      "datePublished": "2026-03-15"
    }
  ]
}
offers.availability の選択肢

InStock(在庫あり)、OutOfStock(在庫なし)、PreOrder(予約受付中)、BackOrder(入荷待ち)など。 常に在庫実態と一致させることが必須です。

gtin13 / sku

JANコード(gtin13)やSKUコードを記述すると、 Googleショッピングとの連携精度が上がります。 実在するコードのみ記述してください。

4. SoftwareApplication スキーマ:SaaS・Webアプリへの最適化

SaaS・Webアプリ・スマートフォンアプリには SoftwareApplication スキーマ が有効です。 AIOGeoScanのような診断ツールや、Next.jsで構築したWebアプリケーションに適用できます。 AppStoreやGoogle Playへのリンクと組み合わせることで、 検索結果にインストール数・評価・対応OS情報を表示できます。

SoftwareApplication スキーマ テンプレート(Webアプリ版)JSON-LD
{
  "@context": "https://schema.org",
  "@type": "SoftwareApplication",
  "name": "AIOGeoScan",
  "description": "AIクローラーやGoogleがあなたのサイトをどう認識しているかを診断する、無料のSEO・AIO診断ツール。JSON-LDエラー・llms.txt・メタデータを一括チェック。",
  "url": "https://aiogeoscan.com",
  "applicationCategory": "BusinessApplication",
  "operatingSystem": "Web",
  "offers": {
    "@type": "Offer",
    "price": "0",
    "priceCurrency": "JPY"
  },
  "aggregateRating": {
    "@type": "AggregateRating",
    "ratingValue": "4.8",
    "reviewCount": "312"
  },
  "featureList": [
    "JSON-LD構造化データの自動検証",
    "llms.txtの構文チェック",
    "E-E-A-T観点のスキーマ評価",
    "Perplexity・ChatGPT引用対策の診断"
  ],
  "screenshot": "https://aiogeoscan.com/screenshot.png",
  "publisher": {
    "@id": "https://bennuinc.com/#organization"
  }
}

5. Person スキーマ:著者のE-E-A-Tを最大化する実装

特に医療・法律・金融・IT技術など専門性が問われるコンテンツでは、Person スキーマ で著者の専門性を機械的に証明することがE-E-A-T向上の鍵になります。 Article スキーマの author プロパティにネストして使うのが基本ですが、 著者専用ページを作りそこに独立したPersonスキーマを置くと、 Googleが著者のナレッジグラフを形成しやすくなります。

Person スキーマ 完全テンプレート(著者プロフィールページ用)JSON-LD
{
  "@context": "https://schema.org",
  "@type": "Person",
  "@id": "https://example.com/author/yamada#person",
  "name": "山田 太郎",
  "givenName": "太郎",
  "familyName": "山田",
  "url": "https://example.com/author/yamada",
  "image": "https://example.com/author/yamada/photo.jpg",
  "description": "SEOエンジニア・構造化データ専門家。10年以上のWeb開発経験を持ち、100社以上のJSON-LD実装を支援。",
  "jobTitle": "SEOエンジニア / 構造化データスペシャリスト",
  "worksFor": {
    "@type": "Organization",
    "@id": "https://example.com/#organization"
  },
  "knowsAbout": [
    "JSON-LD",
    "構造化データ",
    "Next.js",
    "SEO最適化",
    "schema.org",
    "AI検索対策"
  ],
  "hasOccupation": {
    "@type": "Occupation",
    "name": "SEOエンジニア",
    "occupationalCategory": "15-1299.08"
  },
  "alumniOf": {
    "@type": "CollegeOrUniversity",
    "name": "〇〇大学"
  },
  "sameAs": [
    "https://twitter.com/yamada_example",
    "https://www.linkedin.com/in/yamada-example",
    "https://github.com/yamada-example"
  ]
}
🎯 応用スキーマ実装の優先順位
  • 最優先(全サイト): Person / 著者情報の整備 ―― E-E-A-TとAI検索の土台になり、寿命が長い
  • 高優先(コンテンツサイト・メディア): Product / Review がない場合でも Person スキーマ(著者ページ)は優先度が高い
  • 高優先(EC・製品紹介): Product + AggregateRating スキーマ ―― 購買CTRを改善
  • 中優先(SaaS・アプリ): SoftwareApplication スキーマ ―― アプリの信頼性証明
  • 補助的に検討: FAQPage / HowTo ―― Google表示よりも構造明示や他用途を重視する場合

FAQPage・HowToの実装エラーを
自動で検出しますか?

AIOGeoScanは、FAQPageの必須プロパティ漏れ・acceptedAnswer の欠落・ HowToのstep配列エラーなど、よくある実装ミスをURLを入力するだけで一括検出します。 手動テストの手間を省いて、より多くのページの品質を維持しましょう。

今すぐ自社サイトを無料診断する
Editorial Trust Signals

このナレッジベースの編集方針

`AIOGeoScan Knowledge` は、Bennu Inc. が運営する AI検索・構造化データ・クローラー制御に関する実務ナレッジです。 Google Search Central、Schema.org、OpenAI などの一次情報を優先し、観測ベースの実務知見は本文中で区別して扱います。

運営主体
Bennu Inc. / AIOGeoScan
更新方針
仕様変更や検索機能の更新にあわせて都度改訂
優先ソース
公式ドキュメント・標準仕様・公式ヘルプ
補助ソース
実装観測・運用知見・再現性のある検証結果

あなたのサイト、AIに正しく伝わっていますか?

解説を読み終えたら、実際にあなたのサイトを診断してみましょう。
100項目以上の診断で、AI時代の構造課題を可視化します。

無料で診断を開始する