Movie Schema Markup
Movie markup enables rich movie information in Google Search, including ratings, cast, director, and release dates. It powers the Knowledge Panel for movies and feeds into Google's entertainment search features.
Google Search Features
- Movie A carousel of movies (mobile only), built from an ItemList. Mobile only. Images need a 6:9 aspect ratio.
- Review snippet Star ratings and a review excerpt for the reviewed item. Local businesses and organizations: only reviews of other businesses, not reviews they collect about themselves.
When to Use Movie
Properties
| Property | Type | Status | Description |
|---|---|---|---|
| name | Text | required | The movie title. |
| director | Person | recommended | The film's director. |
| actor | Person (array) | optional | Cast members. |
| dateCreated | Date | optional | Release date. |
| description | Text | recommended | Movie synopsis. |
| image | URL | required | Movie poster. Google requires it for the movie carousel, in a 6:9 aspect ratio. |
| duration | Duration | optional | Runtime in ISO 8601 format. |
| genre | Text | optional | Genre(s). |
| aggregateRating | AggregateRating | optional | Audience rating. |
| contentRating | Text | optional | MPAA rating (PG, PG-13, R, etc.). |
JSON-LD Examples
Feature Film
A movie with director, cast, and rating.
{
"@context": "https://schema.org",
"@type": "Movie",
"name": "The Code Breaker",
"director": {
"@type": "Person",
"name": "James Park"
},
"actor": [
{
"@type": "Person",
"name": "Sarah Chen"
},
{
"@type": "Person",
"name": "Michael Torres"
}
],
"dateCreated": "2024-06-15",
"description": "A gripping thriller about a cybersecurity expert who uncovers a global conspiracy.",
"genre": [
"Thriller",
"Sci-Fi"
],
"duration": "PT2H15M",
"contentRating": "PG-13",
"image": "https://movies.com/code-breaker-poster.jpg",
"aggregateRating": {
"@type": "AggregateRating",
"ratingValue": "8.2",
"bestRating": "10",
"ratingCount": "15420"
}
} Common Mistakes
Using duration in human-readable format — must be ISO 8601 (PT2H15M, not '2h 15m').
Complete Guide to Movie Schema Markup
Movie markup describes a film, and Google uses it for one search feature: the movie carousel, a scrolling set of films shown in Google Search on mobile devices. A single movie page doesn't make a carousel on its own. The films have to be listed, in an ItemList on a summary page that links to a page for each film, or on one page that describes them all.
For each film, Google requires name and image, and recommends aggregateRating, dateCreated, director and review. The image needs a 6:9 aspect ratio, the proportions of a movie poster; a landscape still from the film doesn't meet it. dateCreated is the release date as an ISO 8601 date.
The people involved are Person objects: director, and actor for the cast, each with a name and ideally a url or sameAs link that identifies them. duration is ISO 8601 too, PT2H15M for two hours fifteen minutes; "2h 15m" isn't read. contentRating holds the certificate, such as PG-13, and genre can be one value or a list.
Ratings deserve care. aggregateRating needs a ratingValue and a ratingCount or reviewCount, and it should summarize ratings that the page itself shows; a score copied from somewhere else into your markup misrepresents where it came from. A single critic's review belongs in review, as a Review with an author and a reviewRating.
For television, schema.org has TVSeries, TVSeason and TVEpisode; Movie is only for films. A streaming service's page for a film can add a potentialAction such as a WatchAction, but Google's watch actions come from partner feeds rather than from page markup.
Related Types
Check Your Movie Markup
The generator doesn't have a Movie form yet. Paste your markup into the validator to check its types, properties and values, and what Google needs from it.
Open Validator