OrbTop

Rotten Tomatoes Tomatometer & Popcornmeter Score Scraper

AIDEVELOPER TOOLS

Rotten Tomatoes Tomatometer & Popcornmeter Score Scraper

Scrape Tomatometer and Popcornmeter scores, critics consensus, genres, release dates, runtime, directors, and streaming availability for movies and TV series from Rotten Tomatoes.

What It Does

The scraper discovers titles via the RT sitemap (tens of thousands of movies and TV series) and extracts structured score data from each detail page. For targeted runs, pass a list of specific RT URLs directly and skip the sitemap entirely.

Data comes from three embedded JSON blobs per page — the media scorecard, the JSON-LD schema block, and the where-to-watch affiliate list — so it's stable and doesn't depend on CSS selectors that change with redesigns.

Output

Each record contains:

Field Type Description
title string Movie or TV series title
media_type string movie or tv
rt_url string Canonical RT detail page URL
tomatometer_score integer Critics score (0–100), or null if unscored
tomatometer_state string certified-fresh, fresh, or rotten
critics_review_count integer Number of critics reviews counted
audience_score integer Audience (Popcornmeter) score (0–100)
audience_rating_count integer Number of audience ratings counted
critics_consensus string RT critics consensus text
mpaa_rating string MPAA/content rating (e.g. PG-13, TV-MA)
genres array Genre list from structured data
release_date_theaters string Theatrical release date
release_date_streaming string Streaming release date
runtime_minutes integer Runtime in minutes
directors array Director name(s)
streaming_providers array Current streaming platforms

Input

maxItems (integer, required) — Maximum records to return. Set to 10–100 for test runs, leave higher for bulk pulls.

mediaType (string, optional) — Filter by movie, tv, or leave empty to scrape both. Only applies to sitemap-driven discovery; ignored when startUrls are provided.

startUrls (array, optional) — List of specific RT movie or TV detail page URLs. When provided, the scraper hits those pages directly and skips sitemap discovery entirely. Useful for monitoring a watchlist or validating specific titles.

{
  "maxItems": 100,
  "mediaType": "movie",
  "startUrls": []
}

For targeted runs:

{
  "maxItems": 5,
  "startUrls": [
    { "url": "https://www.rottentomatoes.com/m/dune_part_two" },
    { "url": "https://www.rottentomatoes.com/tv/the_boys_2019" }
  ]
}

Discovery Strategy

Full-catalog runs use RT's public sitemap index at /sitemaps/sitemap.xml, which links to dedicated sitemap files for movies (movie_N.xml) and TV series (tv-series_N.xml). The scraper filters to canonical title pages only — season pages, episode pages, and photo galleries are skipped.

RT detail pages serve structured data via embedded <script> blocks, so no JavaScript rendering is required. The actor runs as a lightweight HTML crawler.

Notes

  • Scores update as new reviews come in — results reflect whatever RT shows at scrape time.
  • Titles with no reviews yet return null for tomatometer_score and audience_score.
  • The tomatometer_state field follows RT's own certification logic: certified-fresh requires a minimum review count plus a score above the threshold; otherwise it's fresh or rotten based on the score.
  • streaming_providers lists the platforms RT shows in the "Where to Watch" module. This is affiliate data and may not reflect every available platform.