Fast Food Price Data

Store-level prices are the product. The public pages publish summaries anyone can check. The restaurant-by-restaurant file is not on a public link, and it is not for sale yet.

Checkout is tabled until the archive is longer and this site has more readers than a launch-day spreadsheet deserves. No card form, no Stripe redirect, and no surprise charge. The same ordering-system prices that feed the US Big Mac Index — the same store-level prices we collect for Taco Bell, Burger King, McDonald’s, Popeyes, Domino’s, Chick-fil-A, Wendy’s, Chipotle, and Papa John’s — are what the paid files will be cut from. Nothing here is a live API, and nothing here dumps the git archive.

Ping me when it is for sale

Hobby will be the national history. Pro will be the restaurant row. Both will cost what the cards below say. Neither is live. Leave an email if you want the launch note — one message, when there is something to buy, and not a drip of “engagement” until then. No demo call, and this site does not run ads against the list.

Which file are you after?

What you can download now

A sample covering the latest week of national aggregates for a short list of McDonald’s signature items. One row is a day and an item. The columns are date, item, median pickup price in US dollars, and how many restaurants that median was computed from.

Download the free national sample

That file is useful for a chart or a citation. It is not useful for finding the cheapest McDonald’s in a city, because it has no city. That is deliberate, and it is the same boundary the paid tiers will keep: Hobby is still aggregates, just longer and across every chain we price. Pro is the restaurant row.

Two monthly tiers, when they exist

These are the prices the files will carry, not a charge you can make today. Hobby sits at $49. Pro sits at $249, inside the $199–$499 band, because the store-level file is millions of rows and the collection is still growing. Changing a number later is a Stripe Price, not a new page, and that wiring stays off until launch.

Hobby

$49 per month

  • National median pickup price, every item we currently price, every priced chain
  • The day-by-day history we have already archived, not just the latest week
  • Same columns as the free sample, plus a chain column
  • CSV you can open in a spreadsheet
Save my seat for Hobby

Pro

$249 per month

  • One row per restaurant per item at the latest known pickup price
  • Restaurant id, city, state, and coordinates
  • Item name as the ordering system printed it, and the pickup price in US dollars
  • Gzipped CSV, refreshed weekly from the archive join — too large for Excel, which is an honest limit, not a footnote
I want the restaurant file

There is no subscribe button on this page on purpose. A button that says buy and then cannot take a card is a worse path than a waitlist that actually stores an email.

What the Pro file contains

as_of, chain, store_id, city, state, lat, lng, item, pickup_usd

One week of store-level rows, meaning the latest known price for each restaurant we currently cover, not a replay of every archived day. The free sample will never grow those columns. A run that wrote the restaurant file into the public site directory is refused by the exporter on purpose.

It does not include nutrition panels (those are already on the item pages), delivery quotes, or sales tax. It does not include restaurants we have not priced, and it does not claim to. Coverage is a large sample of US locations, not a census of every till the chains operate.

Honest limits

What happens when it is for sale

Stripe will host the card form. This page will never see a card number. Until that is turned on there is nothing to subscribe to, which is why the waitlist is the whole CTA. The receipt URLs at /data/success/ and /data/cancel/ still exist so that path can be wired without inventing new pages. A webhook at /api/webhook is the same story: ready, and unused until a card is actually taken.

FAQ

Why is the free file only national aggregates?

Store-level prices are the thing this project exists to collect, and they are the thing nobody else publishes as a file. Giving them away on the public site would leave nothing to sell and would put millions of rows on a URL crawlers would copy. The sample is enough to check the method and to cite a median.

Do I need to get on a call?

No. Leave an email if you want a launch note. There is no demo, no calendar link, and no one will call. If you only wanted the free sample, you already have it — no address required.

When can I actually buy this?

When the price history is long enough to be worth $49 a month and enough people are reading the public pages that a paid file is not a hobby project with a price tag. The waitlist gets that email first. We will not take a card until then.

Which chains are in the paid files?

The chains we currently price restaurant by restaurant: Taco Bell, Burger King, McDonald’s, Popeyes, Domino’s, Chick-fil-A, Wendy’s, Chipotle, and Papa John’s. Nutrition-only chains are not in either CSV, because there is no pickup price to export.

Is this the same as The Economist’s Big Mac Index?

No. That series compares currencies. The US Big Mac Index on this site compares US McDonald’s restaurants. The paid files are the restaurant rows behind that kind of number, for every item we price, not a currency basket.

What happens if I cancel?

Stripe stops the subscription at the end of the paid month. There is no separate account on this site. Old weekly files are not a public archive; when the subscription ends, new tokens stop.

Can I republish the rows?

The subscription is for your own analysis, models, and internal tools. Republishing the store-level file as a competing public dataset is not the deal. Citing a median, with a link here, is fine — that is what the free sample is for.

Methodology for the Big Mac median — exact item name, one price per restaurant, placeholders dropped, headline on the median and the middle 80% — is spelled out on the index page. The exporter that cuts the paid files is pipeline/export_weekly.py; it reads the committed archive join and will not write into site/.