What the dataset is
The price records behind the full menu price table, every category hub and every item page come from a single supplied dataset of McDonald's listings on DoorDash. The supplier describes it this way: for each listing, the latest recorded price at each available location was taken, and those location prices were averaged with equal weight per location.
Two practical consequences follow from that method:
- One price per restaurant. A restaurant whose listing was recorded many times still counts once, at its most recent price. A frequently scraped store cannot dominate an average.
- Different items can rest on different stores. Not every location lists every item. The Big Mac average and the Medium Fries average may draw on different sets of restaurants.
The dataset does not say how many locations contributed to each average, or which cities or states they are in. We treat the sample size as unknown and say so. We do not describe any figure as typical for a city, a state or the country.
What the numbers are not
- Not in-store prices. Restaurants can set delivery-menu prices differently from counter, drive-thru or app pickup prices. Our delivery vs in-store guide explains how to read the gap and how to check your own restaurant.
- Not totals at checkout. The dataset records menu listing prices. It does not record delivery fees, service fees, small-order fees, taxes or tips, so none of these are included.
- Presumed U.S. dollars. The source describes the currency as presumed USD. We display amounts in dollars on that basis.
- Not promotional prices. The listings are regular menu prices as recorded. App deals, rewards and limited-time offers are handled separately on the deals pages, and only when verified.
- Not nutrition. The price dataset contains no calories or nutrients. Nutrition comes only from official U.S. McDonald's product pages, recorded with a check date. Where we have no such record, the site shows Not verified.
Sizes, options and 'Base'
Each size or option is averaged on its own. A Small, Medium and Large French Fries are three separate averages, not one price with size multipliers.
Many listings also carry a Base value. Base means the listing had no explicit size attached. It is not a fourth size. On most drinks Base matches Small almost exactly, which suggests that size-less listings are usually the smallest default. On meals, Base usually matches Medium. We cannot confirm that rule for every restaurant, so tables label Base as default listing (no size shown) and never relabel it as Small or Medium.
Small differences between Base and the named size are expected. Iced Coffee averaged $2.86 as Base and $2.79 as Small. The likely reason is that the two averages draw on slightly different sets of restaurants. We report both rather than picking one.
Outliers and anomalies
We publish the averages as supplied. We do not quietly edit them. Where a figure looks unreliable, we flag it in the table and keep it out of comparisons and value math. The cases we know about are listed in the anomaly table below. They fall into four groups.
A known bad input
The source itself notes that one location listed Reduced Sugar Berry Blast with Sprite Zero Sugar at $99.00 for every size. That value remains in the supplied averages, which run from $35.86 to $51.60. We cannot recompute the average without the location-level data, so on this site those figures are marked unreliable and are never used in the compare tool or the meal builder totals.
Duplicate or near-duplicate names
Some products appear under two listing names with different averages, for example 'Sausage McGriddle' ($5.29) and 'Sausage McGriddles®' ($4.52). Different restaurants name the same item differently on DoorDash. Because we cannot tell which locations sit behind each name, we keep both records separate and show both. We do not merge them into a blended price that no single source reported.
Internally inconsistent listings
A few averages contradict their own logic. One example is a 40-piece McNuggets bundle with fries that averages less than the 40 pieces alone. These may come from mislabeled listings at a small number of stores. We flag them and do not use them to claim a saving.
Regional and local listings
Names such as Denali Mac, McTeri® Deluxe, Spam® Rice & Egg, Haupia Pie, Green Chile Double Cheese, Vernors, Michigan Mix and the team-branded frozen drinks and packs point to local menus or local promotions. Each one carries a Regional / limited badge. Its average reflects only the restaurants that list it, and it is never presented as available everywhere.
How calculations work
All arithmetic runs on whole cents. A $7.45 average is stored as 745 cents, so sums and differences never pick up floating-point drift. Results are converted back to dollars only for display.
- Sums and differences, such as a meal compared with separate items or a Large upcharge, are exact in cents.
- Per-unit figures, such as price per nugget or per cookie, are divided in cents and shown to one decimal place of a cent (for example 52.8¢). Rounding is applied once, at display.
- Comparable inputs only. We calculate value only between records from the same channel and window. Every current record is a DoorDash delivery average from Aug 19–Sep 29, 2026. We still note that two averages may rest on different restaurants, so a computed difference is an estimate, not a quoted saving.
- Ranges across items, not stores. When a page says burger prices ran from one figure to another, that spread is across different items. The dataset gives one average per item and size, not each location's price. So we cannot yet publish a low-to-high range for a single item across restaurants, and we do not imply one.
Missing values
If an item or size has no record, its price is stored as null, not zero. Tables show Price not verified or point readers to check the local price. The vanilla cone is one example: it has no listing in the dataset. Missing values never match a low-price or low-calorie filter. In the meal builder, any missing component makes the total visibly incomplete instead of being counted as $0.
Freshness and updates
Every price on the site shares the Aug 19–Sep 29, 2026 observation window, and the source notes that some items were last observed in August. When a newer dataset arrives, we will replace records as a whole, keep the new window separate from the old one, and change a page's update date only when its data or text actually changes. We do not move dates forward because the site rebuilds or a new month begins, and we do not mix stale and fresh observations into one current range.
Our research, writing and review practices are described in the editorial policy. If you spot a wrong figure, a mislabeled size or a duplicate we missed, use the corrections page.