---
title: "Movie Schema · Unhead"
meta:
  "og:description": "Use defineMovie() to add Movie structured data. Enable rich results with ratings, cast, director, and release date in Google search."
  "og:title": "Movie Schema · Unhead"
  description: "Use defineMovie() to add Movie structured data. Enable rich results with ratings, cast, director, and release date in Google search."
---

**Schema**

# **Movie Schema**

[Copy for LLMs](https://raw.githubusercontent.com/unjs/unhead/refs/heads/main/docs/schema-org/5.api/9.schema/movie.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 Movie](#schemaorg-movie)
- [Useful Links](#useful-links)
- [Types](#types)
- [Related Schemas](#related-schemas)

## [Schema.org Movie](#schemaorg-movie)

**Type**: `defineMovie(input?: Movie)`

Describes a movie.

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

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

### [Example](#example)

```
defineMovie({
  name: 'Black Panther',
  url: '/2019-best-picture-noms#black-panther',
  image: '/photos/6x9/photo.jpg',
  dateCreated: '2018-02-16',
  director: 'Ryan Coogle',
  review: {
    reviewRating: 2,
    author: 'Trevor R',
    reviewBody: 'I didn\'t like the lighting and CGI in this movie.',
  },
  aggregateRating: {
    ratingValue: 96,
    bestRating: 100,
    ratingCount: 88211,
  },
})
```

## [Types](#types)

```
export interface MovieSimple extends Thing {
  /**
   * An image that represents the movie.
   */
  image: NodeRelations<string | ImageObject>
  /**
   * The name of the movie.
   */
  name: string
  /**
   * Annotation for the average review score assigned to the movie.
   */
  aggregateRating?: NodeRelation<AggregateRating>
  /**
   * The date the movie was released.
   */
  dateCreated?: ResolvableDate
  /**
   * The director of the movie.
   */
  director?: NodeRelations<Person | string>
  /**
   * The actor of the movie.
   */
  actor?: NodeRelations<Person | string>
  /**
   * A nested Review of the movie.
   */
  review?: NodeRelations<Review>
  /**
   * The trailer of a movie or TV/radio series, season, episode, etc.
   */
  trailer?: NodeRelations<string | VideoObject>
  /**
   * The duration of the movie.
   */
  duration?: string
  /**
   * The genre of the movie.
   */
  genre?: string
  /**
   * The content rating of the movie.
   */
  contentRating?: string
  /**
   * The production company of the movie.
   */
  productionCompany?: NodeRelation<Organization>
}
```

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

- [**Person**](https://unhead.unjs.io/docs/schema-org/api/schema/person) - Director, actors
- [**Organization**](https://unhead.unjs.io/docs/schema-org/api/schema/organization) - Production company
- [**MusicRecording**](https://unhead.unjs.io/docs/schema-org/api/schema/music-recording) - Soundtrack

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

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

**Did this page help you? **

[**LocalBusiness** Implement LocalBusiness structured data with Unhead. JSON-LD examples, required properties, subtypes (Dentist, Restaurant, Store), and Google rich result setup.](https://unhead.unjs.io/docs/schema-org/api/schema/local-business) [**Music Album Schema** Use defineMusicAlbum() to add MusicAlbum structured data. Display album info with artist, tracks, and release date in search results.](https://unhead.unjs.io/docs/schema-org/api/schema/music-album)

**On this page **

- [Schema.org Movie](#schemaorg-movie)
- [Useful Links](#useful-links)
- [Types](#types)
- [Related Schemas](#related-schemas)