Uber Eats Scraper — Restaurants, Menus, Prices & Ratings avatar

Uber Eats Scraper — Restaurants, Menus, Prices & Ratings

Pricing

from $2.00 / 1,000 stores

Go to Apify Store
Uber Eats Scraper — Restaurants, Menus, Prices & Ratings

Uber Eats Scraper — Restaurants, Menus, Prices & Ratings

Scrape Uber Eats restaurants for any delivery address: search by food or list all stores nearby, or paste store URLs. Rating, review count, ETA, price level, cuisines, address, hours, phone, promotions and full menus with item prices.

Pricing

from $2.00 / 1,000 stores

Rating

0.0

(0)

Developer

Technical Dost Solutions

Technical Dost Solutions

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

6 days ago

Last modified

Share

Uber Eats Scraper extracts restaurants and full menus from Uber Eats for any delivery location in the countries Uber Eats serves. Enter an address, city or ZIP code and what to search (e.g. sushi, burger, pizza), or leave the search empty to list all stores delivering to that address. You can also paste store URLs. For each store you get the rating, number of ratings, delivery ETA, price level, cuisines, full address with coordinates, opening hours, business phone, promotions, and optionally the complete menu with sections, item prices, descriptions, sold-out flags and photos. No login or API key.

What you get

  • Search by food or cuisine for any address, or list all stores nearby (Uber's home feed).
  • Store URLs supported (ubereats.com/store/...).
  • Store details: rating and count, ETA, price level ($-$$$$), cuisines, address, latitude/longitude, hours, phone, promotion badges, brand.
  • Full menus: section, item name, price, description, options flag, sold-out flag and image.
  • Relevance check: stores Uber adds to results that don't mention your term in name, cuisine or menu are skipped and not charged.
  • Pay per store; menus cost extra only when you include them. No start fee.

How to use Uber Eats Scraper

  1. Enter a Delivery location (e.g. Times Square, New York or 1600 Amphitheatre Pkwy, Mountain View, CA).
  2. Add Search terms (e.g. sushi) or leave empty to get all stores nearby; and/or paste Store URLs.
  3. Choose whether to Include full menus, and set Max stores per search.
  4. Run and export to JSON, CSV or Excel, or send to Google Sheets, Make, Zapier or an AI agent.

Input example

{
"location": "Times Square, New York",
"searchTerms": [
"sushi",
"burger"
],
"maxStoresPerSearch": 50,
"includeMenu": true
}

All fields are described in the Input tab.

Output example

{
"storeUuid": "45f9f355-d4e5-4ac0-a1d1-43e92ca63137",
"name": "RA Sushi Times Square (3043)",
"url": "https://www.ubereats.com/store/ra-sushi-times-square-3043/RfnzVdTlSsCh0UPpLKYxNw",
"rating": 4.52,
"ratingCount": "120+",
"etaMinMinutes": 30,
"etaMaxMinutes": 49,
"isOrderable": true,
"availability": "ACCEPTING_ORDERS",
"promotion": "$12 off $65+",
"badges": [
"30 min",
"$12 off $65+"
],
"imageUrl": "https://tb-static.uber.com/prod/image-proc/processed_images/951133982681646f14689194ef70979f/30be7d11a3ed6f6183354d1933fbb6c7.jpeg",
"priceBucket": "$$",
"cuisines": [
"Japanese",
"Sushi",
"Asian"
],
"address": "1501 Broadway, New York, NY 10036",
"streetAddress": "1501 Broadway",
"city": "New York",
"region": "NY",
"postalCode": "10036",
"country": "US",
"latitude": 40.7566,
"longitude": -73.9866,
"phone": "+12125551234",
"isOpen": true,
"workingHoursTagline": "Open until 11:00 PM",
"hours": [
{
"days": "Every day",
"open": "11:00-23:00"
}
],
"etaText": "25–40 Min",
"deliveryFeeText": null,
"isDeliveryThirdParty": false,
"currency": "USD",
"brand": "RA Sushi",
"menuItemsCount": 183,
"menu": [
{
"itemUuid": "7f6c...",
"name": "Spicy Tuna Roll",
"section": "Sushi Rolls",
"price": 12.95,
"priceText": "$12.95",
"description": "Spicy tuna, cucumber, scallions.",
"isSoldOut": false,
"hasOptions": false,
"imageUrl": null
}
],
"deliveryLocation": "Times Square, New York City, NY 10036, USA",
"source": "sushi",
"scrapedAt": "2026-10-26T21:40:00.000Z"
}

Output fields

FieldDescription
storeUuidUber Eats store ID.
nameStore name.
urlStore URL.
ratingAverage rating, 1-5.
ratingCountNumber of ratings as shown, e.g. 15,000+.
etaMinMinutesDelivery ETA, minimum minutes.
etaMaxMinutesDelivery ETA, maximum minutes.
isOrderableOrderable now.
availabilityAvailability state.
promotionPromotion badge, e.g. $12 off $65+.
badgesAll badges shown on the card.
imageUrlStore image.
priceBucketPrice level, $ to $$$$.
cuisinesCuisines and store type.
addressFull address.
streetAddressStreet address.
cityCity.
regionState or region.
postalCodePostal code.
countryCountry code.
latitudeLatitude.
longitudeLongitude.
phoneBusiness phone.
isOpenOpen now.
workingHoursTaglineE.g. Open until 10:45 PM.
hoursOpening hours by day range (24h).
etaTextETA text from the store page.
deliveryFeeTextDelivery fee text, when shown.
isDeliveryThirdPartyStore's own couriers.
currencyMenu currency.
brandChain or brand.
menuItemsCountMenu items saved.
menuMenu items: name, section, price, description, sold-out flag, image.
deliveryLocationAddress Uber resolved your location to.
sourceSearch term, 'nearby' or the store URL.
scrapedAtWhen the row was scraped.

Export results as JSON, CSV, Excel, XML or HTML, or read them with the API.

Use cases

  • Restaurant market research: who delivers what, where, at which price level and rating.
  • Menu price monitoring and competitor benchmarking for restaurant brands and ghost kitchens.
  • Lead generation for restaurant suppliers, POS and delivery-software companies (business address and phone).
  • Food-tech and analytics: cuisine mix, ratings and ETAs by neighborhood; schedule recurring runs.
  • Promotion tracking: which stores run discounts like "$12 off $65+".

How much does Uber Eats Scraper cost?

This Actor uses pay-per-event pricing: $0.002 per store ($2 per 1,000). Platform usage is included. A full menu adds $0.001 per store (only when it is included). There is no start fee. Stores that Uber returns but that do not match your search term (e.g. a pet shop for "sushi") are skipped and not charged.

Set Maximum cost per run in the run options to cap your spend; the Actor stops when the limit is reached.

Use Uber Eats Scraper with AI agents (MCP)

Give Claude, ChatGPT, Cursor or any MCP client this Actor as a tool through the hosted Apify MCP server:

$claude mcp add --transport http apify "https://mcp.apify.com/?tools=technicaldost/uber-eats-scraper-restaurants-menus" --header "Authorization: Bearer YOUR_APIFY_TOKEN"

Or in a JSON MCP config:

{
"mcpServers": {
"apify": {
"url": "https://mcp.apify.com/?tools=technicaldost/uber-eats-scraper-restaurants-menus",
"headers": { "Authorization": "Bearer YOUR_APIFY_TOKEN" }
}
}
}

The tool is named technicaldost--uber-eats-scraper-restaurants-menus. Ask your agent, for example, to "run Uber Eats Scraper with {"location": "Times Square, New York", "searchTerms": ["sushi", "burger"], "maxStoresPerSearch": 50, "includeMenu": true}".

Run Uber Eats Scraper via API

curl -X POST "https://api.apify.com/v2/acts/technicaldost~uber-eats-scraper-restaurants-menus/run-sync-get-dataset-items?token=YOUR_APIFY_TOKEN" \
-H "Content-Type: application/json" \
-d '{"location": "Times Square, New York", "searchTerms": ["sushi", "burger"], "maxStoresPerSearch": 50, "includeMenu": true}'
from apify_client import ApifyClient
client = ApifyClient("YOUR_APIFY_TOKEN")
run = client.actor("technicaldost/uber-eats-scraper-restaurants-menus").call(run_input={"location": "Times Square, New York", "searchTerms": ["sushi", "burger"], "maxStoresPerSearch": 50, "includeMenu": True})
for item in client.dataset(run["defaultDatasetId"]).iterate_items():
print(item)
import { ApifyClient } from 'apify-client';
const client = new ApifyClient({ token: 'YOUR_APIFY_TOKEN' });
const run = await client.actor('technicaldost/uber-eats-scraper-restaurants-menus').call({"location": "Times Square, New York", "searchTerms": ["sushi", "burger"], "maxStoresPerSearch": 50, "includeMenu": true});
const { items } = await client.dataset(run.defaultDatasetId).listItems();
console.log(items);

Integrations

Schedule runs (daily, hourly) in Apify Console and send results to Google Sheets, Slack, Make, Zapier, n8n, Airbyte or your own webhook.

FAQ

Do I need an Uber Eats account?

No. The Actor uses the same public data the Uber Eats website shows logged-out visitors.

How should I write the location?

Like you would on ubereats.com: a street address, landmark or "City, State ZIP". A bare ZIP code can match a street number elsewhere; the resolved address is saved in deliveryLocation so you can check it.

Why do I get fewer stores than Uber shows?

Uber mixes in loosely related stores (grocery or pet shops for "sushi"). With full details on, the Actor keeps only stores whose name, cuisine or menu mention your term, and does not charge for the rest. They are listed in the ERRORS record.

What does ratingCount look like?

Uber shows rounded counts such as "15,000+"; the value is kept as text.

Are delivery fees included?

Uber shows fees only for some stores and addresses; when shown they are in deliveryFeeText or badges.

Which countries work?

Any Uber Eats market: enter a local address. Prices are in the store's currency (currency field).

The Actor collects publicly available information only and does not log in or bypass access controls. Use the data in line with the website's terms and the laws that apply to you, especially when processing personal data.

More tools from the same developer that work well together with this one: