Whether you’re organizing conferences, concerts, workshops, or webinars, Event schema markup helps your events appear prominently in Google search. Potential attendees can see dates, venues, and ticket information directly in search results.
This guide shows you how to implement Event schema for maximum visibility.
What is Event Schema?
Event schema is structured data that describes events happening at specific times and places. It tells search engines about:
- Event name and description
- Date and time
- Location (physical or virtual)
- Ticket availability and pricing
- Organizer and performer information
- Event status (scheduled, cancelled, postponed)
Where Event Rich Results Appear
Events Carousel
A horizontal carousel of events for event-related searches.
Search Results
Enhanced listings with event dates and locations.
Google Maps
Events associated with venues appear on Maps.
Google Discover
Featured events in users’ Discover feeds.
Required Properties
Google requires:
- name - Event title
- startDate - When the event begins
- location - Where the event takes place (physical or virtual)
For virtual events, use eventAttendanceMode and location with VirtualLocation.
Recommended Properties
For comprehensive event markup:
- endDate - When the event ends
- description - Event details
- image - Event promotional images
- offers - Ticket information
- performer - Who’s performing
- organizer - Who’s organizing
- eventStatus - Scheduled, cancelled, etc.
Physical Event Example
{
"@context": "https://schema.org",
"@type": "Event",
"name": "Tech Conference 2025",
"description": "The largest technology conference in the region featuring keynotes from industry leaders, hands-on workshops, and networking opportunities.",
"image": [
"https://example.com/photos/conference-1x1.jpg",
"https://example.com/photos/conference-4x3.jpg",
"https://example.com/photos/conference-16x9.jpg"
],
"startDate": "2025-06-15T09:00:00-07:00",
"endDate": "2025-06-17T18:00:00-07:00",
"eventStatus": "https://schema.org/EventScheduled",
"eventAttendanceMode": "https://schema.org/OfflineEventAttendanceMode",
"location": {
"@type": "Place",
"name": "Convention Center",
"address": {
"@type": "PostalAddress",
"streetAddress": "500 Convention Way",
"addressLocality": "San Francisco",
"addressRegion": "CA",
"postalCode": "94102",
"addressCountry": "US"
}
},
"organizer": {
"@type": "Organization",
"name": "Tech Events Inc",
"url": "https://techevents.com"
},
"offers": {
"@type": "Offer",
"name": "General Admission",
"price": 299,
"priceCurrency": "USD",
"availability": "https://schema.org/InStock",
"validFrom": "2025-01-01T00:00:00-07:00",
"url": "https://example.com/tickets"
}
}
Virtual Event Example
{
"@context": "https://schema.org",
"@type": "Event",
"name": "Digital Marketing Masterclass Webinar",
"description": "Learn advanced digital marketing strategies in this 2-hour live webinar with Q&A.",
"image": "https://example.com/webinar-thumb.jpg",
"startDate": "2025-02-20T14:00:00-05:00",
"endDate": "2025-02-20T16:00:00-05:00",
"eventStatus": "https://schema.org/EventScheduled",
"eventAttendanceMode": "https://schema.org/OnlineEventAttendanceMode",
"location": {
"@type": "VirtualLocation",
"url": "https://example.com/webinar-room"
},
"organizer": {
"@type": "Person",
"name": "Marketing Expert",
"url": "https://example.com/about"
},
"performer": {
"@type": "Person",
"name": "Jane Marketing"
},
"offers": {
"@type": "Offer",
"price": 0,
"priceCurrency": "USD",
"availability": "https://schema.org/InStock",
"url": "https://example.com/register"
}
}
Hybrid Event Example
For events with both in-person and virtual attendance:
{
"@context": "https://schema.org",
"@type": "Event",
"name": "Annual Developer Summit",
"startDate": "2025-04-10T09:00:00-07:00",
"eventStatus": "https://schema.org/EventScheduled",
"eventAttendanceMode": "https://schema.org/MixedEventAttendanceMode",
"location": [
{
"@type": "Place",
"name": "Tech Center Auditorium",
"address": {
"@type": "PostalAddress",
"streetAddress": "123 Tech Blvd",
"addressLocality": "Austin",
"addressRegion": "TX"
}
},
{
"@type": "VirtualLocation",
"url": "https://example.com/livestream"
}
]
}
Event Status Options
Communicate event status clearly:
"eventStatus": "https://schema.org/EventScheduled"
Available statuses:
EventScheduled- Happening as plannedEventCancelled- Event cancelledEventPostponed- Postponed, new date TBDEventRescheduled- Moved to new dateEventMovedOnline- Changed to virtual
For rescheduled events:
{
"eventStatus": "https://schema.org/EventRescheduled",
"previousStartDate": "2025-03-15",
"startDate": "2025-04-20"
}
Ticket Options
Single Ticket Type
"offers": {
"@type": "Offer",
"price": 50,
"priceCurrency": "USD",
"availability": "https://schema.org/InStock",
"url": "https://example.com/tickets"
}
Multiple Ticket Types
"offers": [
{
"@type": "Offer",
"name": "Early Bird",
"price": 149,
"priceCurrency": "USD",
"availability": "https://schema.org/SoldOut",
"validFrom": "2025-01-01",
"validThrough": "2025-02-28"
},
{
"@type": "Offer",
"name": "General Admission",
"price": 199,
"priceCurrency": "USD",
"availability": "https://schema.org/InStock",
"url": "https://example.com/tickets"
},
{
"@type": "Offer",
"name": "VIP Package",
"price": 499,
"priceCurrency": "USD",
"availability": "https://schema.org/LimitedAvailability",
"url": "https://example.com/vip-tickets"
}
]
Free Event
"offers": {
"@type": "Offer",
"price": 0,
"priceCurrency": "USD",
"availability": "https://schema.org/InStock"
}
Performers and Organizers
Music/Entertainment Events
"performer": [
{
"@type": "MusicGroup",
"name": "The Rock Band"
},
{
"@type": "Person",
"name": "Solo Artist"
}
]
Conference Speakers
"performer": [
{
"@type": "Person",
"name": "Dr. Jane Expert",
"jobTitle": "CEO, Tech Company"
}
]
Organizer
"organizer": {
"@type": "Organization",
"name": "Event Planners Inc",
"url": "https://eventplanners.com",
"logo": "https://eventplanners.com/logo.png"
}
Recurring Events
For events that repeat:
{
"@context": "https://schema.org",
"@type": "EventSeries",
"name": "Weekly Yoga Class",
"subEvent": [
{
"@type": "Event",
"name": "Weekly Yoga Class - January 15",
"startDate": "2025-01-15T18:00:00"
},
{
"@type": "Event",
"name": "Weekly Yoga Class - January 22",
"startDate": "2025-01-22T18:00:00"
}
]
}
Date and Time Format
Use ISO 8601 format with timezone:
"startDate": "2025-06-15T09:00:00-07:00"
Components:
- Date: 2025-06-15
- Time: T09:00:00
- Timezone: -07:00 (PDT)
For all-day events, just use the date:
"startDate": "2025-06-15"
Common Mistakes
1. Missing Location Details
Always include complete address for physical events.
2. Wrong Timezone
Ensure times include correct timezone offset.
3. Outdated Status
Update eventStatus when events are cancelled or rescheduled.
4. Missing Image
Events without images are less likely to appear in carousels.
5. Expired Events
Remove or update schema for past events.
Generate Your Event Schema
Use our free Event Schema Generator to create valid markup for your events.
Enter your:
- Event name and description
- Date, time, and timezone
- Location details
- Ticket information
- Organizer details
Get properly formatted JSON-LD ready to add to your event pages.
Measuring Success
Track these metrics:
Search Console
- Event-related impressions
- Click-through rate
- Rich result appearances
Analytics
- Event page traffic
- Ticket page visits
- Registration conversions
Event Metrics
- Ticket sales
- Registrations
- Attendance rate
Conclusion
Event schema is essential for event organizers who want visibility in Google search. With proper markup, potential attendees can see key details directly in search results, increasing the likelihood they’ll click through and register.
Keep your event information current, especially the status and ticket availability. Update immediately when events are cancelled or rescheduled.
Start with your upcoming events and implement schema on all event pages going forward.
Need help promoting your events? I can help you implement Event schema and optimize your event marketing strategy. Get in touch for a consultation.