What Is Event Schema?
Event schema is structured data markup that communicates event details to Google in a machine-readable format. When properly implemented, events can appear in Google's dedicated Event rich results — a carousel that shows event name, date, location, and ticket information directly in search results. Google Events is a high-visibility SERP feature that appears at the top of results for event-related queries.
The Google Events Rich Result Feature
Google aggregates events from websites using Event schema and displays them in an interactive carousel above standard search results. Users can filter by date and explore event details without visiting individual websites. To appear in this carousel, your Event markup must include at minimum: name, startDate, location, and eventAttendanceMode. Missing required fields will disqualify your event from rich result eligibility.
Online vs. In-Person vs. Hybrid Events
Google requires explicit declaration of how attendees can participate. Use OfflineEventAttendanceMode for in-person-only events with a physical location. Use OnlineEventAttendanceMode for virtual events — include the virtual event URL in the location field. Use MixedEventAttendanceMode for hybrid events that support both formats. This field became required after COVID changed event formats, and omitting it can disqualify your event from rich results.
Event Schema for Recurring Events
For events that repeat on a schedule (weekly webinars, monthly meetups), create separate Event schema for each instance rather than using a single markup block. Google treats each occurrence as a distinct event and can display all instances in the Events carousel. This multiplies your potential SERP appearances for recurring event series significantly.
Using Event Schema for Ticket Sales
The offers field enables price and ticket availability to display in rich results. Include the ticket URL, price, currency, and availability status. For free events, set the price to 0. Keeping availability updated (InStock vs. SoldOut) is important — showing SoldOut events in results without updating the schema creates a poor user experience that Google penalizes.