DoorDash Scraper avatar

DoorDash Scraper

Pricing

from $0.50 / 1,000 customer reviews

Go to Apify Store
DoorDash Scraper

DoorDash Scraper

🍕 Scrape DoorDash store 🍕 listings, full menus, featured items, and customer 💬 Reviews. Supports location-aware search, multi-URL input, star distribution, delivery fees, pickup ETAs, and optional review extraction with item tagging.

Pricing

from $0.50 / 1,000 customer reviews

Rating

4.0

(1)

Developer

FlowExtract API

FlowExtract API

Maintained by Community

Actor stats

3

Bookmarked

67

Total users

18

Monthly active users

13 days ago

Last modified

Share

🍔 DoorDash Scraper

Scrape store listings, full menus, featured items, and customer reviews from DoorDash with location-aware search, multi-URL support, and optional review extraction.

🎬 Video Tutorial

Watch the Tutorial


Key Features

Comprehensive Store Data Extraction

  • Store Identity name, description, cuisine type, business entity, and tag taxonomy with priority scores
  • Ratings & Reviews average rating, total count, star distribution (1★–5★ breakdown), review count
  • Pricing & Fees price range, delivery fee, pickup fee, surge indicators, DashPass eligibility
  • Availability delivery ETA, pickup ETA, open/closed status, and full unavailability reasons
  • Capabilities delivery, pickup, group order, scheduling, catering, drone delivery flags
  • Location full address, GPS coordinates, distance from your delivery address, timezone
  • Media header image, cover image, and all UGC photo assets with UUIDs
  • Featured Items DoorDash's algorithmic "Featured Items" carousel with grid positions, recommendation signals, and badges (e.g. #1 Most liked)
  • Menu Categories all menu categories including the "Most Ordered" section, with per-item ratings, badges, and card position signals
  • Menu Hours daily open/close times per menu

Customer Reviews (Optional)

  • Full review text, star rating, verification status, and timestamps
  • Complete reviewer metadata display name, contribution count, reviewer tier
  • marked_up_review_text review text with <<taggedItemId=>> markup linking mentions to specific menu items by ID
  • Extracted tagged_item_ids for direct joins back to menu data

Two Scraping Modes

  • Search mode paste any DoorDash search URL and scrape multiple stores at once
  • Store mode paste a direct store URL and get full detail for that one store

Quick Start

Search for stores by keyword

{
"address": "350 5th Ave, New York, NY",
"startUrls": [
{ "url": "https://www.doordash.com/search/store/pizza?event_type=search" }
],
"maxResults": 10
}

Scrape a specific store

{
"address": "350 5th Ave, New York, NY",
"startUrls": [
{ "url": "https://www.doordash.com/store/joes-pizza-145565" }
]
}

Scrape stores with reviews

{
"address": "350 5th Ave, New York, NY",
"startUrls": [
{ "url": "https://www.doordash.com/search/store/sushi?event_type=search" }
],
"maxResults": 5,
"fetchReviews": true,
"maxReviews": 20
}

Multiple URLs in one run

{
"address": "Chicago, IL",
"startUrls": [
{ "url": "https://www.doordash.com/search/store/burgers?event_type=search" },
{ "url": "https://www.doordash.com/store/shake-shack-12345" }
],
"maxResults": 10,
"fetchReviews": true,
"maxReviews": 0
}

📋 Input Configuration

Input Parameters

ParameterTypeRequiredDefaultDescription
startUrlsarrayOne or more DoorDash search or store URLs
addressstring233 S Wacker Dr, Chicago, IL 60606Full street address the results are scoped to. See below this decides which stores you get.
maxResultsinteger10Max stores per URL. 0 = no limit. Ignored in store mode. Run total = this × number of URLs.
includeMenubooleantrueKeep every menu category and item. Turn off for a much smaller dataset featured items are kept either way.
fetchReviewsbooleanfalseFetch customer reviews for each store
maxReviewsinteger10Max reviews per store. 0 = all reviews. Only used when fetchReviews is enabled.

Address Field Why It Matters

DoorDash results are entirely location-dependent. A search for "pizza" in New York returns completely different stores from the same search in Los Angeles along with different fees, delivery ETAs and open/closed status.

Use a full street address. DoorDash resolves this field through a street-address lookup, not a city lookup. A city name on its own is matched against nearby business names and can silently place your run in another state Chicago, IL resolves to a business called "Chicago Illinois" in Bloomfield Hills, Michigan.

InputWhat DoorDash actually uses
Chicago, IL❌ Bloomfield Hills, MI
Paris, France❌ Santa Ana, CA
233 S Wacker Dr, Chicago, IL 60606✅ Chicago, IL

Every run logs the location it actually used, and warns when the resolved area doesn't match what you typed so you can always tell which city your data describes.

DoorDash operates in the US, Canada, Australia and New Zealand. An address outside those falls back to the closest match DoorDash recognises.

Leave the field blank to use the default Chicago street address.

Supported URL Formats

ModeExample URL
Searchhttps://www.doordash.com/search/store/pizza?event_type=search
Search with filtershttps://www.doordash.com/search/store/sushi?filterQuery-star_rating=4.6
Store (with slug)https://www.doordash.com/store/joes-pizza-new-york-145565
Store (numeric ID)https://www.doordash.com/store/145565
Store (full URL)https://www.doordash.com/store/145565?cursor=...
Locale-prefixedhttps://www.doordash.com/en-US/store/145565 https://www.doordash.com/en-CA/search/store/pizza
Without https://www.doordash.com/store/145565 /store/145565
Link to a file of URLsAny public .txt with one DoorDash URL per line (the Link to a file with URLs option)

DoorDash filter parameters in the URL (star rating, price range, DashPass, ETA, etc.) are honored automatically.

Full DoorDash store URLs containing cursor, ranking context, or other query parameters are fully supported. Extra parameters are ignored unless relevant.


📤 Output Structure

The Actor produces two record types in the same dataset, identified by the record_type field.

Store Record (record_type: "store")

One record per store. Contains store identity, ratings, fees, availability, location, media, featured items, and full menu categories all embedded in a single document.

{
"record_type": "store",
"store_id": "27544161",
"name": "Lena's Italian Kitchen",
"description": "Italian",
"business": {
"id": "29040069",
"name": "Lena's Italian Kitchen",
"vertical_id": 1
},
"tags": [
{ "id": "96", "name": "Italian", "priority": 99 },
{ "id": "9", "name": "Salads", "priority": 90 },
{ "id": "37", "name": "Casual Dining", "priority": 89 }
],
"rating": 4.6,
"num_ratings": 1167,
"num_ratings_display": "1k+",
"stars_distribution": { "one": 20, "two": 27, "three": 27, "four": 200, "five": 893 },
"num_reviews": 31,
"num_reviews_display": "30+ public reviews",
"price_range": 2,
"price_range_display": "$$",
"currency": "USD",
"is_dashpass": true,
"delivery_fee_display": "$0 delivery fee",
"delivery_fee_is_surging": false,
"pickup_fee_display": "No fees",
"is_open": false,
"asap_minutes": null,
"asap_status": {
"is_available": false,
"unavailable_status": "UNAVAILABLE_CLOSED",
"unavailable_reason": "CLOSED",
"display_reason": "Your address is not in this store's delivery area"
},
"asap_pickup_minutes": 15,
"asap_pickup_status": {
"is_available": false,
"display_status": "Ready by 11:50 AM",
"operating_summary": { ... }
},
"offers": {
"delivery": true,
"pickup": true,
"group_order": true,
"scheduling": true,
"catering": false,
"cannabis": false,
"drone_delivery": false
},
"flags": {
"is_newly_added": false,
"is_convenience": false,
"fulfills_own_deliveries": false
},
"address": "168 Mulberry St, New York, NY 10013, USA",
"city": "New York",
"state": "NY",
"country": "US",
"lat": 40.71956,
"lng": -73.99734,
"distance_from_consumer": "1.2 mi",
"timezone": "America/New_York",
"header_image": "https://img.cdn4dd.com/...",
"cover_image": "https://img.cdn4dd.com/...",
"cover_square_image": "https://img.cdn4dd.com/...",
"additional_images": [
{ "url": "https://img.cdn4dd.com/u/media/...", "photo_uuid": "abc123" }
],
"photo_count": "18 photos",
"current_menu_id": "64599346",
"menu_hours": [
{
"id": "64599346",
"name": "Menu",
"open_hours": [{ "open_time": "11:00:00", "close_time": "20:40:00" }],
"display_hours": "11:00 AM - 8:40 PM"
}
],
"featured_items": {
"collection_id": "recommended_items_for_you",
"collection_name": "Featured Items",
"collection_type": "mixed_grid_carousel",
"num_rows": 2,
"num_columns": 13,
"total_items": 25,
"items": [
{
"item_id": "11839454237",
"name": "Pasta Fiorentina",
"price_display": "$18.95",
"price_cents": 1895,
"image_url": "https://img.cdn4dd.com/...",
"rating_pct": 94,
"rating_count": 87,
"badges": [
{ "text": "#1 Most liked", "type": "most_liked_1", "placement": "ITEM" }
],
"recommendation": {
"container": "recommended_items_for_you",
"card_position": 0,
"row": 0,
"col": 0,
"menu_id": "64599346",
"category_id": "228676533"
}
}
]
},
"menu_categories": [
{
"category_id": "popular-items",
"category_name": "Most Ordered",
"is_popular": true,
"collection_type": "item_list",
"collection_position": 2,
"visible_item_count": 5,
"total_items": 12,
"items": [
{
"item_id": "11839454237",
"name": "Pasta Fiorentina",
"description": "Spinach, mushroom, roasted garlic in a light cream sauce",
"price_display": "$18.95",
"price_cents": 1895,
"image_url": "https://img.cdn4dd.com/...",
"quick_add_eligible": true,
"has_customization": true,
"rating_pct": 94,
"rating_count": 87,
"badges": [
{ "text": "#1 Most liked", "type": "most_liked_1", "placement": "ITEM" }
],
"card_position": 0,
"cell_type": "SQUARE",
"menu_id": "64599346",
"category_id": "228676533"
}
]
}
],
"url": "https://www.doordash.com/store/27544161",
"_source": "doordash-scraper",
"_scrapedAt": "2026-05-12T10:49:34.000Z"
}

Review Record (record_type: "review")

One record per customer review. The original DoorDash review payload is preserved intact, with dataset metadata and convenience fields added on top.

{
"record_type": "review",
"store_id": "27544161",
"review_id": "a0d43b28-a5f4-4914-8ed3-8528e5f709e4",
"reviewer_name": "Max G",
"rating": 5,
"tagged_item_ids": ["11839454237", "17241668102"],
"consumer_review_uuid": "a0d43b28-a5f4-4914-8ed3-8528e5f709e4",
"reviewer_display_name": "Max G",
"star_rating": 5,
"reviewed_at": "2026-04-27T02:23:34.680827Z",
"review_text": "Lena's has great, big portions and the food is overall very tasty...",
"is_verified": true,
"experience": "DOORDASH",
"review_source": "DOORDASH",
"reviewer_data": {
"display_name": "Max G",
"description": "Emerging Expert • 15 contributions",
"profile_image": { "url": "" },
"is_verified": false,
"creator_profile_uri": "/consumer/profile/1553580317",
"consumer_id": "1553580317"
},
"consumer_review_source": "CONSUMER_REVIEW_SOURCE_DOORDASH",
"marked_up_review_text": "Lena's has great, big portions... <<taggedItemId=11839454237>>Chicken Marsala<</taggedItemId>> was hearty...",
"_source": "doordash-scraper",
"_scrapedAt": "2026-05-12T10:49:34.000Z"
}

Store Record Field Reference

FieldTypeDescription
record_typestringAlways "store"
store_idstringDoorDash internal store identifier
namestringStore display name
descriptionstringCuisine type or short description
businessobjectBusiness entity id, name, vertical_id
tagsarrayTag taxonomy with id, name, priority score
ratingnumberAverage star rating (0–5)
num_ratingsintegerTotal number of ratings
num_ratings_displaystringDisplay string e.g. "1k+"
stars_distributionobjectRating breakdown by star level (one–five)
num_reviewsintegerTotal number of written reviews
price_rangeinteger1=$, 2=$$, 3=$$$, 4=$$$$
price_range_displaystringDisplay string e.g. "$$"
is_dashpassbooleanDashPass partner status
delivery_fee_displaystringDelivery fee display string
delivery_fee_is_surgingbooleanWhether delivery fee is surging
pickup_fee_displaystringPickup fee display string
is_openbooleanWhether store is currently open for delivery
asap_minutesintegerEstimated delivery time in minutes
asap_statusobjectFull delivery availability object with reason
asap_pickup_minutesintegerEstimated pickup time in minutes
asap_pickup_statusobjectFull pickup availability object
offersobjectCapability flags delivery, pickup, group order, scheduling, catering, cannabis, drone
flagsobjectStore flags newly_added, convenience, fulfills_own_deliveries
addressstringFull street address
city / state / countrystringLocation components
lat / lngnumberGPS coordinates
distance_from_consumerstringDistance from the input delivery address
timezonestringStore timezone
header_imagestringHeader image URL
cover_imagestringCover image URL
cover_square_imagestringSquare cover image URL
additional_imagesarrayUGC photos with url and photo_uuid
photo_countstringDisplay string e.g. "18 photos"
menu_hoursarrayDaily open/close times per menu
featured_itemsobjectFeatured items carousel with grid positions and recommendation signals
menu_categoriesarrayAll menu categories with full item detail, badges, and position signals
urlstringDoorDash store URL
_sourcestringAlways "doordash-scraper"
_scrapedAtstringISO 8601 scrape timestamp

Review Record Field Reference

FieldTypeDescription
record_typestringAlways "review"
store_idstringJoin key back to the store record
review_idstringAlias for consumer_review_uuid
reviewer_namestringAlias for reviewer_display_name
ratingintegerAlias for star_rating (1–5)
tagged_item_idsarrayItem IDs extracted from marked_up_review_text
consumer_review_uuidstringOriginal DoorDash review UUID
star_ratingintegerOriginal star rating field (1–5)
review_textstringPlain review text
marked_up_review_textstringReview text with <<taggedItemId=N>> item markup
is_verifiedbooleanWhether the review is from a verified order
reviewed_atstringISO 8601 review timestamp
reviewer_dataobjectFull reviewer object display name, description, profile URI, consumer ID
review_sourcestringSource platform e.g. "DOORDASH"
experiencestringExperience type e.g. "DOORDASH"
_sourcestringAlways "doordash-scraper"
_scrapedAtstringISO 8601 scrape timestamp

📊 Pre-Configured Dataset Views

1. Stores

All store records in a flat table identity, ratings, fees, availability, and embedded menu/featured data.

Fields: photo, store ID, name, cuisine, rating, ratings count, reviews count, price range, DashPass, open status, delivery ETA, delivery fee, pickup ETA, pickup fee, city, state, address, distance, featured items, menu categories, link

2. Reviews

All review records in a flat table one row per customer review.

Fields: record type, store ID, review ID, star rating, reviewer name, review text, reviewed at, verified status, tagged item IDs, marked-up text, reviewer info, experience, source


💰 Pricing

This Actor uses pay-per-event pricing: you pay for the records you actually receive, not for runtime. There is no platform-usage charge on top compute is included in the prices below.

What you pay for

EventWhen it is chargedFreeBronzeSilverGold+
Store ResultOne per store saved to the dataset$0.006$0.004$0.003$0.002
Customer ReviewOne per review saved to the dataset$0.001$0.0008$0.0006$0.0005

Reviews are only charged when Fetch reviews is enabled.

What it costs in practice

What you wantEventsFree tierGold tier
100 stores, no reviews100 stores$0.60$0.20
1,000 stores, no reviews1,000 stores$6.00$2.00
100 stores + 10 reviews each100 stores + 1,000 reviews$1.60$0.70
1 store with all its reviews (~250)1 store + 250 reviews$0.256$0.127

You are only charged for delivered records

  • A store is charged once, when its record is written to the dataset. Stores that turn out to be unavailable, blocked, or missing are skipped and never charged.
  • Duplicate stores across overlapping search URLs are removed before charging, so the same store is never billed twice in a run.
  • If a URL can't be used, the run ends with a short explanation record and no charge.
  • includeMenu does not change the price. A store costs the same with or without its menu, so switch the menu off when you don't need it: the record drops from roughly 100 KB to 22 KB with no change to your bill.

Capping your spend

Set Max total charge on the run and the Actor reads that limit before it starts fetching, then scrapes only what the budget covers rather than stopping part-way through.

Max total charge: $0.02 → Budget guard: $0.02 covers 3 store(s) — lowering the target from 10 to 3

Every store you are charged for is delivered the run stops at the limit, it never bills for a record it doesn't write.


⚠️ Important Notes

Data Accuracy

  • Store availability, fees, and menus change frequently re-run the Actor for up-to-date data
  • Reviews are a combination of preview reviews embedded in the store detail response and results from the paginated reviews endpoint, deduplicated by review UUID

Review Extraction Behavior

  • When fetchReviews is disabled, no review records are pushed not even preview reviews
  • When fetchReviews is enabled, up to maxReviews reviews are pushed per store (set to 0 for all)
  • Reviews are billed as their own event, separately from stores see Pricing

This Actor extracts publicly available data from DoorDash. Users must:

  • Comply with DoorDash's Terms of Service
  • Follow applicable data protection laws (GDPR, CCPA, etc.)
  • Use extracted data responsibly and ethically

The Actor creator is not responsible for how users utilize the extracted data.


💬 Support & Contact

Get Help

Social Media


🍽️ Food & Delivery

DoorDash Scraper Scrape store listings, menus, featured items, and customer reviews from DoorDash.

🏠 Real Estate Data

Realtor.com Scraper Extract US property listings from Realtor.com. Pricing, agent contacts, tax history, AVM estimates, nearby schools, flood and noise data, and full listing history.

PropertyFinder Scraper Extract property listings from PropertyFinder across UAE, Saudi Arabia, Bahrain, Egypt, and Qatar.

Idealista Scraper API Advanced Idealista property data extraction with API access.

Idealista Scraper Extract Spanish real estate listings from Idealista.

Leboncoin.fr Scraper Extract French classified listings from Leboncoin real estate, vehicles, jobs, and more.

AI Contact Intelligence Extractor Extract emails, phones, contacts & custom data using AI.

🎬 Video & Media Tools

YouTube Transcript & Metadata Extractor Extract complete video transcripts with timestamps and comprehensive metadata.

YouTube Full Channel, Playlists, Shorts, Live Extract complete playlist information with all video details from any YouTube playlist.

Zoom Scraper | Downloader & Transcript Extract Zoom meeting recordings, transcripts, and metadata.

Loom Scraper | Downloader & Transcript Download Loom videos and extract transcripts.

🛠️ Developer & Security Tools

Screenshot Fast, reliable webpage screenshots with customizable options.

Ultimate Screenshot Advanced screenshot tool with full-page capture, custom viewports, and quality controls.

Network Security Scanner Scan websites for security vulnerabilities and get comprehensive security reports.

📱 Social Media Tools

Facebook Ads Scraper Pro Extract Facebook ads data for competitor analysis and market research.

LinkedIn Ad Library Scraper Extract comprehensive advertising data from LinkedIn's Ad Library.


Ready to extract DoorDash data? Start using DoorDash Scraper now!