All stories
July 27, 2026·17 min read

How to Add Event Structured Data to Your Website: A Step-by-Step Guide

Learn how to add Event structured data to your website with JSON-LD, map the right Event properties, validate your markup, fix common errors, and create search-friendly event pages that help search engines understand dates, locations, attendance modes, organizers, and registration details.

Y
Yağız GürbüzFounder, MeetWho
Published July 27, 2026 · Updated August 11, 2026
TL;DR
  • Instead of requiring a search engine to infer every detail from the visible page, the markup creates explicit relationships between those details.
  • A well-formed Event entity answers several basic questions about the event.
  • Event schema markup is only one layer of an effective event page.
  • Event markup should represent an actual event.
  • A dedicated event page is the most natural place for an Event entity.
Read as markdown (.md) — built for AI assistants
Key questions
  • Instead of requiring a search engine to infer every detail from the visible page, the markup creates explicit relationships between those details. Schema.org provides the vocabulary used to describe the event, while JSON-LD provides a way to express that vocabulary in code.

  • A well-formed Event entity answers several basic questions about the event. Is the experience physical, online, or hybrid?

  • Event markup should represent an actual event. The clearest implementation is usually a dedicated URL whose primary purpose is to describe one specific conference, webinar, workshop, meetup, community gathering, networking event, or similar scheduled experience.

  • Not simply because the article discusses events. A tutorial such as this guide is an article about Event structured data, not an Event itself.

  • The implementation starts before any JSON-LD is written. First, identify the canonical page for the event and verify the information visitors can see.

  • Attendance formats change, venues move, and events can be postponed or cancelled. Event JSON-LD should change with the event so that the machine-readable version remains aligned with what visitors see.

How to Add Event Structured Data to Your Website: A Step-by-Step Guide

Title: "How to Add Event Structured Data to Your Website | MeetWho"

Description: "Learn how to add Event structured data to your website using JSON-LD, key properties, validation steps, common fixes, and practical SEO examples for events."

How to Add Event Structured Data to Your Website: A Step-by-Step Guide

How to Add Event Structured Data to Your Website; start by identifying the page that represents an individual event, then describe its dates, location or virtual venue, organizer, attendance format, registration details, and current status with accurate JSON-LD. The goal is to give search engines a machine-readable description that matches what visitors can actually see on the event page.

In practical terms, adding Event structured data means mapping visible event information to the Eventvocabulary defined by Schema.org and publishing that information in a supported structured-data format such as JSON-LD. Structured data can make an event easier for search systems to understand, but valid markup does not guarantee a particular search appearance or higher rankings.

What Is Event Structured Data?

Event structured data is machine-readable information that identifies a specific event and describes attributes such as its name, start and end dates, location, organizer, attendance mode, status, images, and registration or ticket information. Instead of requiring a search engine to infer every detail from the visible page, the markup creates explicit relationships between those details.

Schema.org provides the vocabulary used to describe the event, while JSON-LD provides a way to express that vocabulary in code. Google also publishes structured data guidance for events, including information relevant to its search features. Because search platforms can change their eligibility rules over time, implementation teams should use first-party documentation as the reference when deciding which properties are required or recommended for a particular search experience.

What Event Schema Tells Search Engines

A well-formed Event entity answers several basic questions about the event. What is happening? When does it start? Where can someone attend? Is the experience physical, online, or hybrid? Who is organizing it? Is registration available? Has the event been postponed or cancelled?

Those relationships are represented with properties such as name, startDate, endDate, location, organizer, eventAttendanceMode, eventStatus, and offers. Other properties can add useful context when they accurately represent information visible or otherwise appropriate to the event page.

The important principle is consistency. Structured data should describe the same event a visitor encounters on the page. If the page says a workshop begins at 10:00 a.m., the markup should not describe a different starting time. If an online meeting link is private and available only to approved registrants, structured data should not be used as a workaround for publishing that private access information.

Event Schema vs. Event Page SEO

Event schema markup is only one layer of an effective event page. It does not replace crawlable content, a descriptive page title, a useful event description, a canonical URL, internal links, indexability, or visible date and location information.

Think of the page itself as the primary source of information and structured data as an explicit machine-readable representation of that information. A useful event page should make sense to someone even if its JSON-LD is removed entirely.

That distinction also prevents a common SEO mistake: treating schema as a ranking shortcut. Structured data can help eligible search systems understand entities and support certain search experiences, but implementation should begin with accurate content and a technically accessible page rather than with markup alone. Google's broader structured data documentation provides additional context on how structured data fits into Search.

Which Pages Should Use Event Structured Data?

Event markup should represent an actual event. The clearest implementation is usually a dedicated URL whose primary purpose is to describe one specific conference, webinar, workshop, meetup, community gathering, networking event, or similar scheduled experience.

This page-to-entity relationship matters because structured data should clarify content rather than redefine it. Adding Event markup to pages simply because they contain the word "event" can create a mismatch between the schema entity and the page's real purpose.

Individual Event Pages

A dedicated event page is the most natural place for an Event entity. For example, a page for a specific founder networking workshop might visibly show its title, date, schedule, venue, organizer, registration instructions, and attendance format. Those details can then be represented in Event JSON-LD.

The same approach applies to online events. A webinar page can describe the scheduled event while using appropriate attendance-mode and virtual-location properties. The public markup should still respect access controls: a registration page may be public even when the actual online meeting URL is reserved for registered attendees.

Event Listing Pages vs. Individual Event Pages

An event listing page has a different purpose. A calendar containing twenty upcoming events is not necessarily one large Event entity; it is a collection or listing of separate events.

Where structured data is implemented across an event directory, each individual event should remain distinguishable and accurately represented. Dedicated event-detail URLs also provide clearer destinations for users who want information about one specific event rather than a general calendar.

Should a Blog Post Use Event Schema?

Not simply because the article discusses events.

A tutorial such as this guide is an article about Event structured data, not an Event itself. Its primary page-level schema should normally reflect that editorial purpose through an appropriate type such as BlogPosting or Article, while actual event pages can use Event markup.

This separation is important for both semantic clarity and maintainability. The schema type should describe what the page is, not merely a topic mentioned on the page.

How to Add Event Structured Data to Your Website

The implementation starts before any JSON-LD is written. First, identify the canonical page for the event and verify the information visitors can see. Then map those details to Schema.org properties and generate markup that accurately reflects the event.

A reliable workflow is:

  1. Collect the event information shown on the page.
  2. Map each detail to an appropriate Schema.org property.
  3. Generate JSON-LD using those real values.
  4. Add the JSON-LD to the relevant event page.
  5. Validate the markup before and after deployment.
  6. Keep it updated when event details change.

Step 1: Identify the Event Page and Visible Information

Start with the page that represents the individual event. Before touching the code, inventory the information that users rely on to decide whether and how to attend.

At minimum, review the event name, description, starting and ending time, timezone, physical or virtual location, attendance format, organizer, current status, image, registration destination, and any price or availability information that genuinely applies.

This inventory has an operational benefit as well. Event platforms often use the same core information across the public event page, registration workflow, attendee communications, check-in, and other parts of the attendee journey. Keeping that source data consistent reduces the risk of the website showing one value while structured data exposes another.

Step 2: Choose JSON-LD for the Markup

JSON-LD expresses structured data inside a <script type="application/ld+json"> block and can be maintained separately from the HTML elements used to present the page visually. That makes it practical for event websites where pages are generated from a CMS, database, application framework, or event-management system.

A basic implementation begins like this:

<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "Event"
}
</script>

This is only the starting structure, not a complete event implementation. The next step is to populate the Event entity with accurate dates, locations, organizer information, attendance mode, status, and registration details that match the real event page.

Step 3: Add the Core Event Properties

A useful Event entity should describe the details that make the event identifiable and actionable: what it is, when it happens, where it takes place, who organizes it, and how someone can attend. The exact properties needed for a particular search feature can change, so Google's current Event structured data documentation should remain the publication-time reference.

The table below provides a practical mapping for common Event properties.

PropertyWhat it representsExampleWhen to use
nameEvent titleStartup Networking WorkshopEvery event
descriptionConcise event descriptionA workshop for founders and operators...When a meaningful description is available
startDateStart date and time2026-10-15T09:00:00+01:00Scheduled events
endDateEnd date and time2026-10-15T17:00:00+01:00When the end time is known
locationPhysical or virtual locationPlace or VirtualLocationBased on attendance format
eventAttendanceModeOnline, offline, or mixed attendanceOfflineEventAttendanceModeWhen the format is known
eventStatusCurrent event statusEventScheduledTo describe scheduled, postponed, rescheduled, or cancelled events
imageEvent imageEvent image URLWhen an appropriate event image exists
organizerOrganizing person or organizationOrganizationWhen the organizer is known
offersRegistration or ticket informationOfferWhen registration, pricing, or availability is represented

Event Name and Description

The name property should contain the actual event name rather than a keyword-heavy SEO variation that visitors never see. The description should summarize the event accurately and should not introduce speakers, benefits, prices, or access conditions that are absent from the page.

For example, if the visible title is “Startup Networking Workshop,” the structured data should use that same identity. Structured data for events works best when it reinforces the page rather than creating an alternative version of it.

Start Date, End Date, and Time Zone

Use startDate and endDate to identify when the event takes place. Date-time values should be unambiguous and should include the relevant timezone offset when a specific time is provided.

For example:

2026-10-15T09:00:00+01:00

A timezone is especially important for events promoted across regions. A user in another country should not have to guess whether “9:00” refers to London, New York, Istanbul, or another location.

Physical Event Location

For an in-person event, location can use a Place entity containing venue information and a PostalAddress.

"location": {
"@type": "Place",
"name": "Example Conference Center",
"address": {
"@type": "PostalAddress",
"streetAddress": "123 Example Street",
"addressLocality": "London",
"postalCode": "EC1A 1AA",
"addressCountry": "GB"
}
}

The location should match the venue information shown to visitors. If the venue changes, update both the page and the structured data rather than leaving outdated markup behind.

Location Accuracy Check

Before publishing, ask one simple question: can a visitor understand where the event takes place from the visible page, and does the JSON-LD describe that same location?

Online Event Location

Online events can use VirtualLocation together with an appropriate eventAttendanceMode. The URL used in public structured data should be suitable for public discovery.

Do not expose a private Zoom, Meet, or other attendee-only access link merely to populate structured data. If an event platform restricts the live-event URL to registered participants, the public event or registration page can remain the discoverable destination while the private access link stays protected.

Organizer Information

The organizer property should identify the real person or organization responsible for the event.

"organizer": {
"@type": "Organization",
"name": "Example Organizer",
"url": "https://example.com"
}

If an organizer uses MeetWho to create an event page or manage registrations, that does not automatically make MeetWho the organizer. The structured data should identify the actual organizing entity.

Step 4: Describe Registration, Tickets, or Free Admission

When an event has registration or ticket information, offers can describe relevant details such as the registration URL, price, currency, and availability. Values should always reflect the real terms available to users.

For a free event, an illustrative offer could look like this:

"offers": {
"@type": "Offer",
"url": "https://example.com/events/startup-networking-workshop",
"price": "0",
"priceCurrency": "GBP",
"availability": "https://schema.org/InStock"
}

For paid events, replace the example values with the real ticket price and currency. Never add a fictitious price, availability status, or discount to make the markup appear more complete.

Step 5: Add Event Status and Attendance Mode

Two properties become especially important when an event changes or supports different ways of attending: eventStatus and eventAttendanceMode.

eventStatus can distinguish a scheduled event from one that has been postponed, rescheduled, or cancelled. eventAttendanceMode can describe whether attendance is offline, online, or mixed. These properties help preserve accurate context when circumstances change.

A scheduled in-person event might include:

"eventStatus": "https://schema.org/EventScheduled",
"eventAttendanceMode": "https://schema.org/OfflineEventAttendanceMode"

Updating these values is preferable to leaving an event marked as scheduled after it has been cancelled or moved.

Step 6: Publish the Complete JSON-LD on the Event Page

Once the event details are mapped, combine them into one valid JSON-LD object and place it on the relevant event page.

<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "Event",
"name": "Startup Networking Workshop",
"description": "A professional workshop for founders and operators focused on practical networking and peer connections.",
"startDate": "2026-10-15T09:00:00+01:00",
"endDate": "2026-10-15T17:00:00+01:00",
"eventStatus": "https://schema.org/EventScheduled",
"eventAttendanceMode": "https://schema.org/OfflineEventAttendanceMode",
"image": [
"https://example.com/images/startup-networking-workshop.jpg"
],
"location": {
"@type": "Place",
"name": "Example Conference Center",
"address": {
"@type": "PostalAddress",
"streetAddress": "123 Example Street",
"addressLocality": "London",
"postalCode": "EC1A 1AA",
"addressCountry": "GB"
}
},
"organizer": {
"@type": "Organization",
"name": "Example Organizer",
"url": "https://example.com"
},
"offers": {
"@type": "Offer",
"url": "https://example.com/events/startup-networking-workshop",
"price": "0",
"priceCurrency": "GBP",
"availability": "https://schema.org/InStock"
}
}
</script>

All values above are illustrative. Replace them with information from the real event rather than copying the example unchanged.

How to Handle Online, Hybrid, Postponed, and Cancelled Events

Event pages are not static records. Attendance formats change, venues move, and events can be postponed or cancelled. Event JSON-LD should change with the event so that the machine-readable version remains aligned with what visitors see.

For online and hybrid events, location and attendance-mode properties become especially important. For changed events, status and date information should be reviewed together rather than updating only one field.

Online Events

An online event can use OnlineEventAttendanceMode with VirtualLocation.

{
"@context": "https://schema.org",
"@type": "Event",
"name": "Founder Networking Webinar",
"startDate": "2026-10-22T18:00:00Z",
"endDate": "2026-10-22T19:30:00Z",
"eventStatus": "https://schema.org/EventScheduled",
"eventAttendanceMode": "https://schema.org/OnlineEventAttendanceMode",
"location": {
"@type": "VirtualLocation",
"url": "https://example.com/events/founder-networking-webinar"
}
}

This approach describes the online nature of the event without requiring a private attendee-only meeting link to be exposed publicly.

Hybrid Events

A hybrid event combines physical and online participation. Its structured data should accurately represent both components using the Schema.org structures supported for the implementation.

Because search-engine requirements can evolve, confirm the current Google guidance before publishing a hybrid-event example in production. The objective is not to force every available property into the markup, but to describe the real attendance experience without ambiguity.

Postponed, Rescheduled, and Cancelled Events

If an event is postponed or cancelled, do not leave its structured data unchanged. Update eventStatus and review all affected dates, registration information, and visible event-page messaging.

For rescheduled events, Schema.org also provides properties such as previousStartDate that may help preserve context when appropriately used. Verify the current search-engine guidance before relying on such properties for a particular search feature.

Keeping the event page available with accurate status information can also be more useful than immediately deleting it: visitors who saved the original URL can still understand what happened and what, if anything, they need to do next.

How to Test Event Structured Data

After publishing Event markup, validate both the syntax and the way search engines interpret it. A JSON-LD block can be syntactically valid while still containing incomplete, inconsistent, or unsuitable information for a specific search feature.

Start with Google's Rich Results Test to check whether Google can detect supported structured data and identify relevant errors or warnings. Then use the Schema.org Validator to review the markup against the broader Schema.org vocabulary.

Test Eligibility With Google's Rich Results Test

Enter the live event-page URL or paste the code into the Rich Results Test. Review detected entities, errors, warnings, and properties before deployment.

A successful test does not guarantee a rich result. It means the markup has passed the checks available in the tool for supported search features. Search appearance remains subject to Google's systems, policies, indexing, page quality, and current feature availability.

Validate Schema.org Vocabulary

The Schema.org Validator helps identify whether types and properties are being used consistently with the vocabulary. This is useful when implementing entities such as Event, Place, VirtualLocation, Organization, and Offer.

Google validation and Schema.org validation answer related but different questions: Schema.org defines the vocabulary, while Google's documentation determines how supported structured data may be used within Google Search.

Monitor Published Event Pages

After deployment, use Google Search Console to monitor indexing and inspect important event URLs. Where structured-data reports are available, review detected problems and investigate changes after templates or event information are updated.

If a markup issue appears, check the entire page rather than editing the JSON-LD in isolation. Incorrect canonicals, blocked pages, outdated visible details, or templating errors can affect an implementation even when the schema itself looks valid.

Common Event Schema Mistakes and How to Fix Them

Most Event schema problems come from mismatches between the actual event, the visible page, and the machine-readable representation. Treat structured data as part of the event publishing workflow rather than code that is added once and forgotten.

ProblemWhy it mattersRecommended fix
Event markup is added to a generic blog postThe entity does not match the page purposeUse Article or BlogPosting for editorial guides
Dates differ from the visible pageUsers and machines receive conflicting informationUpdate the page and markup from the same event data
Timezone is ambiguousEvent time can be interpreted incorrectlyUse an appropriate ISO 8601 date-time value
Venue information is outdatedThe event location becomes inaccurateUpdate the Place and visible venue together
A private virtual URL is exposedRestricted access may become publicly discoverableUse an appropriate public event or registration destination
A cancelled event remains EventScheduledThe markup misrepresents current statusUpdate eventStatus
Fake price or availability is addedRegistration conditions become misleadingUse only real offer information
Passing validation is treated as a ranking guaranteeIt overstates what structured data doesSeparate technical validity from search visibility

Before publishing, check that the event name, dates, timezone, location, attendance mode, organizer, registration details, status, and visible page content all agree.

From Search Discovery to Event Registration and Networking

Structured data can help search systems understand an event, but discovery is only one part of the attendee journey. Once someone reaches the event page, they may still need to register, receive updates, check in, and decide who would be valuable to meet.

MeetWho brings these operational steps into one event platform. Organizers can create an event page for free, collect registrations, approve applications, manage a waitlist, send announcements and reminders, restrict online-event links to registered attendees, use QR check-in, and configure networking privacy settings.

Networking is handled separately from public event discovery. Rather than exposing a general attendee directory, MeetWho can analyze information shared by participants who have permission to participate in networking, including what they are working on, what they are looking for, who they want to meet, and where they may be able to help others. It then ranks relevant connections and explains why the people may benefit from meeting.

If you are building the event behind the markup, you can create an event for free with MeetWho and manage the journey from registration to meaningful attendee connections.

Event Structured Data Publishing Checklist

Before an event page goes live, confirm that:

  • The page represents a genuine, specific event.
  • The structured data matches visible event information.
  • startDate and endDate are accurate.
  • Timezone information is unambiguous where relevant.
  • Physical events use accurate venue information.
  • Online events do not expose private access links.
  • eventAttendanceMode reflects the actual format.
  • eventStatus reflects the current event state.
  • Organizer information identifies the real organizer.
  • Offers contain only genuine registration or ticket details.
  • JSON-LD has been tested for syntax and structured-data issues.
  • The page is indexable and uses the intended canonical URL.
  • Changes to the event are reflected in both the page and the markup.

Frequently Asked Questions About Event Structured Data

What is Event structured data?

Event structured data is Schema.org markup that describes a specific event in machine-readable form. It can identify details such as the event name, dates, location, attendance mode, organizer, status, images, and registration information.

How do I add Event structured data to my website?

Collect the event information visible on the page, map those details to appropriate Schema.org Event properties, generate JSON-LD, add it to the event page, and validate the implementation. Update the markup whenever material event details change.

Does Event schema improve Google rankings?

Adding Event schema should not be treated as a direct ranking tactic. Structured data helps search systems understand page entities and can support eligible search experiences, but valid markup does not guarantee higher rankings or a particular rich result.

Is JSON-LD the best format for Event schema?

JSON-LD is often practical because it keeps structured data separate from presentation HTML and can be generated from the same event data used by a CMS or application. Google supports structured-data formats according to its current documentation, so implementation requirements should be checked before publication.

Can I use Event schema for online events?

Yes. A genuine online event can be represented with Event structured data using information such as OnlineEventAttendanceMode and VirtualLocation. Public markup should not expose a private meeting link that is intended only for registered attendees.

Should I add Event schema to an event-listing page?

Do not describe an entire calendar of unrelated events as though it were one event. Each event should remain a distinct entity, with dedicated event-detail pages providing the clearest implementation when available.

How do I test Event structured data?

Use Google's Rich Results Test to check supported search-feature markup and the Schema.org Validator to review the vocabulary. After publication, monitor important URLs and relevant reports in Google Search Console.

Should this Event schema guide itself use Event markup?

No. This page is an instructional article about Event schema, not an event. Its primary page-level structured data should normally use an editorial type such as BlogPosting or Article. Reserve Event markup for pages that actually represent events.

Make Event Data Accurate From Discovery to Attendance

Adding Event structured data is not about filling a JSON-LD template with as many properties as possible. It is about accurately translating a real event page into machine-readable information that stays consistent as dates, venues, registration conditions, attendance formats, or event status change.

Start with trustworthy event information, map it to the correct Schema.org entities, validate the implementation, and keep the markup connected to the same operational data your attendees rely on. For current Google-specific requirements, review the official Event structured data documentation alongside the Eventdefinition on Schema.org.

And once discovery turns into attendance, the event experience still matters. MeetWho helps organizers create events, manage participants, and help consenting attendees focus on the people most worth meeting rather than simply collecting more contacts.

Create your event on**MeetWho**and help attendees know who to meet.

More stories

Browse all
August 21, 2026·17 min

How Do You Segment an Event Audience? A Practical Guide for Event Organizers

Learn how to segment an event audience using attendee goals, registration data, engagement signals, and networking intent. This practical framework helps event organizers create relevant audience segments, personalize communication, improve attendee experiences, and connect the right people before, during, and after an event.

August 18, 2026·15 min

Attendance Predictor: How Many Registrations You Need for Your Event

Estimate how many registrations you need to reach your attendance goal. This practical event attendance calculator framework shows how to account for expected show-up rates, no-shows, capacity, waitlists, and different event formats—then turn the forecast into a better registration and attendee-management plan.

August 18, 2026·19 min

How We Measure Whether an Event Worked: An Event Success Measurement Framework

A practical framework for deciding whether an event worked, from registration and attendance to engagement, networking quality, business outcomes, and follow-up. Learn which KPIs to choose, how to calculate them, what evidence to collect, and how to build an event scorecard without confusing activity with impact.

August 17, 2026·17 min

The Complete Guide to Event Promotion: Strategies, Channels & Checklist

A practical event promotion guide covering strategy, timelines, channels, content, partnerships, registration conversion, attendee engagement, measurement, and post-event follow-up. Learn how to build an event marketing plan that attracts the right audience, drives registrations, and creates more valuable event experiences.

August 13, 2026·20 min

What Is Audience Enrichment for Events? A Practical Guide to Better Event Networking

Audience enrichment turns basic event registration data into useful attendee context that can improve segmentation, personalization, networking, and follow-up. This guide explains what audience enrichment means for events, how it works, what data should be used responsibly, and how organizers can turn richer attendee understanding into more meaningful connections.

August 11, 2026·15 min

What Metrics Should Event Organizers Track? A Complete Guide

Discover the most important event metrics to track, from registrations and attendance to engagement, networking success, and post-event outcomes. Learn how organizers can measure event performance and improve future experiences.

August 11, 2026·16 min

How Many Registrations Do You Need to Fill 100 Seats? Registration-to-Attendance Ratio Guide

How many registrations does it take to fill 100 seats? Use the registration-to-attendance formula, scenario table, and no-show planning method to estimate sign-ups for an event, then improve the forecast with your own attendance data.

August 10, 2026·17 min

What Percentage of Event Registrations Actually Attend? Registration to Attendance Rate Explained

Learn what percentage of event registrations actually attend, how to calculate registration to attendance rate, benchmark factors, and practical ways to improve event turnout with smarter attendee management.