Event schema, explained
Event describes something that happens at a set time and place, such as a concert, class or workshop. Google requires name, startDate and location (a Place with an address), and only shows events held at a physical location that the general public can book or attend. Business hours, coupons and online-only events are not eligible.
What it's for
Schema.org defines Event as "an event happening at a certain time and location, such as a concert, lecture, or festival." Google uses it for an interactive list of events in search (Google: Event). Subtypes include MusicEvent, EducationEvent, BusinessEvent, Festival and SportsEvent.
Who is eligible
From Google's guidelines:
- Events must be bookable by the general public. Events that need a membership or an invitation before buying a ticket or attending are ineligible.
- Events must take place at a physical location. Virtual experiences with no real-world component aren't supported, and Google removed the online event properties from its documentation.
- Don't mark up business hours, coupons or vouchers, or short-term sales ("50% off until Saturday") as events.
Key properties
| Property | What it holds | |
|---|---|---|
name |
The event's full title, not the venue or a sales message. | Required |
startDate |
ISO 8601 date and start time, e.g. 2026-11-14T19:00-05:00. |
Required |
location |
A Place with name and address (a full PostalAddress). |
Required (address required) |
endDate |
End date and time. | Recommended |
eventStatus |
EventScheduled, EventCancelled, EventPostponed, EventRescheduled. |
Recommended |
description, image |
Details; images ideally 1920 px wide (minimum 720 px). | Recommended |
offers |
One Offer per ticket type: price (0 if free), priceCurrency, availability, url, validFrom. |
Recommended |
organizer, performer |
Who hosts it and who performs. | Recommended |
previousStartDate |
Original date of a rescheduled event (needs eventStatus EventRescheduled). |
Recommended |
Minimal example
{
"@context": "https://schema.org",
"@type": "EducationEvent",
"name": "Hurricane shutter installation workshop",
"startDate": "2026-11-14T10:00-05:00",
"endDate": "2026-11-14T12:00-05:00",
"location": {
"@type": "Place",
"name": "Example Hardware, Fort Myers",
"address": {
"@type": "PostalAddress",
"streetAddress": "100 Main St",
"addressLocality": "Fort Myers",
"addressRegion": "FL",
"postalCode": "33901",
"addressCountry": "US"
}
},
"offers": { "@type": "Offer", "price": 0, "priceCurrency": "USD", "url": "https://example.com/events/shutter-workshop" },
"organizer": { "@type": "Organization", "name": "Example Hardware", "url": "https://example.com/" }
}
Common mistakes
- Date with no time, or a midnight time that wasn't meant (
T00:00:00). - Times in UTC that shift the event to the wrong day for local visitors. Use the local offset.
- Not updating
eventStatuswhen an event is cancelled or moved. - A city name instead of an address in
location.
Sources
- schema.org: Event
- Google Search Central: Event structured data (last updated 8 September 2026)