Boxofficemojo Scraper avatar

Boxofficemojo Scraper

Pricing

from $8.00 / 1,000 results

Go to Apify Store
Boxofficemojo Scraper

Boxofficemojo Scraper

Get real box office data from Box Office Mojo: yearly and all-time domestic/worldwide charts, full per-movie financials (budget, distributor, MPAA, ROI, and a real country-by-country gross breakdown), or both at once with a whole year's top movies fully priced out - no titles to type in.

Pricing

from $8.00 / 1,000 results

Rating

0.0

(0)

Developer

Norm Data

Norm Data

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

10 days ago

Last modified

Categories

Share

Norm Data

🎬 Box Office Mojo Scraper

Get real box office data from Box Office Mojo with no login: a whole domestic or worldwide chart for one year or all-time, optionally with full per-movie financials added to every row automatically, or full financials for specific titles you already know.

Point it at a year, an all-time chart, or a list of titles, and get clean, structured data ready for film industry analysis, distribution research, and box office journalism.

🎯 Who uses it?

πŸŽ₯ Film industry analysts

Compare budget, ROI, and profit across a whole slate of titles in one pull.

🌍 International distribution researchers

Work with real country-level opening and gross figures instead of a derived estimate.

πŸ“° Box office journalists and content creators

Pull a year's chart or a title's full financial profile, ready to drop into a story or chart.

🏒 Studios and distributors

Benchmark domestic versus international performance by title, genre, or distributor.

πŸ“š Historical researchers

Compare the all-time domestic and worldwide top 200 side by side.

✨ What it does

  • Chart: a full ranking, either one year's domestic chart, one year's worldwide chart, or the all-time top 200 for either area. Domestic and worldwide are genuinely different rankings, not the same list with a label swapped. Turning on full movie detail adds financials to every row automatically, each row's own title is looked up for you, with nothing to type in.
  • Movie: takes a title or an IMDb ID and returns budget, distributor, MPAA rating, genres, running time, domestic, international, and worldwide gross, computed ROI and profit, and a real country-by-country international gross breakdown, for specific titles you already know.

Missing source values are returned as null, never invented.

πŸ† Why this scraper

  • The only actor of its kind that does both movie financials and chart rankings, and combines them in one request. One real competitor only does charts, and only worldwide, with no domestic chart at all. The other only does movie financials one title at a time, with no chart mode at all.
  • A real country-by-country international breakdown, not a single number worked out by subtracting domestic from worldwide.
  • Reliable domestic, international, and worldwide totals on every title, including classic movies with multiple theatrical re-releases.
  • No API key, no login, no browser. Reads only what a normal visitor's page load reads.

βš–οΈ How it compares

Checked directly against both other Box Office Mojo scrapers on Apify (their own declared input and output):

CapabilityThis actorparseforge/boxofficemojo-world-scrapertrovevault/movie-box-office-tracker
Movie financials (budget, distributor, MPAA, opening, ROI/profit)yesnoyes
Real per-country international breakdownyesnono, derived by subtraction
Domestic yearly chartyesnono
Worldwide yearly chartyesyesno
All-time chart, both domestic and worldwideyesworldwide onlyno
Full financials for a whole chart, no titles typed inyesnono, one title at a time only
Declared Apify dataset schemayesnot documentednot documented

πŸ“¦ What data you get

EntityUseful fields
IdentityIMDb ID, title, and URL.
Movie profileDomestic distributor, budget, MPAA rating, running time, and genres.
FinancialsDomestic opening and gross, international total, worldwide total, computed ROI and profit.
International detailOne entry per country with release date, opening, and gross.
Chart rowsRank, total gross by area, theater count, release date, and which chart the row came from.

Every record includes scraped_at (UTC). Download your dataset from Apify as CSV, JSON, Excel, or XML.

πŸ’‘ Use cases

πŸ“Š A year's top movies with full financials, no titles to type in

{ "mode": "chart", "period": "year", "year": 2024, "area": "domestic", "includeMovieDetails": true }

🎬 A movie's full financials, by title

{ "mode": "movie", "titles": ["Inside Out 2", "Dune: Part Two"] }

πŸ”Ž A movie by direct IMDb ID

{ "mode": "movie", "imdbIds": ["tt22022452"] }

🌍 A year's worldwide chart

{ "mode": "chart", "period": "year", "year": 2024, "area": "worldwide" }

πŸ“š The all-time worldwide top 200

{ "mode": "chart", "period": "alltime", "area": "worldwide" }

βš™οΈ How the input is organised

The input form is split into sections by mode:

SectionWhat it's for
ModePick Chart (a full ranking) or Movie (specific titles).
Movie modeTitles or direct IMDb IDs.
Chart modeChart period (one year or all-time), the year, domestic or worldwide, and whether to also fetch full movie detail for every row.

Apify Free plan: every run is limited to a fixed 10-row sample. Upgrade your Apify plan to run your own settings.

πŸ’° Pricing

Pay-per-event: a one-time 0.003 when the run starts, plus a price for each kind of record the run produces. You only pay for the kinds you turn on:

Charged forFreeBronzeSilverGold+
result0.01680.01260.01050.008
Movie details0.0080.0060.0050.0038

New Apify accounts start with $5 in free credit.

πŸš€ Run it

  1. Create a free Apify account with $5 in credit.
  2. Open the Boxofficemojo Scraper.
  3. Fill in the input (or keep the prefilled example), set the maximum number of results, then click Start.
  4. Export the results as CSV, Excel, JSON, or XML from the Dataset tab.

Run it programmatically through the Apify API (run-sync-get-dataset-items) or the ApifyClient for JavaScript and Python, and schedule it with Apify's built-in Scheduler.

πŸ€– Use with AI agents (MCP)

Give an AI agent live access to the Boxofficemojo Scraper through the Model Context Protocol:

claude mcp add --transport http apify "https://mcp.apify.com?tools=normdata/boxofficemojo-scraper"

Then prompt it in plain language to run the scraper and read back the results.

πŸ”§ Troubleshooting

A movie came back with an error field. The title didn't match. Add the release year to the title (e.g. "Dune 2021") when several movies share a name, or use the IMDb ID (e.g. tt1160419), which always resolves.

domestic_gross doesn't match between Movie and Chart mode. In Movie mode it's the title's lifetime domestic total across every release; on a worldwide chart row it's the domestic share of that year. Both are correct, they answer different questions.

Budget is empty for some movies. Box Office Mojo doesn't publish a budget for every title. It's left empty rather than guessed.

Chart mode runs slowly. "Also fetch full movie details" opens every movie's page. Turn it off for the ranking only.

❓ FAQ

QuestionAnswer
Do I need an IMDb or Box Office Mojo account?No. Only public pages are read.
Are domestic and worldwide charts different?Yes, they are genuinely different rankings, not the same list relabeled.
Does it include country-by-country grosses?Yes, in Movie mode (and in Chart mode with full details on).
How are ROI and profit calculated?From the published budget and worldwide gross; empty when there's no budget.
Is the data live?Yes, read fresh on every run.

πŸ›‘οΈ Limits & responsible use

This actor reads only Box Office Mojo's own public pages, with no key and no login.

An unresolved title or ID returns one row with an error field noting it wasn't found, rather than failing the whole run. When two different movies share the exact same title, such as a remake or a franchise reboot, adding the release year to the title (for example "Moana 2016") disambiguates it, or an IMDb ID gives guaranteed precision.

domestic_gross means something different depending on mode: in movie mode it's a title's own real domestic total across every theatrical release it's ever had, while on a worldwide chart row it's that title's domestic share of the year being charted. Box Office Mojo itself only started tracking per-country detail for more recent releases, so older titles can have a shorter country list even though their overall totals are still real and complete.

Data is read live from Box Office Mojo on every run, never cached. This actor is independent and not affiliated with Box Office Mojo or IMDb; it reads only publicly available pages.

πŸ“§ Contact

Need a scraper for a different site, or found something wrong with this one? norm.data.scrapers@gmail.com

πŸ§ͺ Local development

bun install
bun test # offline: chart/movie parsing, normalization (real fixtures)
bun run src/main.ts # reads storage/key_value_stores/default/INPUT.json