Food Delivery Scraper avatar

Food Delivery Scraper

Pricing

from $1.00 / 1,000 menu items

Go to Apify Store
Food Delivery Scraper

Food Delivery Scraper

Scrape restaurant listings, full menus, prices, and reviews from Wolt, Glovo, Deliveroo, Just Eat, DoorDash, and Instacart by URL, keyword, or delivery address. Export data, run via API, schedule and monitor runs, or integrate with other tools.

Pricing

from $1.00 / 1,000 menu items

Rating

0.0

(0)

Developer

E Commerce

E Commerce

Maintained by Apify

Actor stats

0

Bookmarked

5

Total users

2

Monthly active users

18 hours ago

Last modified

Categories

Share

Food Delivery Scraper collects restaurant listings, full menus with prices, and customer reviews from six major food delivery platforms: Wolt, Glovo, Deliveroo, Just Eat, DoorDash, and Instacart. Give it a listing URL, a restaurant URL, a keyword, or a delivery address, and it returns structured records: dish name, offers.price, image, description, restaurant rating, address, delivery time, and review text with author and date. No login, no manual copy-paste.

Food Delivery Scraper: menus, prices, and reviews from six delivery platforms

What does Food Delivery Scraper do?

  • Extracts restaurant listings: name, URL, rating, cuisine, and location.
  • Pulls complete menus: every category, dish, description, price, and photo.
  • Collects customer reviews: author, date, rating, and full text on Deliveroo and Just Eat.
  • Runs three output modes: menu items, restaurants (sellers), or reviews, all joinable on the restaurant URL.
  • Accepts four input types: listing URLs, restaurant URLs, keyword search, or delivery address.
  • Returns clean JSON, ready to export to CSV, Excel, JSON, or Google Sheets.

Which food delivery platforms does it support?

PlatformListingsMenusReviews
WoltAggregate rating only
GlovoAggregate rating only
Deliveroo✅ Full review text
Just Eat (UK)✅ Full review text
DoorDash✅ (keyword)Not available
Instacart✅ (keyword)Not available

Wolt and Glovo do not publish individual review text, so an aggregate rating and rating count are returned with the restaurant and menu data instead.

Sample menu-item output with name, price, category, restaurant, and rating

Why scrape food delivery data?

  • Menu price monitoring: track how competitors price the same dish across cities and platforms.
  • Market research: map restaurant density, cuisine mix, and ratings for a delivery area before you expand.
  • Menu intelligence: see which dishes, categories, and price points dominate a market.
  • Review analysis: pull thousands of reviews to surface recurring complaints or standout items.
  • Aggregator building: power a comparison site or dashboard with fresh menu and rating data.

How do I scrape food delivery data?

  1. Open Food Delivery Scraper and click Try for free.
  2. Choose your input: paste Delivery listing URLs for a whole area, add Restaurant detail URLs for specific venues, or type a Keyword with a Delivery address.
  3. Pick What to scrape: Menu items, Restaurants (sellers), or Reviews.
  4. Set Total maximum results to cap run time and cost.
  5. Click Start, then export the dataset as CSV, JSON, or Excel when the run finishes.

Food Delivery Scraper input panel

What input does Food Delivery Scraper accept?

FieldTypeWhat it does
Delivery listing URLsArrayArea or category pages. Scrapes every restaurant found on them.
Restaurant detail URLsArrayIndividual restaurant pages with full menu and metadata.
Keyword for searchStringFinds dishes across the selected marketplaces.
Marketplaces for keyword searchArrayWhich platforms the keyword runs against.
Delivery address or locationStringLocalizes keyword results (city, ZIP, or address).
What to scrapeSelectMenu items, Restaurants (sellers), or Reviews.
Total maximum resultsIntegerCaps the total items collected.

Example input for a keyword search:

{
"keywordDelivery": "sushi",
"marketplacesDelivery": ["www.doordash.com", "deliveroo.co.uk"],
"addressDelivery": "New York",
"scrapeModeDelivery": "Menu items",
"maxDeliveryResults": 200
}

To scrape a whole delivery area instead, drop the listing URL into deliveryListingUrls and set scrapeModeDelivery to Restaurants (sellers).

What data does Food Delivery Scraper extract?

Menu items and restaurants follow a product schema, and reviews follow a review schema. Everything joins on the restaurant url.

FieldDescription
urlRestaurant or dish page URL
nameDish or restaurant name
offers.priceItem price with currency
imageDish or restaurant image URL
descriptionDish or restaurant description
additionalPropertiesMenu, cuisine, delivery time, minimum order, coordinates
aggregateRatingRating value and review count
author, datePublished, reviewBody, reviewRatingReview fields

Sample menu-item output:

{
"url": "https://deliveroo.co.uk/menu/london/soho/pizza-pilgrims",
"name": "Margherita",
"offers": { "price": 9.5, "priceCurrency": "GBP" },
"image": "https://.../margherita.jpg",
"description": "San Marzano tomato, fior di latte, basil",
"additionalProperties": { "category": "Pizza", "restaurantRating": 4.7 }
}

Sample review output with author, date, rating, and review text

How do I run the scraper via API or schedule it?

Every run is available through the Apify API. Start a run and fetch results in a few lines:

curl -X POST "https://api.apify.com/v2/acts/e-commerce~food-delivery-scraper/runs?token=YOUR_TOKEN" \
-H "Content-Type: application/json" \
-d '{ "keywordDelivery": "pizza", "addressDelivery": "Berlin", "maxDeliveryResults": 100 }'
import { ApifyClient } from 'apify-client';
const client = new ApifyClient({ token: 'YOUR_TOKEN' });
const run = await client.actor('e-commerce/food-delivery-scraper').call({
keywordDelivery: 'pizza',
addressDelivery: 'Berlin',
maxDeliveryResults: 100,
});
const { items } = await client.dataset(run.defaultDatasetId).listItems();
console.log(items);

Use the Schedules tab to run the scraper hourly, daily, or weekly, and connect webhooks or integrations such as Google Sheets, Make, Zapier, and Slack to push fresh data wherever you need it.

Run on a schedule and push data to integrations

How much does it cost to scrape food delivery data?

Food Delivery Scraper uses a pay-per-event pricing model: you pay for the results you collect, platform usage is included, and there is no monthly rental fee. Start on the free tier, then use Total maximum results to keep any run within budget.

Pay-per-event pricing

Troubleshooting: common issues and solutions

IssueSolution
No results foundWiden the keyword (for example, "burger" instead of "double bacon burger"), or confirm the platform delivers to your address.
Keyword search returns 0 itemsSet a Delivery address and select at least one marketplace.
Reviews are emptyReview text is available only on Deliveroo and Just Eat. Other platforms return an aggregate rating.
Run takes too longLower Total maximum results, or scrape fewer listing URLs per run.
Prices missing on some itemsA few restaurants hide prices until checkout, so those items return without offers.price.
Wrong city or currencyMatch the URL region (for example, deliveroo.fr) or the address to the market you want.

Export results as JSON, CSV, Excel, or Google Sheets, or through the API

Scraping publicly available data (restaurant listings, menus, prices, and public reviews) is legal in most jurisdictions. This scraper collects only public information and never accesses private accounts. You are responsible for how you use the data, so review each platform's terms and applicable laws such as GDPR before scraping personal data like reviewer names.

Frequently asked questions

Which platforms can I scrape? Wolt, Glovo, Deliveroo, Just Eat (UK), DoorDash, and Instacart. Deliveroo and Just Eat return full review text, and the others return aggregate ratings.

Can I scrape a whole city at once? Yes. Paste the area listing URLs and choose "Restaurants (sellers)" for every venue, or "Menu items" for every dish.

Do I need to log in or provide cookies? No. The scraper works with public pages only.

Can I use this scraper with the API? Yes. Start runs and fetch datasets through the Apify API or the JavaScript and Python clients shown above.

Does it work with the Apify MCP server? Yes. The Actor is available through the Apify MCP server, so AI agents and assistants like Claude can call it directly and receive structured data.

What formats can I export? JSON, CSV, Excel, HTML, or Google Sheets, plus webhooks and Make or Zapier integrations.

How fresh is the data? Every run scrapes live pages, so results reflect current menus, prices, and reviews.

Changelog

  • Added a scrape-mode selector: choose Menu items, Restaurants (sellers), or Reviews.
  • Added Just Eat menu prices with per-item currency handling.
  • Consolidated the menu-item address into a single full-address field.

Feedback

Found a bug or need another platform? Open an issue on the Actor's Issues tab. Feature requests help shape the roadmap.