Event Schema · Unhead

[Unhead Home](https://unhead.unjs.io/ "Home")

- [Docs](https://unhead.unjs.io/docs/typescript/head/guides/get-started/overview)
- [Tools](https://unhead.unjs.io/tools)
- [Learn](https://unhead.unjs.io/learn/guides/what-is-capo)

[Releases](https://unhead.unjs.io/releases)

Search…```k`` /`

[Unhead on GitHub](https://github.com/unjs/unhead)

[User Guides](https://unhead.unjs.io/docs/typescript/head/guides/get-started/overview)

[API](https://unhead.unjs.io/docs/typescript/head/api/get-started/overview)

[Releases](https://unhead.unjs.io/docs/typescript/releases/v3)

TypeScript

- [Switch to TypeScript](https://unhead.unjs.io/docs/typescript/schema-org/api/schema/event)
- [Switch to Vue](https://unhead.unjs.io/docs/vue/schema-org/api/schema/event)
- [Switch to React](https://unhead.unjs.io/docs/react/schema-org/api/schema/event)
- [Switch to Svelte](https://unhead.unjs.io/docs/svelte/schema-org/api/schema/event)
- [Switch to Solid.js](https://unhead.unjs.io/docs/solid-js/schema-org/api/schema/event)
- [Switch to Angular](https://unhead.unjs.io/docs/angular/schema-org/api/schema/event)
- [Switch to Nuxt](https://unhead.unjs.io/docs/nuxt/schema-org/api/schema/event)

v3 (stable)

Schema.org

- [Discord Support](https://discord.com/invite/275MBUBvgP)
- [TypeScript Playground](https://stackblitz.com/edit/github-hhxywsb5)

- Composables
  - [`useSchemaOrg()`](https://unhead.unjs.io/docs/typescript/schema-org/api/composables/use-schema-org)
- Nodes
  - [Article](https://unhead.unjs.io/docs/typescript/schema-org/api/schema/article)
  - [Book Schema](https://unhead.unjs.io/docs/typescript/schema-org/api/schema/book)
  - [Breadcrumb Schema](https://unhead.unjs.io/docs/typescript/schema-org/api/schema/breadcrumb)
  - [Comment Schema](https://unhead.unjs.io/docs/typescript/schema-org/api/schema/comment)
  - [Course Schema](https://unhead.unjs.io/docs/typescript/schema-org/api/schema/course)
  - [Dataset Schema](https://unhead.unjs.io/docs/typescript/schema-org/api/schema/dataset)
  - [Event Schema](https://unhead.unjs.io/docs/typescript/schema-org/api/schema/event)
  - [Food Establishment Schema](https://unhead.unjs.io/docs/typescript/schema-org/api/schema/food-establishment)
  - [HowTo](https://unhead.unjs.io/docs/typescript/schema-org/api/schema/how-to)
  - [Image Schema](https://unhead.unjs.io/docs/typescript/schema-org/api/schema/image)
  - [ItemList](https://unhead.unjs.io/docs/typescript/schema-org/api/schema/item-list)
  - [JobPosting](https://unhead.unjs.io/docs/typescript/schema-org/api/schema/job-posting)
  - [LocalBusiness](https://unhead.unjs.io/docs/typescript/schema-org/api/schema/local-business)
  - [Movie Schema](https://unhead.unjs.io/docs/typescript/schema-org/api/schema/movie)
  - [Music Album Schema](https://unhead.unjs.io/docs/typescript/schema-org/api/schema/music-album)
  - [Music Group Schema](https://unhead.unjs.io/docs/typescript/schema-org/api/schema/music-group)
  - [Music Playlist Schema](https://unhead.unjs.io/docs/typescript/schema-org/api/schema/music-playlist)
  - [Music Recording Schema](https://unhead.unjs.io/docs/typescript/schema-org/api/schema/music-recording)
  - [Organization](https://unhead.unjs.io/docs/typescript/schema-org/api/schema/organization)
  - [Person Schema](https://unhead.unjs.io/docs/typescript/schema-org/api/schema/person)
  - [Podcast Episode Schema](https://unhead.unjs.io/docs/typescript/schema-org/api/schema/podcast-episode)
  - [Podcast Season Schema](https://unhead.unjs.io/docs/typescript/schema-org/api/schema/podcast-season)
  - [Podcast Series Schema](https://unhead.unjs.io/docs/typescript/schema-org/api/schema/podcast-series)
  - [Product Schema](https://unhead.unjs.io/docs/typescript/schema-org/api/schema/product)
  - [Question Schema](https://unhead.unjs.io/docs/typescript/schema-org/api/schema/question)
  - [Recipe Schema](https://unhead.unjs.io/docs/typescript/schema-org/api/schema/recipe)
  - [Service Schema](https://unhead.unjs.io/docs/typescript/schema-org/api/schema/service)
  - [SoftwareApplication](https://unhead.unjs.io/docs/typescript/schema-org/api/schema/software-app)
  - [TV Episode Schema](https://unhead.unjs.io/docs/typescript/schema-org/api/schema/tv-episode)
  - [TV Season Schema](https://unhead.unjs.io/docs/typescript/schema-org/api/schema/tv-season)
  - [TV Series Schema](https://unhead.unjs.io/docs/typescript/schema-org/api/schema/tv-series)
  - [Video Schema](https://unhead.unjs.io/docs/typescript/schema-org/api/schema/video)
  - [WebPage Schema](https://unhead.unjs.io/docs/typescript/schema-org/api/schema/webpage)
  - [WebSite Schema](https://unhead.unjs.io/docs/typescript/schema-org/api/schema/website)

Schema

# Event Schema

[Copy for LLMs](https://raw.githubusercontent.com/unjs/unhead/refs/heads/main/docs/schema-org/5.api/9.schema/event.md)

Last updated Jan 19, 2026 by [Harlan Wilton](https://github.com/harlan-zw) in [docs: sync](https://github.com/unjs/unhead/commit/d2f86454774aa60706628b46a850653e1e4d56d9).

On this page

- [Schema.org Event](#schemaorg-event)
- [Useful Links](#useful-links)
- [Examples](#examples)
- [Types](#types)
- [Related Schemas](#related-schemas)

## [Schema.org Event](#schemaorg-event)

- **Type**: `defineEvent(input?: Event)`Describes an Event.

## [Useful Links](#useful-links)

- [Schema.org Event](https://schema.org/Event)
- [Event Schema Markup - Google Search Central](https://developers.google.com/search/docs/advanced/structured-data/event)

🔨 Documentation in progress

## [Examples](#examples)

```
defineEvent({
  name: 'The Adventures of Kira and Morrison',
  location: [
    'https://operaonline.stream5.com/',
    {
      name: 'Snickerpark Stadium',
      address: {
        streetAddress: '100 West Snickerpark Dr',
        addressLocality: 'Snickertown',
        postalCode: '19019',
        addressRegion: 'PA',
        addressCountry: 'US',
      },
    },
  ],
  image: [
    'https://example.com/photos/1x1/photo.jpg',
    'https://example.com/photos/4x3/photo.jpg',
    'https://example.com/photos/16x9/photo.jpg',
  ],
  organizer: {
    name: 'Kira and Morrison Music',
    url: 'https://kiraandmorrisonmusic.com',
  },
  performer: {
    '@type': 'PerformingGroup',
    'name': 'Kira and Morrison',
  },
  offers: {
    price: 30,
    url: 'https://www.example.com/event_offer/12345_201803180430',
    validFrom: new Date(Date.UTC(2024, 5, 21, 12)),
  },
  description: 'The Adventures of Kira and Morrison is coming to Snickertown in a can\'t miss performance.',
  startDate: '2025-07-21T19:00-05:00',
  endDate: '2025-07-21T23:00-05:00',
  eventStatus: 'EventScheduled',
  eventAttendanceMode: 'MixedEventAttendanceMode',
})
```

## [Types](#types)

```
type EventAttendanceModeTypes = 'OfflineEventAttendanceMode' | 'OnlineEventAttendanceMode' | 'MixedEventAttendanceMode'
type EventStatusTypes = 'EventCancelled' | 'EventMovedOnline' | 'EventPostponed' | 'EventRescheduled' | 'EventScheduled'

export interface EventSimple extends Thing {
  /**
   * Description of the event.
   * Describe all details of the event to make it easier for users to understand and attend the event.
   */
  description?: string
  /**
   * The end date and time of the item (in ISO 8601 date format).
   */
  endDate?: ResolvableDate
  /**
   * The eventAttendanceMode of an event indicates whether it occurs online, offline, or a mix.
   */
  eventAttendanceMode?: OptionalSchemaOrgPrefix<EventAttendanceModeTypes>
  /**
   * An eventStatus of an event represents its status; particularly useful when an event is cancelled or rescheduled.
   */
  eventStatus?: OptionalSchemaOrgPrefix<EventStatusTypes>
  /**
   * Repeated ImageObject or URL
   *
   * URL of an image or logo for the event or tour.
   * Including an image helps users understand and engage with your event.
   * We recommend that images are 1920px wide (the minimum width is 720px).
   */
  image?: NodeRelations<ImageObject | string>
  /**
   * The location of the event.
   * There are different requirements depending on if the event is happening online or at a physical location
   */
  location?: NodeRelations<Place | VirtualLocation | string>
  /**
   * An offer to provide this item—for example, an offer to sell a product,
   * rent the DVD of a movie, perform a service, or give away tickets to an event.
   * Use businessFunction to indicate the kind of transaction offered, i.e. sell, lease, etc.
   * This property can also be used to describe a Demand.
   * While this property is listed as expected on a number of common types, it can be used in others.
   * In that case, using a second type, such as Product or a subtype of Product, can clarify the nature of the offer.
   */
  offers?: NodeRelations<Offer | string>
  /**
   * An organizer of an Event.
   */
  organizer?: NodeRelation<Identity>
  /**
   * A performer at the event—for example, a presenter, musician, musical group or actor.
   */
  performer?: NodeRelation<Person>
  /**
   * Used in conjunction with eventStatus for rescheduled or cancelled events.
   * This property contains the previously scheduled start date.
   * For rescheduled events, the startDate property should be used for the newly scheduled start date.
   * In the (rare) case of an event that has been postponed and rescheduled multiple times, this field may be repeated.
   */
  previousStartDate?: ResolvableDate
  /**
   * The start date and time of the item (in ISO 8601 date format).
   */
  startDate?: ResolvableDate
  /**
   * The duration of the item (movie, audio recording, event, etc.) in ISO 8601 date format.
   */
  duration?: string
  /**
   * Indicates whether an event is accessible for free.
   */
  isAccessibleForFree?: boolean
  /**
   * The total number of individuals that may attend an event or venue.
   */
  maximumAttendeeCapacity?: number
}
```

## [Related Schemas](#related-schemas)

- [Organization](https://unhead.unjs.io/docs/schema-org/api/schema/organization) - Event organizer
- [Person](https://unhead.unjs.io/docs/schema-org/api/schema/person) - Event performer
- [LocalBusiness](https://unhead.unjs.io/docs/schema-org/api/schema/local-business) - Event venue

[Edit this page](https://github.com/unjs/unhead/edit/main/docs/schema-org/5.api/9.schema/event.md)

[Markdown For LLMs](https://raw.githubusercontent.com/unjs/unhead/refs/heads/main/docs/schema-org/5.api/9.schema/event.md)

Did this page help you?

[Dataset Schema Use defineDataset() to add Dataset structured data. Make research data discoverable in Google Dataset Search with metadata and download links.](https://unhead.unjs.io/docs/schema-org/api/schema/dataset) [Food Establishment Schema Use defineFoodEstablishment() to add Restaurant structured data. Display menu, reservations, and cuisine info in Google Maps and local search.](https://unhead.unjs.io/docs/schema-org/api/schema/food-establishment)

On this page

- [Schema.org Event](#schemaorg-event)
- [Useful Links](#useful-links)
- [Examples](#examples)
- [Types](#types)
- [Related Schemas](#related-schemas)

[GitHub](https://github.com/unjs/unhead) [ Discord](https://discord.com/invite/275MBUBvgP)

[ /llms.txt](https://unhead.unjs.io/llms.txt)

[Part of the UnJS ecosystem](https://unjs.io/)

### Head Management

- [Getting Started](https://unhead.unjs.io/docs/typescript/head/guides/get-started/overview)
- [useHead](https://unhead.unjs.io/docs/typescript/head/api/composables/use-head)
- [useSeoMeta](https://unhead.unjs.io/docs/typescript/head/api/composables/use-seo-meta)
- [useHeadSafe](https://unhead.unjs.io/docs/typescript/head/api/composables/use-head-safe)
- [useScript](https://unhead.unjs.io/docs/typescript/head/api/composables/use-script)

### Schema.org

- [Getting Started](https://unhead.unjs.io/docs/typescript/schema-org/guides/get-started/overview)
- [useSchemaOrg](https://unhead.unjs.io/docs/typescript/schema-org/api/composables/use-schema-org)
- [Nodes](https://unhead.unjs.io/docs/typescript/schema-org/guides/core-concepts/nodes)
- [Recipes](https://unhead.unjs.io/docs/typescript/schema-org/guides/recipes/identity)

### Guides

- [Titles](https://unhead.unjs.io/docs/typescript/head/guides/core-concepts/titles)
- [Streaming SSR](https://unhead.unjs.io/docs/typescript/head/guides/core-concepts/streaming)
- [DOM Events](https://unhead.unjs.io/docs/typescript/head/guides/core-concepts/dom-event-handling)
- [Plugins](https://unhead.unjs.io/docs/typescript/head/guides/plugins/template-params)

### Tools

- [Meta Tag Generator](https://unhead.unjs.io/tools/meta-tag-generator)
- [OG Image Generator](https://unhead.unjs.io/tools/og-image-generator)
- [Schema.org Generator](https://unhead.unjs.io/tools/schema-generator)
- [Capo.js Analyzer](https://unhead.unjs.io/tools/capo-analyzer)

### Articles

- [What is Capo.js?](https://unhead.unjs.io/learn/guides/what-is-capo)

### Research

- [State of <head> in 2026](https://unhead.unjs.io/learn/research/state-of-head-2026)
- [Streaming Head Performance](https://unhead.unjs.io/learn/research/streaming-head-performance)
- [Capo.js Performance Research](https://unhead.unjs.io/learn/research/capo-performance-research)

Copyright © 2025-2026 Harlan Wilton - [MIT License](https://github.com/unjs/unhead/blob/main/license)