Event Schema Markup
Event schema enables event rich results in Google Search, showing date, location, ticket info, and more. Essential for conferences, concerts, workshops, and any scheduled events.
What is Event schema markup?
Event schema markup is structured data in JSON-LD format that helps search engines understand your page content. It requires properties like name, startDate, location and enables rich results in Google Search. Event schema enables event rich results in Google Search, showing date, location, ticket info, and more. Essential for conferences, concerts, workshops, and any scheduled events.
Required Properties
| Property | Type | Description |
|---|---|---|
| name | Text | The name of the event. |
| startDate | DateTime | The start date and time in ISO 8601 format. |
| location | Place or VirtualLocation | Where the event takes place (physical or online). |
Recommended Optional Properties
| Property | Type | Description |
|---|---|---|
| endDate | DateTime | The end date and time of the event. |
| description | Text | A description of the event. |
| image | ImageObject or URL | An image for the event. |
| performer | Person or Organization | The performer(s) at the event. |
| offers | Offer | Ticket information with price and availability. |
| organizer | Person or Organization | The organizer of the event. |
| eventStatus | EventStatusType | Status: Scheduled, Cancelled, Postponed, etc. |
| eventAttendanceMode | EventAttendanceModeEnumeration | Online, offline, or mixed attendance. |
Example JSON-LD Code
{
"@context": "https://schema.org",
"@type": "Event",
"name": "Web Development Conference 2025",
"startDate": "2025-06-15T09:00:00-07:00",
"endDate": "2025-06-17T17:00:00-07:00",
"location": {
"@type": "Place",
"name": "Portland Convention Center",
"address": {
"@type": "PostalAddress",
"streetAddress": "777 NE MLK Jr Blvd",
"addressLocality": "Portland",
"addressRegion": "OR"
}
},
"offers": {
"@type": "Offer",
"price": "299",
"priceCurrency": "USD",
"url": "https://webdevconf.example.com/tickets",
"availability": "https://schema.org/InStock"
},
"organizer": {
"@type": "Organization",
"name": "WebDev Community"
}
}
Place this inside a <script type="application/ld+json"> tag in your page's <head>.
Common Mistakes to Avoid
- ✗ Not updating eventStatus when an event is cancelled or postponed
- ✗ Using the wrong date format — always use ISO 8601 with timezone
- ✗ Missing location for in-person events
- ✗ Not including VirtualLocation for online events
- ✗ Omitting ticket/offer information when tickets are available
Generate Event Schema Markup
Use our free schema generator to create valid Event JSON-LD code in seconds.
Open Schema Generator