Just Eat Scraper - UK Restaurants, Ratings & Delivery
Pricing
from $1.49 / 1,000 results
Just Eat Scraper - UK Restaurants, Ratings & Delivery
Scrape restaurants from Just Eat UK by postcode: name, cuisines, star rating, delivery fee, minimum order, delivery ETA, live offers, address and coordinates. Every restaurant in an area in one pass. Export to JSON, CSV or Excel.
Pricing
from $1.49 / 1,000 results
Rating
0.0
(0)
Developer
Haketa
Maintained by CommunityActor stats
0
Bookmarked
1
Total users
0
Monthly active users
8 days ago
Last modified
Categories
Security
Limited permissionsShare
Just Eat Scraper 🍔🇬🇧 — Restaurants, Ratings, Delivery Fees & Offers by Postcode
The fastest way to scrape Just Eat UK — one of Britain's largest food-delivery platforms — into clean, structured data. This Just Eat scraper turns any UK postcode into a dataset of every restaurant that delivers to or collects in that area, with cuisines, star rating, number of ratings, delivery fee, minimum order, delivery & collection ETA, live offers, address, coordinates and live open status. No login, no coding — it reads the same Just Eat API the website uses and returns ready-to-use records.
Export to JSON, CSV, Excel, or API.
Built for food-delivery analysts, restaurant & aggregator competitors, delivery marketplaces, FMCG/CPG brands, market researchers, investors and agencies that need live UK restaurant, pricing and offer data by area.
🔎 Why scrape Just Eat?
Just Eat is one of the UK's biggest online food-delivery marketplaces, listing tens of thousands of restaurants and takeaways across every city and town. Each listing is a goldmine of commercial signal: what a restaurant charges to deliver, the minimum order it will accept, how fast it delivers, how customers rate it, which cuisines it serves and whether it is running a promotion right now. That data drives pricing decisions, competitive strategy, supply mapping and lead lists — but it is spread across thousands of individual pages that change throughout the day.
Collecting it by hand is painful and pointless: you would have to open the Just Eat app, type in a postcode, scroll an endless list and copy fields one restaurant at a time — and it would all be stale within hours as restaurants open, close, change fees and launch offers. There is also no official public Just Eat API, so there is no sanctioned way to pull the data in bulk.
This Just Eat scraper solves that. Give it one UK postcode and it returns every restaurant serving that area in a single pass — often hundreds to nearly 2,000 restaurants per postcode — as clean, de-duplicated JSON. It behaves like an unofficial Just Eat API: postcode in, structured restaurant data out.
Common reasons people scrape Just Eat:
- 📊 Market research — map restaurant density, cuisine mix and delivery pricing across a city or region.
- 🥊 Competitor monitoring — track rivals' ratings, delivery fees, minimum orders and live offers over time.
- 🎯 Lead generation — build targeted lists of restaurants and takeaways by area and cuisine for B2B sales.
- 💷 Pricing & fee analytics — benchmark delivery costs, minimum spends and ETAs at scale.
- 📍 Location & expansion analysis — assess local supply and competition before opening or partnering.
- 🏷️ Promotion tracking — monitor who is discounting, and by how much, across an area.
- 🍱 FMCG / brand intelligence — understand where and how brands and cuisines are represented on the platform.
✨ What this Just Eat scraper does
Give it a postcode (or several) and it will:
- 🔎 Return every restaurant that delivers to or collects in that area — in one pass, no page-by-page crawling.
- ⭐ Include the star rating and the total number of ratings for each restaurant.
- 🚚 Capture full delivery intelligence: delivery fee, minimum order value, delivery ETA range and collection ETA.
- 🏷️ Add live offers and deals (percentage off, stamp cards, spend-and-save) when a restaurant is running a promotion.
- 🍜 List each restaurant's cuisines (e.g. Pizza, Chinese, Halal, Burgers, Indian).
- 📍 Provide address, city, postcode and latitude/longitude for mapping and geo-analysis.
- 🟢 Flag live open status for delivery, collection and pre-order, plus an
isTemporarilyOfflineflag. - ⏰ Include a next-availability timestamp so you can see when a currently-closed restaurant reopens for delivery.
- 🚩 Expose new-listing and premier-partner flags and the drive distance from the searched area.
- 🍽️ Let you filter by cuisine and keep only restaurants open now for delivery.
- 🧹 Deliver clean, deduplicated, structured records — each restaurant once, keyed by its unique Just Eat ID.
- ⬇️ Export to JSON, CSV, Excel, HTML, RSS or via API in one click.
Only fields the Just Eat API actually returns are included — no invented data, no HTML clutter.
🎯 Use cases
- Food-delivery market research — size a market by counting restaurants, cuisines and price points per postcode.
- Aggregator & restaurant competitor monitoring — watch ratings, fees, minimums and offers across a whole city.
- Lead generation for B2B — sell to restaurants/takeaways using fresh, cuisine-segmented contact targets by area.
- Delivery-fee & minimum-order benchmarking — compare
deliveryCostandminimumDeliveryValueat scale. - Promotion & discount tracking — capture live
dealsto see who is running offers and how aggressive they are. - Location & expansion planning — assess supply and competition before launching a brand or dark kitchen.
- Investor & analyst dashboards — feed clean Just Eat data into BI tools for coverage and pricing trends.
- Geo & logistics analysis — use coordinates and drive distances to model catchment and delivery radius.
📥 Input
The actor accepts a simple, no-code input form. The only required field is postcodes.
Option A — by postcode (easiest)
{"postcodes": ["EC4M7RF", "M1", "B1"],"maxItems": 1000}
Option B — filter by cuisine, open restaurants only
{"postcodes": ["SW1A"],"cuisines": ["Pizza", "Italian"],"onlyOpenForDelivery": true,"maxItems": 500}
Input parameters
| Field | Type | Description |
|---|---|---|
postcodes | array | Required. One or more UK postcodes or outcodes to search (e.g. EC4M7RF, SW1A, M1, B1). Each returns every restaurant that delivers to or collects in that area. |
cuisines | array | Optional cuisine filter (e.g. Pizza, Chinese, Indian, Halal, Burgers). Leave empty for all cuisines. Matching is case-insensitive and substring-based. |
onlyOpenForDelivery | boolean | Keep only restaurants currently open for delivery. Default false. |
maxItems | integer | Maximum number of restaurants to collect across all postcodes. Default 1000. |
proxyConfiguration | object | Proxy settings. The actor runs reliably without a proxy (the default). For heavy multi-postcode jobs you can enable Apify Proxy — pick the Residential group with country GB. |
📤 Output
Each restaurant is returned as one clean JSON object. Empty/unavailable fields are omitted to keep records tidy. Example from a live run (postcode EC4M7RF):
{"id": "158035","name": "Tops Pizza - Islington","url": "https://www.just-eat.co.uk/restaurants-tops-pizza---islington/menu","cuisines": ["Pizza", "Italian"],"rating": 5,"ratingCount": 2408,"address": "Ground Floor 22 Penton Street","city": "London","postalCode": "N1 9PS","latitude": 51.53225,"longitude": -0.11115,"deliveryCost": 0,"minimumDeliveryValue": 9.99,"deliveryEtaRange": "20-35","collectionEtaMinutes": 10,"driveDistanceMeters": 1844,"isDelivery": true,"isCollection": true,"isOpenNowForDelivery": true,"isOpenNowForCollection": false,"isOpenNowForPreorder": false,"nextDeliveryAvailability": "2026-11-02T11:00:00","isNew": false,"isPremier": false,"isTemporarilyOffline": false,"logoUrl": "https://d30v2pzvrfyzpo.cloudfront.net/uk/images/restaurants/158035.gif","searchedPostcode": "EC4M7RF"}
Output fields
| Field | Description |
|---|---|
id | Unique Just Eat restaurant ID (the natural key — used for deduplication). |
name | Restaurant name. |
url | Restaurant page URL on just-eat.co.uk. |
cuisines | Array of cuisine tags (e.g. Pizza, Italian, Halal). |
rating | Star rating (0–5). |
ratingCount | Total number of customer ratings. |
address / city / postalCode | Restaurant street address, city and postcode. |
latitude / longitude | Geo-coordinates for mapping. |
deliveryCost | Delivery fee in GBP (0 means free delivery). |
minimumDeliveryValue | Minimum order value required for delivery (GBP). |
deliveryEtaRange | Delivery ETA as a "lower-upper" minute range (e.g. "20-35"). |
deliveryEtaMinutes | Single-estimate delivery ETA in minutes — present when the API provides a point estimate. |
collectionEtaMinutes | Estimated collection time in minutes — present when collection is offered. |
driveDistanceMeters | Distance from the searched area to the restaurant. |
isDelivery / isCollection | Whether delivery / collection is offered. |
isOpenNowForDelivery / isOpenNowForCollection / isOpenNowForPreorder | Live open-status flags. |
isTemporarilyOffline | Whether the restaurant is temporarily offline. |
nextDeliveryAvailability | ISO timestamp of when delivery next opens (useful for currently-closed restaurants). |
isNew / isPremier | New-listing / premier-partner flags. |
deals | Array of live offers (type + description) — present only when a restaurant is running a promotion. |
logoUrl | Restaurant logo image URL. |
searchedPostcode | The postcode this result came from. |
Field coverage (verified on a fresh 500-restaurant run): all core fields — id, name, url, cuisines, rating, ratingCount, address, city, postalCode, latitude, longitude, deliveryCost, minimumDeliveryValue, logoUrl and every status flag — were populated on 100% of records, with 0 duplicates. deliveryEtaRange and nextDeliveryAvailability populated on ~99% of records; collectionEtaMinutes on ~70% (only where collection is offered). deliveryEtaMinutes and deals are data-dependent: the Just Eat API returns them only for some restaurants / when a promotion is live, so they appear "when available" rather than on every record. That is expected behaviour, not missing data.
You can download the dataset as JSON, CSV, Excel, HTML, RSS or XML, or fetch it programmatically through the Apify API.
🔁 Pagination & scale
There is no page-by-page crawling — the actor calls Just Eat's area-discovery endpoint, which returns every restaurant for a postcode in a single response. In testing, one dense London postcode (EC4M7RF) alone returned 1,978 restaurants, and other UK cities returned 500–1,000+ each:
- Add more postcodes to the
postcodesarray to widen coverage across a city or region. - Results are deduplicated by restaurant
id, so overlapping postcodes never create duplicate rows. - Use
maxItemsto cap the total collected across all postcodes (default1000). - A full 500-restaurant run completes in a few seconds; collecting several whole cities still takes only one request per postcode.
Because each postcode is a single request, scaling is simply a matter of how many postcodes you feed in — not how deep the actor has to paginate.
⚙️ How to use
- Click Try for free / Start on the actor's Apify page.
- Enter one or more UK postcodes or outcodes (e.g.
EC4M7RF,M1,SW1A). - (Optional) Add a cuisine filter or tick Only open for delivery now.
- Set
maxItemsto how many restaurants you want. - Click Save & Start.
- When the run finishes, open the Dataset tab and Export to JSON, CSV, Excel, HTML, RSS or XML — or pull it via the Apify API.
You can also run it on a schedule (daily/weekly) to keep a live restaurant, fee and offer feed, call it from your backend with the Apify API / SDKs, or wire results into Make, Zapier, Google Sheets, Airtable, Slack or any webhook.
Call via API
curl -X POST "https://api.apify.com/v2/acts/YOUR_ACTOR_ID/runs?token=YOUR_TOKEN" \-H "Content-Type: application/json" \-d '{"postcodes": ["EC4M7RF"],"maxItems": 1000}'
import { ApifyClient } from 'apify-client';const client = new ApifyClient({ token: 'YOUR_TOKEN' });const run = await client.actor('YOUR_ACTOR_ID').call({postcodes: ['SW1A', 'M1'],cuisines: ['Pizza'],maxItems: 500,});const { items } = await client.dataset(run.defaultDatasetId).listItems();console.log(items);
💡 Tips
- Use outcodes for breadth. A short outcode like
M1,B1orSW1Acovers a wide area and returns the most restaurants. - Combine postcodes for a city. Add several postcodes to map a whole city — results are deduplicated by
idautomatically. - Filter by cuisine for focus. Pass
cuisines(e.g.["Pizza", "Halal"]) to keep only the segment you're analysing. - Use
deliveryEtaRangeandnextDeliveryAvailabilityas your primary timing fields — they're populated on nearly every record;deliveryEtaMinutesis a bonus point-estimate when available. - Run without a proxy for the fastest results; switch to Residential (GB) only for very large multi-postcode jobs.
- Schedule for freshness. Fees, ETAs, ratings and offers change throughout the day — a scheduled run keeps your data current.
❓ FAQ
Is scraping Just Eat legal? This actor collects publicly available listing data for lawful purposes such as market research, analytics and lead generation. You are responsible for how you use the data — respect Just Eat's Terms of Service and applicable laws, and don't use it for spam or unlawful purposes.
Do I need a Just Eat account or API key? No. Just provide one or more UK postcodes. There's no login and no API key.
Is there an official Just Eat API? Just Eat doesn't offer a public API, so this actor acts as an unofficial Just Eat API: send a postcode, get back clean JSON for every restaurant in that area.
How many results can I get, and how fast?
A single dense postcode can return hundreds to nearly 2,000 restaurants in one pass — a 500-restaurant run finishes in a few seconds. Add more postcodes for wider coverage and use maxItems to cap the total.
Does it include delivery fees, minimum order and ETA?
Yes — deliveryCost, minimumDeliveryValue, deliveryEtaRange and collectionEtaMinutes are included for each restaurant (ETA fields appear when the API provides them).
Does it include ratings and offers?
Yes — rating and ratingCount are on every record. Live deals (percentage off, stamp cards, spend-and-save) are included when a restaurant is running a promotion.
Can I see when a closed restaurant reopens?
Yes. Each record includes nextDeliveryAvailability (an ISO timestamp) plus live isOpenNowForDelivery, isOpenNowForCollection and isOpenNowForPreorder flags.
Can I filter by cuisine or open-now?
Yes — pass cuisines to keep only matching restaurants, and set onlyOpenForDelivery: true to keep only those open for delivery right now.
Are results deduplicated?
Yes. Each restaurant is uniquely identified by its id and appears once per run, even across overlapping postcodes.
Do I need a proxy? No. The actor reads a fast public endpoint and runs reliably without a proxy by default, and automatically falls back to a direct request if a proxy IP is ever throttled. For very large jobs you can enable Residential (GB) proxy for IP rotation.
What export formats are supported? JSON, CSV, Excel, HTML, RSS and XML — via the dashboard or the API.
How fresh is the data? Every run returns the current live listings, fees, ETAs and offers. Schedule the actor to keep your dataset up to date.
🔗 Related scrapers
Scraping other food-delivery and restaurant platforms? Pair the Just Eat scraper with these actors to build a cross-platform view of restaurants, menus, pricing, ratings and offers:
- Wongnai Scraper — restaurants, reviews and ratings from Wongnai.
- Grubhub Scraper — US restaurants, delivery fees and menus from Grubhub.
- DoorDash Scraper — restaurants, stores and delivery data from DoorDash.
⚖️ Legal & responsible use
This actor is intended for lawful data collection such as market research, analytics and lead generation. You are responsible for how you use the collected data. Only collect publicly available information, respect the target website's Terms of Service and robots.txt, and comply with all applicable laws and regulations. Do not use the data for spam or any unlawful purpose. This actor is an independent tool and is not affiliated with, endorsed by, or connected to Just Eat or its parent companies. All trademarks belong to their respective owners.
🛟 Support
Questions, feature requests or an issue with the data? Open an issue on the actor's page — feedback is welcome and helps improve the tool.
⭐ If this Just Eat scraper saves you time, please leave a review — it really helps!