Skip to content

Event Schema Generator

Fill in an event's name, dates and location — physical venue or online link — and get a ready-to-paste Event JSON-LD script tag, with eventAttendanceMode set to the correct schema.org URL automatically based on which kind of location you picked, instead of a bare word most hand-written Event schema gets wrong.

  • Physical (Place) or online (VirtualLocation) events
  • Correct eventAttendanceMode value set automatically
  • Validates that end date is not before start date
  • Ready-to-paste <script> tag
  • Runs fully client-side

Generator

Built in your browser, never sent anywhere

    Fill in the required fields to generate Event schema.

    How to generate Event schema

    1. 01

      Fill in the basics

      Name, start date, and an image are all required.

    2. 02

      Pick physical or online

      A physical event needs a venue name; an online event needs the URL attendees will actually use.

    3. 03

      Copy the script tag

      Paste it into the page describing this specific event.

    Why eventAttendanceMode needs the full schema.org URL#

    eventAttendanceMode is not free text — Google expects one of three specific values, each the full https://schema.org/... form (OfflineEventAttendanceMode, OnlineEventAttendanceMode, or MixedEventAttendanceMode), not the bare word. Typing the short form is a common source of Event schema that looks correct but fails validation. This tool sets the correct full-URL value automatically based on whether you picked a physical or online location, so you never have to type it by hand.

    Place versus VirtualLocation — schema.org's two answers to "where"#

    A physical event's location is a Place — a named venue, ideally with an address. An online event's location is a VirtualLocation — the URL attendees actually use to join, not a physical address at all. These are structurally different objects with different required fields, which is why this tool asks a location-mode question up front rather than trying to guess from a single generic "location" field.

    Why the image is required, not optional#

    Like Article schema, Event schema without an image is not eligible for most of the rich-result surfaces Google actually offers for events — a listing with no visual is far less useful in a search result. This tool treats the image as required rather than a soft recommendation, for the same reason it does on Article Schema Generator.

    Frequently asked questions

    Why does it reject "Offline" and want the full URL instead?

    Google expects the full schema.org URL form (https://schema.org/OfflineEventAttendanceMode), not the bare word. This tool generates that full form automatically based on your physical/online choice.

    What is the difference between a physical and online event location?

    A physical event uses a Place object — a venue name and ideally an address. An online event uses a VirtualLocation object — the URL attendees join with, not a physical address at all. They are structurally different, which is why the tool asks up front which kind your event is.

    Is the image really required?

    Yes in this generator — an Event without an image is not eligible for most of Google's event rich results, so this tool treats it as required rather than optional.

    Is my event data sent anywhere?

    No. The JSON-LD is assembled entirely in your browser — nothing you enter is transmitted or stored.