🍴 Uber Eats Scraper [PPR] avatar

🍴 Uber Eats Scraper [PPR]

Pricing

from $4.99 / 1,000 results

Go to Apify Store
🍴 Uber Eats Scraper [PPR]

🍴 Uber Eats Scraper [PPR]

🍴 Uber Eats Scraper [PPR] pulls restaurant and menu data from Uber Eats with precision. 🚀 Great for lead gen, market research, and competitive analysis. ⚡ Fast, reliable, and SEO-ready data—automate insights today!

Pricing

from $4.99 / 1,000 results

Rating

0.0

(0)

Developer

Scraper Engine

Scraper Engine

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

a month ago

Last modified

Share

Fast, cost-effective Uber Eats scraper that turns a search query + location — or a list of store URLs — into clean, structured store and menu data. Built for scale, with an automatic anti-block proxy ladder and pay-per-result pricing, so you only pay for stores you actually get.

✨ Why Choose Us?

  • 🎯 Two ways to scrape — search by address (+ optional query) or paste store URLs directly.
  • 🛡️ Self-healing connection — starts direct (cheapest), and only escalates to datacenter → residential proxies when Uber Eats blocks. No fiddly config.
  • 🍕 Deep menu data — full menu sections, items, prices, images, and optional customizations (modifiers / add-ons).
  • Live results — every store is saved the instant it's collected; a crash never loses progress.
  • 💸 Pay per result — billed per store, not per minute.

🔑 Key Features

FeatureDescription
📍 Address searchFind stores near any address, optionally filtered by query
🏪 Store verticalsRestaurants, grocery, convenience, pharmacy, alcohol, retail & more
🔗 URL modeScrape specific Uber Eats store pages in bulk
🍔 Menu extractionSections, items, prices, availability, tags, images
🧩 CustomizationsOptional full modifier/add-on trees per item
⭐ Reviews & ratingsStore rating, review count, featured reviews
🛡️ Proxy fallbackDirect → Datacenter → Residential, sticky once escalated
🌐 55+ localesScrape Uber Eats across the US, EU, LATAM, APAC and more

📥 Input

Choose one mode. If urls is provided, address and query are ignored.

{
"locale": "en-US",
"address": "1600 Pennsylvania Avenue, Washington DC",
"query": "Pizza",
"storeType": "RESTAURANTS",
"maxRows": 10,
"urls": [],
"getMenuCustomizations": false,
"proxyConfiguration": { "useApifyProxy": true },
"concurrency": 5,
"maxRetries": 3
}
FieldTypeDescription
localestringUber Eats locale, e.g. en-US, fr-FR. Applies to both modes.
addressstringDelivery address to search around (search mode).
querystringOptional search term (cuisine, brand, dish).
storeTypestringVertical tab: ALL, RESTAURANTS, GROCERY, PHARMACY, …
maxRowsintegerMax stores in search mode (0 = all).
urlsarrayUber Eats store URLs to scrape directly (bulk).
getMenuCustomizationsbooleanFetch full customization trees per item.
proxyConfigurationobjectApify Proxy used for the datacenter → residential fallback.
concurrencyintegerStores scraped in parallel (1–20).
maxRetriesintegerRetries per blocked request (1–10).

📤 Output

Each dataset item is one store:

{
"title": "District Detroit Pizza",
"sanitizedTitle": "District Detroit Pizza",
"phoneNumber": "+12025551234",
"emails": [],
"cuisineList": ["Pizza"],
"location": { "address": "…", "city": "Washington", "country": "US", "latitude": 38.9, "longitude": -77.0 },
"currencyCode": "USD",
"rating": { "ratingValue": 4.8, "reviewCount": "260+" },
"storeAvailablityStatus": "AVAILABLE",
"isOpen": true,
"etaRange": "Delivered in 20 to 30 min",
"hours": [],
"categories": ["$", "Pizza"],
"categoriesLink": [],
"menu": [ { "catalogName": "Pizzas", "catalogItems": [] } ],
"logoImageUrl": "https://…",
"heroImageUrl": "https://…",
"uuid": "…",
"url": "https://ubereats.com/store/…",
"merchantType": "MERCHANT_TYPE_RESTAURANT",
"distance": { "text": "2.2 mi", "accessibilityText": "2.2 miles" },
"supportedDiningModes": [],
"storeReviews": [],
"featuredReviews": []
}

🚀 How to Use (Apify Console)

  1. Log in at console.apify.comActors.
  2. Open 🍴 Uber Eats Scraper [PPR].
  3. Either enter an address (and optional query + store type), or paste store URLs.
  4. Click Start.
  5. Watch stores stream into the Output tab in real time.
  6. Export to JSON / CSV / XLSX / Excel when the run completes.

🤖 Use via API

curl -X POST "https://api.apify.com/v2/acts/<ACTOR_ID>/run-sync-get-dataset-items?token=$APIFY_TOKEN" \
-H "Content-Type: application/json" \
-d '{"address":"1600 Pennsylvania Avenue, Washington DC","query":"Pizza","storeType":"RESTAURANTS","maxRows":10}'

🎯 Best Use Cases

  • 📊 Competitor menu & price monitoring
  • 🍽️ Restaurant & store discovery / market research
  • 📈 Lead lists of local merchants by category and area
  • 🗺️ Delivery coverage and ETA analysis across locations

💰 Pricing

Pay per result — you are billed a flat price for each store written to the dataset (the apify-default-dataset-item event). No charge for stores that fail to collect. Failed targets never cost you anything; partial runs still return everything collected so far.

❓ FAQ

Do I need a proxy? No. The scraper starts direct and only uses Apify Proxy if Uber Eats blocks it.

Search returns fewer than maxRows? Uber Eats only lists so many stores for a given area/query — that's the ceiling, not a bug.

Why are some menus empty? Some stores (e.g. certain alcohol/convenience listings) expose no public catalog; the store record is still returned.

Which countries are supported? Anywhere Uber Eats operates — pick the matching locale (55+ supported).

🛟 Support & Feedback

Open an issue on the Actor's Issues tab in Apify Console with your run ID and input, and we'll take a look.


Data is collected only from publicly available Uber Eats pages. You are responsible for compliance with applicable laws and Uber's Terms of Service.