Domain 54 / 225

Event 構造化データはイベント検索エクスペリエンスへの掲載権を獲得する

Event schema の要点

Event 構造化データはイベント情報を Google が認識し、Google 検索のイベントエクスペリエンスや Google マップに掲載するための実装。必須プロパティは name / startDate / location など。オンラインイベントは VirtualLocation で実装、複数日は startDate と endDate で範囲指定

なぜこれを学ぶか

Event 構造化データは イベント主催者が Google 検索のイベントエクスペリエンスから集客できる主要施策。 Eventbrite の事例では Google からのトラフィックが年比 100% 増加した。

イベント・セミナー・ライブ・展示会・コンサートを運営する全業態で必須。

学ばないと起きること

よくある事故被害
Event 構造化データなしで公開Google イベントエクスペリエンスから外れる
複数日イベントで startDate のみ指定終了日が認識されず、長期イベントとして扱われない
オンラインイベントで physicalLocation を指定VirtualLocation を使うべき、Google が場所を認識しない
開催終了後も構造化データを残す「予定 / 過去」の判定が曖昧になる
eventStatus を更新しない中止 / 延期 が伝わらない

学ぶメリット

  • イベントエクスペリエンスからの流入を取れる
  • Google マップでイベント表示候補に
  • オンライン / ハイブリッドイベントを正しく構造化できる
  • 商談で「VirtualLocation の使い方」を即答できる

仕組み

必須プロパティ

プロパティ内容
nameイベント名
startDate開始日時(ISO 8601)
location場所(Place / VirtualLocation)

推奨プロパティ

プロパティ内容
endDate終了日時
descriptionイベント説明
imageイベント画像
offersチケット情報
performer出演者
organizer主催者
eventStatusスケジュール状況
eventAttendanceMode参加形式(オフライン / オンライン / ハイブリッド)

実装例(オフラインイベント)

<script type="application/ld+json">
{
  "@context": "https://schema.org",
  "@type": "Event",
  "name": "spotyou カンファレンス 2026",
  "startDate": "2026-09-15T10:00:00+09:00",
  "endDate": "2026-09-15T18:00:00+09:00",
  "eventAttendanceMode": "https://schema.org/OfflineEventAttendanceMode",
  "eventStatus": "https://schema.org/EventScheduled",
  "location": {
    "@type": "Place",
    "name": "東京国際フォーラム",
    "address": {
      "@type": "PostalAddress",
      "streetAddress": "丸の内 3-5-1",
      "addressLocality": "千代田区",
      "addressRegion": "東京都",
      "postalCode": "100-0005",
      "addressCountry": "JP"
    }
  },
  "image": ["https://example.com/event.jpg"],
  "description": "SEO / AEO の最新動向を学ぶ年次カンファレンス",
  "offers": {
    "@type": "Offer",
    "url": "https://example.com/tickets",
    "price": "5000",
    "priceCurrency": "JPY",
    "availability": "https://schema.org/InStock",
    "validFrom": "2026-05-01T00:00:00+09:00"
  },
  "performer": {
    "@type": "Organization",
    "name": "spotyou"
  },
  "organizer": {
    "@type": "Organization",
    "name": "spotyou",
    "url": "https://spotyou.ai"
  }
}
</script>

キー概念

eventAttendanceMode の値

意味
OfflineEventAttendanceMode物理会場のみ
OnlineEventAttendanceModeオンラインのみ
MixedEventAttendanceModeハイブリッド

eventStatus の値

意味
EventScheduled開催予定
EventCancelled中止
EventMovedOnlineオンラインに移行
EventPostponed延期
EventRescheduled日時変更

中止や延期があれば必ず更新する。

オンラインイベントの location

"eventAttendanceMode": "https://schema.org/OnlineEventAttendanceMode",
"location": {
  "@type": "VirtualLocation",
  "url": "https://zoom.us/j/..."
}

VirtualLocation で zoom URL や YouTube ライブ URL を指定。

ハイブリッドイベントの location

物理会場 + オンライン両方を提供する場合:

"eventAttendanceMode": "https://schema.org/MixedEventAttendanceMode",
"location": [
  {
    "@type": "Place",
    "name": "東京国際フォーラム",
    "address": {...}
  },
  {
    "@type": "VirtualLocation",
    "url": "https://zoom.us/j/..."
  }
]

複数日 / 繰り返し開催

複数日連続:

"startDate": "2026-09-15T09:00:00+09:00",
"endDate": "2026-09-17T18:00:00+09:00"

繰り返し(毎週など)は EventSeries 構造化データを使うか、各回別 URL + 別 Event 構造化データで実装。

offers のチケット情報

"offers": {
  "@type": "Offer",
  "url": "https://example.com/tickets",
  "price": "5000",
  "priceCurrency": "JPY",
  "availability": "https://schema.org/InStock",
  "validFrom": "2026-05-01T00:00:00+09:00",
  "category": "前売り券"
}

複数価格帯(前売り / 当日 / 学生)は offers を配列で。

よくある誤解

よくある誤解実際のところ出典
オンラインイベントは Place で URL を指定VirtualLocation を使う、Place は物理会場用Event 構造化データ
中止や延期したら構造化データを削除eventStatus を Cancelled / Postponed に更新する同上
複数日イベントは startDate だけで OKendDate も指定して期間を明示同上
1 日に複数回開催も同じ Event 構造化データ各回を別 Event で実装、または EventSeries同上
終了したイベントの構造化データはすぐ削除履歴として残しても OK、ただし古い日付の混乱を避けるため expires を指定同上
location は文字列で住所を書けるPlace オブジェクト + PostalAddress で構造化同上
eventAttendanceMode は省略可オンライン / ハイブリッドの認識のため指定推奨同上
performer は省略 OK推奨プロパティ、省略するとリッチリザルトの表示要素が減る同上

実務での適用

イベント告知ページのチェックリスト

  1. Event 構造化データの必須プロパティ完備
  2. eventAttendanceMode を正しく指定(オフライン / オンライン / ハイブリッド)
  3. eventStatus を初期は EventScheduled
  4. offers にチケット情報(複数価格帯は配列)
  5. organizer / performer を Organization オブジェクトで
  6. リッチリザルトテストでイベント詳細プレビュー確認

イベント中止時の対応

  1. eventStatus を EventCancelled に変更
  2. 必要なら description に「中止のお知らせ」を追加
  3. ページを残すか 410 で完全削除を選択
  4. URL 検査で再クロール要求

トラブル別の対処

症状確認すべきこと
イベントエクスペリエンスに表示されないEvent 構造化データの必須プロパティ、startDate / location
オンラインイベントが認識されないVirtualLocation を使っているか、URL が有効か
Search Console「拡張」で Event エラー必須プロパティの欠落、startDate の形式
中止したイベントが Google に残り続けるeventStatus を Cancelled に更新
複数日イベントが 1 日扱いendDate を指定して期間を明示

公式ソース

自己テスト

Q1. Event 構造化データの必須プロパティは?

name / startDate / location

Q2. オンラインイベントの location はどう指定するか?

VirtualLocation オブジェクトで URL を指定。Place は物理会場用

Q3. ハイブリッドイベントの実装方法は?

eventAttendanceMode を MixedEventAttendanceMode に、location を Place と VirtualLocation の配列で指定

Q4. イベントを中止した時の正しい対応は?

eventStatus を EventCancelled に更新する。構造化データを削除するのでなく、状態変更で Google に伝える

Q5. 複数日イベントの正しい指定は?

startDate と endDate で開始 / 終了日時を ISO 8601 形式で指定

Q6. offers に複数価格帯(前売り / 当日 / 学生)を入れる方法は?

offers を配列にして各 Offer オブジェクトを並べる

Q7. eventAttendanceMode を省略するとどうなる?

Google がオンライン / オフラインを推測しなければならず、認識精度が下がる。指定推奨

Q8. eventStatus の主な値は?

EventScheduled / EventCancelled / EventMovedOnline / EventPostponed / EventRescheduled

これらの内容を採点付きで挑戦したい場合は、本ドメインのプロ試験で 5 問形式で確認できる。