Wendy's Menu Scraper: Store Prices & Calories avatar

Wendy's Menu Scraper: Store Prices & Calories

Pricing

from $0.70 / 1,000 results

Go to Apify Store
Wendy's Menu Scraper: Store Prices & Calories

Wendy's Menu Scraper: Store Prices & Calories

Wendy's menu data at store level. Give it a street address, ZIP or restaurant number and get ~150 products with the location's real prices, calories, categories and combo flags. Optional descriptions and customisations. Batch any number of stores. Pure HTTP. JSON or CSV.

Pricing

from $0.70 / 1,000 results

Rating

0.0

(0)

Developer

Muhamed Didovic

Muhamed Didovic

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

17 hours ago

Last modified

Share

Wendy's Menu Scraper

Wendy's Menu Scraper

Paste a street address, get that Wendy's actual menu. Prices as that restaurant charges them, calories on every item, all 15 menu categories, combos and Limited Time Offers flagged, and — optionally — full item descriptions and customisation options. Batch as many locations as you like in one run.

InputRows emitted
345 Valley Avenue, Birmingham, AL 35209~150 products at the restaurant nearest that address
35209 (ZIP)~150 products at the nearest restaurant in that ZIP
Birmingham, AL (city)~150 products at the nearest restaurant in that city
Restaurant number 1252~150 products at that exact store, menu only

Pure HTTP. No browser, no proxy, no API key, no login.

How it works

How the Wendy's Menu Scraper works

Every location you supply goes straight to Wendy's own location search, which geocodes it and returns the nearest restaurants with their full address, hours and phone. Because Wendy's does the geocoding, spelling and abbreviations never matter — "Road" or "Rd", "West" or "W" resolve to the same store. The menu is then read for that specific restaurant, so the prices are the ones that location charges.

Those prices are genuinely per-store. A Baconator® is $7.99 in Birmingham and $9.99 in Times Square; across those two restaurants, 88 of the shared items priced differently. A national menu would hide every one of those gaps.

Input

FieldTypeRequiredNotes
addressesarray of stringsone of these twoStreet addresses, ZIP codes or city names. Mix them freely.
restaurantIdsarray of stringsone of these twoWendy's restaurant numbers, e.g. 1252. Skips the location search.
maxStoresPerAddressintegernoRestaurants per location, nearest first. Default 1.
searchRadiusMilesintegernoHow far to look around each location. Default 25.
categoriesarray of stringsnoLimit to these category names (case-insensitive). Empty = whole menu.
includeDetailsbooleannoAdd each item's description and customisation options. Default false.
maxItemsintegernoRow cap. Default 5000 (about 33 restaurants).
maxConcurrencyintegernoParallel HTTP calls. Default 8.
proxyobjectnoOptional. The actor runs direct by default.

Example input

{
"addresses": ["345 Valley Avenue, Birmingham, AL 35209", "Times Square, New York, NY 10036"],
"maxStoresPerAddress": 1,
"includeDetails": false,
"maxItems": 5000
}

Output schema

One row per product per restaurant. A product listed in more than one category is emitted once, under the first category it appears in.

{
"type": "menu-item",
"restaurantId": "1252",
"storeName": "VALLEY AVE-252",
"storeAddress": "345 VALLEY AVE",
"storeCity": "BIRMINGHAM",
"storeState": "AL",
"storePostalCode": "35209",
"storeCountry": "US",
"storeLatitude": 33.4715,
"storeLongitude": -86.823,
"storePhone": "2059427007",
"searchedAddress": "345 Valley Avenue, Birmingham, AL 35209", // echoes your input
"itemId": "30003",
"itemName": "Baconator®",
"slug": "baconator",
"categoryId": "100",
"categoryName": "Hamburgers",
"price": 7.99, // this restaurant's price, in USD
"currency": "USD",
"calories": 890,
"isCombo": false,
"isLimitedTimeOffer": false,
"isFreestyle": false,
"hasRequiredModifiers": false,
"imageId": "2388",
// present only when includeDetails is on:
"description": "A half-pound* of fresh, never-frozen beef, American cheese, 6 pieces of crispy Applewood smoked bacon…",
"modifiers": [
{ "name": "Applewood Smoked Bacon", "description": "…" },
{ "name": "Cheese", "description": "…" }
],
"allergens": null,
"scrapedAt": "2026-09-03T20:32:00.000Z"
}

Field coverage

Measured across 228 rows from two restaurants (Birmingham and Times Square), and a 17-item Hamburgers spot-check with includeDetails on:

FieldCoverage
price, calories, categoryName100%
store address columns (address search)100%
description, modifiers (with includeDetails)100%

Pricing

EventWhen it firesRate
Actor startOnce per run$0.005
ResultPer product row returned$0.0007

A restaurant returns roughly 150 products, so one location runs about $0.11 and a sweep of 10 restaurants about $1.06. Categories, calories and combo flags ride on every row at no extra charge; a store that returns nothing costs nothing.

What makes this richer than the competition

CapabilityOther Wendy's actorsThis actor
Search by street addressZIP onlyStreet address, ZIP, city and restaurant number
Batch many locations per runLimitedYes, mixed formats in one input
Prices specific to the restaurantUnclearYes, proven to differ between stores
Calories on every rowPartialYes
Item descriptions + customisation optionsNoYes, opt-in
Full store metadata (hours, phone, coords)NoYes
Row paddingSame item repeated per categoryOne row per product

Notes & limitations

  • United States only. The location search and menu this actor reads are the US region.
  • Restaurant numbers return the menu without the address. Wendy's exposes a restaurant's address only through its location search, so a row that came from restaurantIds has storeAddress, storeCity and coordinates set to null. Search by address when you need those columns.
  • Spelling and abbreviations don't matter. Wendy's own location search geocodes each address, so "Road" vs "Rd" or "West" vs "W" resolve to the same restaurant — the actor never compares your text against Wendy's formatting.
  • Address matching is nearest-restaurant, not exact-match. Paste a restaurant's own address and you get that restaurant; paste any other address and you get the closest Wendy's to it.
  • Macros and allergens are not returned. Wendy's carries calories on every item, plus descriptions and customisation options behind includeDetails, but does not expose per-item macro grams the way some chains do.

🤖 For AI Agents & LLM Apps

Purpose. Returns the current menu of a specific Wendy's restaurant in the United States: per-store prices, calories, categories, combo/LTO flags, and optionally item descriptions and customisation options.

Minimal tested input.

{ "addresses": ["345 Valley Avenue, Birmingham, AL 35209"], "maxStoresPerAddress": 1 }

Output fields (flat). type, restaurantId, storeName, storeAddress, storeCity, storeState, storePostalCode, storeCountry, storeLatitude, storeLongitude, storePhone, searchedAddress, itemId, itemName, slug, categoryId, categoryName, price, currency, calories, isCombo, isLimitedTimeOffer, isFreestyle, hasRequiredModifiers, imageId, description, modifiers, allergens, scrapedAt.

Behaviour worth knowing.

  • One row per product per restaurant; roughly 150 rows per restaurant.
  • addresses accepts street addresses, ZIP codes and city names in the same array.
  • searchedAddress echoes the input string that produced the row, so batch results stay traceable.
  • Rows sourced from restaurantIds have null address columns.
  • description and modifiers are null unless includeDetails is true.
  • Prices are US dollars as numbers, never strings.
  • No credentials, no proxy and no browser are required.

⚠️ Disclaimer

This actor collects publicly available menu information published by Wendy's for its United States restaurants. It does not access private, personal or authenticated data, and it does not attempt to bypass any authentication. Menu content, prices, calorie values and trademarks belong to their respective owners; Wendy's® is a registered trademark of Quality Is Our Recipe, LLC, and this actor is not affiliated with, endorsed by or sponsored by Wendy's. Prices and availability change frequently and by location — treat every row as a snapshot taken at scrapedAt, and verify anything you rely on for a purchase or a dietary decision against the restaurant directly. Calorie values are reproduced as published and must not be treated as medical advice. You are responsible for using the output in line with applicable law and Wendy's terms.

SEO Keywords

wendys menu scraper, wendys prices api, wendys menu data, wendys calories scraper, fast food menu scraper, restaurant menu api, wendys store locator api, menu price monitoring, fast food price tracking, baconator price by location, wendys combo prices, quick service restaurant data, menu item pricing dataset, restaurant price intelligence, store level menu pricing, competitive menu analysis, wendys frosty price, us fast food data, wendys nutrition data, menu extraction api