Movie Structured Data: Complete Implementation Guide

Movie structured data enables you to provide Google with detailed information about films — including cast, director, ratings, release dates, and descriptions. When correctly implemented, this markup can power rich results in Google Search, surfacing your film content with enhanced visual panels that include poster images, aggregate ratings, and key credits. This is essential for film review sites, streaming platforms, cinema listings, and entertainment databases that want to maximise their visibility for movie-related searches.

Why Use Movie Schema?

  • Display rich film panels in search results featuring poster images, ratings, cast, and release information.
  • Improve click-through rates by presenting key film details — such as genre, duration, and director — directly in the search listing.
  • Help Google understand relationships between films, actors, and directors, increasing your chances of appearing in knowledge panel carousels.
  • Support voice assistant queries like 'What films has Christopher Nolan directed?' by providing machine-readable filmography data.
  • Enhance your content's eligibility for Google's movie carousel and other entertainment-focused search features.

Required Properties

These properties are required by Google for Movie structured data to be eligible for rich results.

PropertyDescription
nameThe title of the film. Use the official release title for the primary market your page targets.
imageA URL pointing to the official poster or a representative still from the film. Google recommends images with a 2:3 aspect ratio for movie posters.
directorA Person object identifying the film's director. Include the name property at minimum. For multiple directors, use an array.
dateCreatedThe release date of the film in ISO 8601 format (YYYY-MM-DD). Use the original theatrical release date for the primary market.

JSON-LD Example

Here is a complete Movie structured data example you can use as a starting point. Or use our Movie generator to create one automatically.

<script type="application/ld+json">
{
  "@context": "https://schema.org",
  "@type": "Movie",
  "name": "The Midnight Clockmaker",
  "image": "https://www.examplefilms.co.uk/posters/midnight-clockmaker.jpg",
  "description": "A reclusive clockmaker in Victorian London discovers that the timepieces he restores hold fragments of their owners' memories, drawing him into a mystery that spans decades.",
  "director": {
    "@type": "Person",
    "name": "Eleanor Whitfield"
  },
  "actor": [
    {
      "@type": "Person",
      "name": "James Harrington"
    },
    {
      "@type": "Person",
      "name": "Priya Kapoor"
    },
    {
      "@type": "Person",
      "name": "David Okonkwo"
    }
  ],
  "dateCreated": "2025-11-14",
  "genre": [
    "Drama",
    "Mystery"
  ],
  "duration": "PT127M",
  "contentRating": "12A",
  "aggregateRating": {
    "@type": "AggregateRating",
    "ratingValue": "4.3",
    "bestRating": "5",
    "ratingCount": 8420
  },
  "review": {
    "@type": "Review",
    "author": {
      "@type": "Person",
      "name": "Marcus Webb"
    },
    "reviewRating": {
      "@type": "Rating",
      "ratingValue": "4",
      "bestRating": "5"
    },
    "reviewBody": "A beautifully crafted period mystery with outstanding performances. Whitfield's direction is assured and the central conceit never feels contrived."
  }
}
</script>

How to Implement Movie Schema

  1. 1Add a JSON-LD script block to each individual film page on your site. Each page should contain exactly one Movie object.
  2. 2Set the name to the official film title and include a high-quality poster image URL in the image property.
  3. 3Add director and actor properties using Person objects. For well-known individuals, consider adding a sameAs property linking to their official website or social profile.
  4. 4Include the release date in dateCreated and the runtime in duration using ISO 8601 format.
  5. 5If your site collects user ratings, add an aggregateRating object with the current average, scale, and total number of ratings.
  6. 6Validate your markup using Google's Rich Results Test. Check that the poster image loads correctly and that all Person names are spelled accurately.

Common Mistakes to Avoid

  • Using a low-resolution or incorrectly cropped poster image — Google recommends high-quality images of at least 160x90 pixels, though larger is always better.
  • Omitting the director property, which is one of the key signals Google uses to match your content to film-related queries.
  • Providing an aggregateRating that does not reflect genuine user reviews collected on your own site — fabricated or imported ratings violate Google's guidelines.
  • Listing every cast member rather than focusing on the principal actors — keep the actor array to the 3-5 most prominent roles for clarity.
  • Using inconsistent film titles across structured data, page headings, and metadata, which confuses search engines about canonical naming.

Testing & Validation

Before deploying your Movie structured data, validate it using these tools:

  1. 1Google Rich Results Test — Paste your page URL or code snippet to check if your structured data is eligible for rich results.
  2. 2Schema Markup Validator — Validates your JSON-LD syntax against the schema.org specification.
  3. 3Google Search Console — After deployment, monitor the Enhancements report for any errors or warnings.

Frequently Asked Questions

Can I use Movie structured data for television films or streaming exclusives?

Yes. Movie structured data applies to any feature-length film regardless of distribution method. For television series, use the TVSeries type instead. Short films can also use the Movie type.

Should I include both critic and user ratings in aggregateRating?

The aggregateRating should reflect a single, consistent rating source — typically user ratings collected on your own site. Do not mix critic scores with user scores in the same aggregateRating object. You can include a separate review property for individual critic reviews.

How do I handle films with multiple titles or international release names?

Use the title most relevant to your target audience in the name property. You can add alternate titles using the alternateName property. If you have separate pages for different regions, each page should use the locally appropriate title.

Does Movie structured data guarantee a rich result in Google Search?

No. Structured data makes your content eligible for rich results, but Google determines whether to display them based on content quality, relevance, and other ranking factors. Authoritative film databases and review sites are more likely to receive enhanced treatment.

Can I combine Movie structured data with Review markup on the same page?

Yes, and it is recommended. You can nest a review property within the Movie object or add a separate Review JSON-LD block that references the film. This enables both the film panel and review snippet rich results.

Ready to Generate Your Movie Schema?

Use our free generator to create valid Movie structured data in seconds.

Open Movie Generator

Related Guides