Free SEO audit for new clients — claim yours
Home/Blog/Technical SEO/Event Schema: Get Your Events Into Google Search
Technical SEO

Event Schema: Get Your Events Into Google Search

Event Schema: Get Your Events Into Google Search
Table of contents
  1. Key Takeaways
  2. What Event Schema Does
  3. What Is (and Isn't) Eligible
  4. Required and Recommended Properties
  5. Example: Event JSON-LD
  6. Handling Cancellations and Changes
  7. Step-by-Step: Getting Events Into Google
  8. Who Should Own the Markup?
  9. Common Mistakes
  10. Events, Local SEO and Google Business Profile
  11. Fill More Seats From Search
  12. References
  13. Related Guides

When people search for "comedy nights near me", "jazz festival this weekend" or a venue name plus "events", Google can show an interactive event listing with dates, venues and ticket links pulled straight from the web. Getting your events into that experience is one of the more practical uses of structured data for venues, promoters, theatres, attractions and community organisations.

The rules have tightened, though. In 2025 Google removed online-event guidance from its documentation, and it now says events must take place at a physical location. Plenty of older tutorials still tell you to mark up webinars with VirtualLocation; following them today wastes effort.

This guide covers what's eligible, the required and recommended properties, a working JSON-LD example, how to handle cancellations and postponements, and the mistakes that keep events out of Google in 2026.

Key Takeaways

  • Event structured data can make your events eligible for Google's event experience in Search and other Google products such as Maps.
  • Required properties are name, startDate and location (with name and address).
  • Events must be held at a physical location; purely virtual events are not supported.
  • Use eventStatus and previousStartDate to communicate cancellations, postponements and reschedules instead of deleting pages.
  • Don't mark up coupons, business hours, trip packages or sales promotions as events.

What Event Schema Does

Google's documentation says the event experience helps people discover and attend events through Search and other Google products, with eligible events able to show details such as a description and logo. The page lists the regions where the feature is available, including Australia, Brazil, Canada, Germany, India, Latin America, Spain, the United Kingdom and the United States; check the current list before investing if you're elsewhere.

Google offers three routes in: list your events on a third-party ticketing or event platform that already provides markup, use a CMS plugin, or add structured data directly to your pages. If you sell through a major ticketing platform, it may already be handling markup for you, but adding it to your own event pages gives your site a chance to be the source shown.

What Is (and Isn't) Eligible

Google's updated guidelines are explicit about physical attendance:

“Virtual experiences that have no real-world component aren't supported.”

— Google Search Central, Event structured data

Search Engine Land reported in June 2025 that Google removed the section on online event properties, so if your event marketing relies on webinars, see our webinar marketing guide for other ways to promote them.

Eligible examplesNot eligible
Concerts, gigs and festivals at a venueOnline-only webinars and livestreams
Theatre shows, comedy nights, exhibitionsCoupons or vouchers (e.g. "5% off your first order")
Workshops and classes held in person and open to the publicBusiness opening hours
Sports events open to spectatorsTrip packages and other products marked as events
Conferences and trade shows with public registrationShort-term sales prompts such as "buy tickets now"
Hybrid events with a physical venueMembership- or invitation-only events; school-premises events for minors
PropertyStatusNotes
nameRequiredThe event's title, not the venue or a sales message
startDateRequiredISO 8601 date-time with time zone offset
location (Place) with name and addressRequiredPhysical venue and full postal address
endDateRecommendedEspecially for multi-day events
descriptionRecommendedWhat attendees can expect
imageRecommendedHigh-quality images of the event or performers
eventStatusRecommendedScheduled, Rescheduled, Postponed or Cancelled
previousStartDateRecommendedOriginal date when rescheduled
offers (price, priceCurrency, availability, validFrom, url)RecommendedTicket details and booking link
organizer (name, url)RecommendedCan reference your Organization
performer (name)RecommendedBands, speakers, teams

Example: Event JSON-LD

<script type="application/ld+json">
{
  "@context": "https://schema.org",
  "@type": "Event",
  "name": "Autumn Jazz Night",
  "startDate": "2026-11-21T19:30:00+00:00",
  "endDate": "2026-11-21T22:30:00+00:00",
  "eventStatus": "https://schema.org/EventScheduled",
  "location": {
    "@type": "Place",
    "name": "Example Hall",
    "address": {
      "@type": "PostalAddress",
      "streetAddress": "10 Example Road",
      "addressLocality": "Manchester",
      "postalCode": "M1 1AA",
      "addressCountry": "GB"
    }
  },
  "image": ["https://www.example.com/img/jazz-16x9.jpg"],
  "description": "An evening of live jazz with three local trios.",
  "offers": {
    "@type": "Offer",
    "url": "https://www.example.com/tickets/autumn-jazz",
    "price": "18.00",
    "priceCurrency": "GBP",
    "availability": "https://schema.org/InStock",
    "validFrom": "2026-09-01T09:00:00+00:00"
  },
  "performer": {"@type": "PerformingGroup", "name": "The Example Trio"},
  "organizer": {"@type": "Organization", "name": "Example Hall", "url": "https://www.example.com/"}
}
</script>

Use one Event object per event occurrence. For a recurring show, each date normally gets its own entry with its own startDate.

Handling Cancellations and Changes

Google's documentation defines four eventStatus values. Updating the status keeps searchers informed and avoids disappointed attendees.

  • EventScheduled: the default when the field is omitted.
  • EventRescheduled: the event has moved to a later date; update startDate and add previousStartDate.
  • EventPostponed: delayed with no new date yet; keep the original startDate until you know.
  • EventCancelled: the event won't happen; keep the page live with the cancelled status rather than deleting it straight away.

Step-by-Step: Getting Events Into Google

  1. Give each event its own URL. A dedicated page with the title, date, venue, description and ticket link visible.
  2. Add JSON-LD. Use a plugin for your CMS or ticketing system, or add it to your event template so every event is covered automatically.
  3. Use full time zone offsets. Dates without offsets can show at the wrong time.
  4. Test with the Rich Results Test. Fix errors; review warnings for recommended fields.
  5. Submit and monitor. Include event URLs in your sitemap and check the relevant structured data report in Search Console where available.
  6. Keep data fresh. Update status, prices and availability as they change.
  7. Manage past events. Archive or consolidate old event pages so they don't pile up as low-value URLs; see index bloat.

Who Should Own the Markup?

Many events are listed in several places at once: the venue's site, the promoter's site, a ticketing platform and local listings. Google may pick any of these as the source it shows. That's not necessarily a problem, as long as the details are consistent everywhere. Conflicting dates, prices or venue names across sources are a common reason events show incorrect information.

Agree internally who publishes the canonical event page and make sure every other listing links back to it. If you're the venue, a clean events calendar on your own site with complete markup gives you the best chance of being chosen and keeps the booking journey on your domain.

Common Mistakes

  • Marking up online-only events. Google no longer supports them.
  • Listing a whole season as one event with a start date months before the end date, instead of individual performances.
  • Using the event name for promotions such as "50% off tickets today".
  • Markup that doesn't match the page. Google's general guidelines say structured data must represent the visible content.
  • Deleting cancelled events immediately. Mark them as cancelled first so searchers see the update.
  • Missing addresses. A venue name alone isn't enough; include the full postal address.

Events, Local SEO and Google Business Profile

Event schema works best alongside your wider local presence. Venues should keep LocalBusiness markup on their location pages (see local schema markup) and can promote upcoming events through Google Business Profile posts. For strategy beyond search, our event marketing guide covers promotion channels.

If you also publish news coverage or recaps of your events, mark those pages up with Article schema rather than Event, and if you're hiring event staff, use JobPosting schema on those listings.

{FAQ}

Event markup is one of the few structured data types that turns directly into ticket sales when done well. If you run regular events and want them showing up reliably, our team can audit your templates and implement markup as part of our local SEO services. Request a quote and tell us about your events.

References

  1. Event structured data – Google Search Central
  2. General structured data guidelines – Google Search Central
  3. Google updates event and recipe structured data – Search Engine Land
  4. Event – Schema.org
Rohit Choudhary
Written byRohit ChoudharyCo-Founder, My SEO Experts

Rohit Choudhary is the co-founder of My SEO Experts and has more than 14 years of hands-on experience in SEO, paid advertising and digital marketing. Since starting out in 2011 he has helped hundreds of businesses grow through practical, data-driven search strategies, and he also serves as a consulting Digital Marketing Director for several US-based companies.

Keep reading

Related articles

How to Set Up 301 Redirects in .htaccess
Technical SEO

How to Set Up 301 Redirects in .htaccess

Copy-ready .htaccess rules for the 301 redirects you actually need, explained line by line, with a safe process for testing them before Google sees them.

400 Bad Request Error: Causes and How to Fix It
Technical SEO

400 Bad Request Error: Causes and How to Fix It

A 400 Bad Request error means the server refused a request it considered malformed. Here is how to find the cause, fix it as a visitor or site owner, and protect your SEO.

Ready to grow your business online?

Get a free, no-obligation proposal tailored to your goals and budget.

CallFree Quote