きゃくくる 無料で相談する

店舗サイトの構造化データの作り方。LocalBusinessスキーマ実装入門

公開: 2026-05-28 / 更新: 2026-05-28

店舗サイトの構造化データは、schema.orgのLocalBusinessスキーマをJSON-LD形式で記述するのが標準です。店名・住所・電話番号をGoogleビジネスプロフィールと同じ表記で書くことが最大のポイントです。

構造化データとは何か?

構造化データとは、検索エンジンやAIがページの内容を正確に理解できる形式で、ページ内の情報を記述するマークアップです。語彙はschema.org、記述形式はJSON-LDが現在の標準です。

人間はページを見れば、どれが店名でどれが営業時間か判断できます。しかし検索エンジンやAIにとって、HTMLはただの文字の並びです。構造化データは「この文字列は店名」「この数字は電話番号」と、機械が読める形で意味のラベルを付ける仕組みです。

schema.orgとは、GoogleやMicrosoftなどが共同で策定した構造化データの語彙集です。「店名はname」「住所はaddress」のように、使う項目名が定義されています。JSON-LDとは、その内容をHTML内のscriptタグにJSON形式で書く記述方式です。Googleが公式に推奨しており、ページの見た目には一切影響しません。

なぜ店舗に構造化データが必要なのか?

検索結果でのリッチリザルト表示につながるほか、AI OverviewsなどのAI検索が店舗情報を正確に読み取る材料になるためです。Googleビジネスプロフィールとの情報照合の手がかりにもなります。

リッチリザルトとは、通常のリンクに評価の星や営業時間などが追加表示される、強化された検索結果です。表示面積が増えるためクリック率が上がりやすく、競合との見た目の差になります。

さらに2025年以降は、AI Overviews(Google検索の生成AI回答枠)やChatGPTが店を推薦する時代です。AIはWeb上の情報を読み取って回答を作ります。そのため、構造化データはAIに向けた正確な自己紹介文として機能します。マークアップのないページは、誤読や引用漏れのリスクが高まります。

もう1つの役割が、Googleビジネスプロフィール(店舗情報をGoogleに登録する無料ツール。以下GBP)との照合です。GoogleはGBP・公式サイト・他媒体の情報を突き合わせ、店舗情報の信頼度を判断しています。サイト側に構造化データがあると、この照合が確実になります。MEOの土台である情報の一貫性も強化されます。

LocalBusinessスキーマには何を書くのか?

最低限、店名(name)・住所(address)・電話番号(telephone)の3点を記述します。営業時間・位置情報・価格帯まで書くと、店舗ページとして十分な情報量になります。

LocalBusinessとは、schema.orgが実店舗ビジネス用に定めたタイプです。業種が決まっている場合は、CafeOrCoffeeShopやHairSalonなど、より具体的なサブタイプを使うと正確に伝わります。

JSON-LDの記述例(架空のカフェ)

次のコードを、店舗情報を掲載しているページのhead内に貼り付けます。

<script type="application/ld+json">
{
  "@context": "https://schema.org",
  "@type": "CafeOrCoffeeShop",
  "name": "喫茶ひだまり",
  "url": "https://example.com/",
  "image": "https://example.com/images/storefront.jpg",
  "telephone": "+81-3-1234-5678",
  "priceRange": "¥1,000~¥1,999",
  "address": {
    "@type": "PostalAddress",
    "postalCode": "154-0001",
    "addressRegion": "東京都",
    "addressLocality": "世田谷区",
    "streetAddress": "池尻1-2-3 ひだまりビル1F",
    "addressCountry": "JP"
  },
  "geo": {
    "@type": "GeoCoordinates",
    "latitude": 35.6504,
    "longitude": 139.6852
  },
  "openingHoursSpecification": [
    {
      "@type": "OpeningHoursSpecification",
      "dayOfWeek": ["Monday", "Tuesday", "Wednesday", "Thursday", "Friday"],
      "opens": "09:00",
      "closes": "19:00"
    },
    {
      "@type": "OpeningHoursSpecification",
      "dayOfWeek": ["Saturday", "Sunday"],
      "opens": "10:00",
      "closes": "18:00"
    }
  ],
  "sameAs": ["https://www.instagram.com/hidamari_cafe/"]
}
</script>

住所はaddressの中で、郵便番号・都道府県・市区町村・番地に分けて書きます。openingHoursSpecificationは曜日ごとの営業時間です。opensとclosesは24時間表記で記述します。geoは緯度・経度で、Googleマップ上で店舗の地点を右クリックすると取得できます。priceRangeはおおよその価格帯です。

注意点は、1つの店舗ページに1つのスキーマを対応させることです。記述する値は、必ずページに実際に表示されている情報と一致させます。

実装後の確認はどうするのか?

Googleの「リッチリザルトテスト」にページのURLを入力し、エラーがないことを確認します。公開後はSearch Consoleのレポートで継続的に検証します。

リッチリザルトテストで検証する

リッチリザルトテストとは、構造化データが正しく書けているかを判定するGoogleの無料ツールです。公開前のコードは「コード」タブに貼り付けて検証できます。結果に「エラー」が出た場合は、必須項目の不足や文法ミスです。必ず修正してから公開します。「警告」は推奨項目の不足を示すもので、可能な範囲で埋めれば十分です。

Search Consoleで継続監視する

Search Consoleとは、検索での表示状況を確認できるGoogleの無料ツールです。ページがインデックスされると、構造化データの検出状況やエラーがレポートに表示されます。実装直後だけでなく、月1回程度の定期確認を習慣にすると更新漏れに早く気づけます。

よくある実装ミスとは?

最も多いのは、Googleビジネスプロフィールと表記が異なるNAP(店名・住所・電話番号)です。営業時間の不一致や、複数店舗での同一データの使い回しも信頼性を下げます。

NAPとは、Name(店名)・Address(住所)・Phone(電話番号)の頭文字で、店舗情報の核になる3項目です。「1-2-3」と「1丁目2番3号」、ビル名の有無といった表記ゆれは、機械には別情報に見える恐れがあります。GBPの表記を正として、サイト側を一字一句そろえてください。

営業時間の不一致も頻発します。GBPだけ営業時間を変更し、サイトの構造化データが古いまま、というケースが典型です。また、ページの内容と無関係なスキーマを置くことはGoogleのガイドライン違反です。ページに表示していない情報をスキーマだけに書くのも避けます。

複数店舗の場合は、全店舗ページに本店のJSON-LDを使い回すミスが目立ちます。店舗ごとに固有の住所・電話番号・営業時間を記述しなければ、各店の情報は正しく伝わりません。

こうした一貫性の維持は、店舗数が増えるほど手作業では追いきれなくなります。きゃくくるは、GBPの情報をもとに各店舗ページの構造化データを自動整備し、表記ゆれや更新漏れを防ぎます。

まとめ

店舗サイトの構造化データは、schema.orgのLocalBusinessスキーマをJSON-LD形式で書くのが標準です。店名・住所・電話番号に営業時間や位置情報を加え、GBPと完全に同じ表記で記述します。実装後はリッチリザルトテストとSearch Consoleで検証し、情報が変わるたびに更新を続けることが、検索とAIの両方から信頼される店舗ページへの近道です。

店舗ページの構造化データ整備とGBPとの一貫性維持は、きゃくくるが自動化できます。

無料相談・MEO診断を依頼する →