Enter the event name, dates and location to get Event JSON-LD that supports in-person, online and hybrid events. Add ticket types, performers and the organizer, mark changes like rescheduled or cancelled, and live checks follow Google’s event guidelines.
Last updated:
Event JSON-LD
Advertisement
Advertisement
How to use the Event Schema Generator
Enter the event name, description and image.
Set the start and end in local venue time and pick the venue’s UTC offset.
Choose the attendance mode and fill in the venue address, the online URL, or both.
Add ticket types with price and ticket URL (use 0 for free events), then the organizer and performers.
Copy the JSON-LD into the event page and update the status if plans change.
Event properties at a glance
Property
Google status
Format
name
Required
The event title, without dates or ticket text.
startDate
Required
ISO 8601 with offset: 2026-11-14T19:00:00-08:00
location
Required
Place with PostalAddress, VirtualLocation with url, or both
Offer with price, priceCurrency, availability, url, validFrom
organizer, performer
Recommended
Person, Organization, MusicGroup or PerformingGroup
image, description
Recommended
Absolute image URLs; a short description of the event
What to change when plans change
Situation
eventStatus
Dates
Happening as planned
EventScheduled
Unchanged
New date announced
EventRescheduled
New date in startDate, old one in previousStartDate
Delayed, new date unknown
EventPostponed
Keep the original startDate
Moved to a livestream
EventMovedOnline
Unchanged; set attendance mode to online and add a VirtualLocation
Called off
EventCancelled
Keep the original dates
Tips for event markup
Use the venue’s time zone. The UTC offset changes with daylight saving time, so check it for the event date.
One Event per occurrence. A show on three nights is three events.
Include a ticket or registration link, even for free events (price 0).
Remove or update past events so listings stay accurate.
Frequently asked questions
What does Google require for event rich results?
Google requires name, startDate and location. For an in-person event, location is a Place with a PostalAddress; for an online event it is a VirtualLocation with a URL. Recommended properties include endDate, eventStatus, eventAttendanceMode, image, description, offers, organizer and performer.
How do I mark up an online or hybrid event?
Set eventAttendanceMode to OnlineEventAttendanceMode and use a VirtualLocation with the URL of the stream or join page. For a hybrid event use MixedEventAttendanceMode and include both a Place and a VirtualLocation in location.
What should I do when an event is postponed, rescheduled or cancelled?
Update eventStatus. For a rescheduled event, put the new date in startDate and the old date in previousStartDate. For a postponed event with no new date yet, keep the original startDate. For a cancelled event, keep the original dates and set the status to EventCancelled instead of removing the page.
How should dates and time zones be entered?
Use ISO 8601 with a UTC offset, such as 2026-11-14T19:00:00-08:00. Enter the local time at the venue and the venue’s offset, which changes with daylight saving time. For online events use the organizer’s local time with its offset.
How do I mark up a free event?
Add an Offer with a price of 0 and the currency, plus the registration URL. This makes it clear the event is free while still giving people a link to sign up.
Can I mark up a festival or a series of shows?
Mark up each occurrence or performance with its own Event and its own date. A long festival can be a single Event with start and end dates covering the whole festival, but repeating shows should not be combined into one item.
Which events should not use Event markup?
Event markup is for things people can attend at a specific time, such as concerts, classes, webinars or meetups. Do not use it for coupons, sales, business hours or long-running promotions.
Are all the tools on FreeToolCabin tested for quality and accuracy?
Yes! Every tool on our site undergoes automated Q/A testing in real browser environments to ensure high precision, correct output, and zero errors. If you happen to spot a bug or have a suggestion, please contact us at [email protected] and our team will review it right away.