Yelp Leads & Business Scraper — Emails + Unlimited Reviews avatar

Yelp Leads & Business Scraper — Emails + Unlimited Reviews

Pricing

from $2.75 / 1,000 results

Go to Apify Store
Yelp Leads & Business Scraper — Emails + Unlimited Reviews

Yelp Leads & Business Scraper — Emails + Unlimited Reviews

Yelp scraper with business emails — the only Yelp tool built for lead-gen. Scrape any search or business URL for name, rating, phone, website, hours, categories, price level + unlimited reviews (past the 3-review cap). Optional contact-email enrichment. Bulk JSON or CSV, pure HTTP.

Pricing

from $2.75 / 1,000 results

Rating

5.0

(5)

Developer

Muhamed Didovic

Muhamed Didovic

Maintained by Community

Actor stats

0

Bookmarked

76

Total users

35

Monthly active users

2 days ago

Last modified

Share

How It Works

How the Yelp Leads & Business Scraper works

The only Yelp scraper built for lead generation. Paste any Yelp search or business URL and get a clean, per-business row — name, rating, phone, website, address, hours, categories, price level — plus an optional verified contact email and unlimited customer reviews (no 3-review API cap). Bulk export to JSON or CSV. Pure HTTP, no headless browser to babysit.

Built for sales teams, agencies, and market researchers who need Yelp turned into an actionable B2B contact list — not just another business dump.

Why Use This Scraper?

  • 📧 Contact emails nobody else returns — opt-in email enrichment reads each business's own website and attaches a real contactEmail, so your Yelp export is a ready-to-use lead list.
  • Unlimited reviews — pull every review per business, well past the 3-review limit of Yelp's official API, with full reviewer profiles and feedback counts.
  • 🏢 25+ business fields — rating, review count, claim status, price level, categories, full address, phone, website, hours, owner info, amenities, photos, and the Yelp business ID.
  • 🔗 Any URL works — Yelp search result pages and individual business pages, mixed freely in one run.
  • Bulk and fast — pure HTTP pipeline with configurable concurrency; scales from one business to thousands.
  • 📤 Clean JSON or CSV — flat, predictable rows ready for your CRM, spreadsheet, or data warehouse.

Overview

The Yelp Leads & Business Scraper extracts three things in one run, each opt-in so you only pay for what you need:

  1. Business profile (always) — the core record for every business found.
  2. Customer reviews (toggle scrapeReviews) — a nested reviews[] array per business.
  3. Contact email (toggle enrichEmails) — a contactEmail + full enrichment object per business.

Output is one row per business. Reviews and email data are attached to that business row, so you never have to join datasets afterward.

Supported Inputs

Provide one or more of these as startUrls. You can mix both kinds in a single run.

Input typeExampleWhat you get
Search URLhttps://www.yelp.com/search?find_desc=grill&find_loc=Los+Angeles%2C+CAEvery business across all result pages (auto-paginated)
Business URLhttps://www.yelp.com/biz/fresh-corn-grill-west-hollywoodThe full profile for that single business

Not supported: Yelp user profiles, Yelp Collections/lists, and the Yelp events directory. Provide search or business URLs only.

Use Cases

AudienceWhat they do with it
Sales & lead-gen teamsBuild targeted B2B contact lists (business + email + phone) by city and category
Marketing agenciesProspect local businesses for outreach campaigns
Market researchersAnalyze ratings, categories, and price levels across a market
Reputation / CX analystsPull full review histories for sentiment and trend analysis
Data teamsFeed Yelp business and review data into a CRM, BI tool, or warehouse
  1. Paste URLs — drop any mix of Yelp search and business URLs into startUrls.
  2. Discover — search URLs are paginated automatically; every business found is queued.
  3. Extract — each business profile is parsed into 25+ flat fields.
  4. Enrich (optional) — if enabled, the scraper pulls the full review history and looks up a contact email from the business's own website.
  5. Emit — one clean row per business is pushed to your dataset, exportable as JSON or CSV.

Pure HTTP throughout — there's no headless browser or CAPTCHA solver for you to configure.

Input Configuration

FieldTypeDefaultNotes
startUrlsarray— (required)Yelp search and/or business URLs
maxItemsinteger1000Cap total businesses scraped
fetchBusinessDetailsbooleantrueVisit each profile for the full field set (off = lightweight search rows)
scrapeReviewsbooleanfalseAttach the full reviews[] array per business (requires fetchBusinessDetails)
maxReviewsinteger1000Max reviews per business when scrapeReviews is on
enrichEmailsbooleanfalseLook up a contact email per business (opt-in, billed per email found)
maxConcurrencyinteger20Upper bound on parallel requests
proxyobjectApify ResidentialProxy configuration

Example input

{
"startUrls": [
"https://www.yelp.com/search?find_desc=coffee&find_loc=Seattle%2C+WA"
],
"maxItems": 50,
"fetchBusinessDetails": true,
"scrapeReviews": true,
"maxReviews": 100,
"enrichEmails": true,
"proxy": { "useApifyProxy": true, "apifyProxyGroups": ["RESIDENTIAL"] }
}

Output Overview

Each row is a single business. The base fields are always present. When scrapeReviews is on, a reviews[] array is added. When enrichEmails is on, contactEmail, contactWebsite, and an emailEnrichment object are added.

Output Samples

Business row (base)

{
"title": "Angie's Restaurant",
"rating": 4.2,
"reviewCount": "509 reviews",
"isClaimed": true,
"priceLevel": "$$",
"categories": "Breakfast & Brunch,American",
"fullAddress": "690 N Main St, Logan, UT 84321",
"city": "Logan",
"state": "UT",
"zipcode": "84321",
"phoneNumber": "(435) 752-9252",
"website": "http://www.angiesrest.com/",
"hours": { "Mon": "7:00 AM - 9:00 PM", "Tue": "7:00 AM - 9:00 PM" },
"businessServices": ["Takeout", "Delivery", "Outdoor seating"],
"photoCount": 312,
"yelp_biz_id": "k0v1lBFP4vL8xQ2pXn3tZw",
"url": "https://www.yelp.com/biz/angies-restaurant-logan",
"timezone": "America/Denver",
"timestamp": "2026-06-21T09:14:00Z"
}

With scrapeReviews: true

{
"title": "Carmine's",
"rating": 4.5,
"reviews": [
{
"reviewId": "hK2MnjQdsxxVz6eCTbNdMA",
"rating": 5,
"text": "Old school Italian on a rainy cold night? Yes, please…",
"createdAt": "2026-05-05T16:26:51Z",
"user": {
"id": "ZE6P_jaDtrBHWNkEKVm2LQ",
"displayName": "Safia S.",
"displayLocation": "Cleveland, OH",
"reviewCount": 407,
"friendCount": 42,
"photo": "https://s3-media0.fl.yelpcdn.com/photo/…/60s.jpg"
},
"feedback": { "usefulCount": 2, "funnyCount": 0, "coolCount": 2 }
}
]
}

With enrichEmails: true

{
"title": "Angie's Restaurant",
"website": "http://www.angiesrest.com/",
"contactEmail": "info@angiesrest.com",
"contactWebsite": "http://www.angiesrest.com/",
"emailEnrichment": {
"emails": ["info@angiesrest.com"],
"emailDomains": ["angiesrest.com"],
"website": "http://www.angiesrest.com/"
}
}

Key Output Fields

Businesstitle, rating, reviewCount, isClaimed, priceLevel, categories, fullAddress, city, state, zipcode, phoneNumber, website, hours, about, businessOwnerName, businessServices, reviewhighlights, images, photoCount, yelp_biz_id, url, timezone.

Reviews (scrapeReviews) — reviews[].reviewId, rating, text, createdAt, user (id, displayName, displayLocation, reviewCount, friendCount, photo), photos, feedback (usefulCount, funnyCount, coolCount).

Email enrichment (enrichEmails) — contactEmail, contactWebsite, emailEnrichment.emails, emailEnrichment.emailDomains.

How This Compares

CapabilityMost Yelp scrapersThis Actor
Business contact emails✅ opt-in enrichment
Reviews per businessoften capped (3, like the official API)✅ unlimited
Search and business URLsone or the other✅ both, mixed in one run
Fields per business10–15✅ 25+
Reviews + emails on the same rowseparate datasets✅ merged per business
Runtimeoften headless browser✅ pure HTTP

FAQ

Does it really return business emails? Yes — when enrichEmails is on, the scraper visits each business's own website (the one listed on its Yelp profile) and extracts a contact email. Coverage depends on the business publishing an email; not every business has one, and you're only billed per email actually found.

How is this different from Yelp's official API? Yelp's Fusion API caps reviews at three per business and exposes no contact emails. This actor returns the full review history and adds email enrichment — neither of which the official API offers.

Can I scrape just business data without reviews or emails? Yes. Both scrapeReviews and enrichEmails default to off — leave them off for a fast, business-only run.

Do I need to handle pagination? No. Search URLs are paginated automatically up to your maxItems limit.

Can I mix search and business URLs in one run? Yes — put any combination in startUrls.

What export formats are supported? JSON, CSV, Excel, and the other standard Apify dataset formats.

Is a browser or CAPTCHA solver required? No. The actor runs over pure HTTP with no headless browser to configure.

Support

Found a bug or need a field that isn't here? Open an issue on the actor's Issues tab, or contact the maintainer through the Apify Store profile. Reports with the input URL and run ID are resolved fastest.

Additional Services

Need a custom Yelp workflow — scheduled monitoring, a specific field, webhook delivery into your CRM, or a tailored lead pipeline? Reach out via the Apify Store profile for custom scraping work.

Explore More Scrapers

  • Google Maps Leads Scraper — local business data and emails beyond Yelp
  • Trustpilot Scraper — reviews and ratings at scale
  • Capterra / TrustRadius Scrapers — B2B software reviews
  • LinkedIn Posts Scraper — social and professional content
  • Browse the full portfolio on the Apify Store profile.

⚠️ Disclaimer

This Actor accesses publicly available data on Yelp for legitimate research, market-intelligence, and business-analysis purposes. Use of this Actor must comply with Yelp Inc.'s Terms of Service and all applicable laws, including data-protection regulations (GDPR, CCPA, etc.). The Actor's authors are not responsible for any misuse. Users must:

  • Respect rate limits and avoid overloading Yelp's infrastructure
  • Not use scraped data to violate user privacy or applicable terms
  • Use contact data in compliance with anti-spam laws (CAN-SPAM, GDPR) and obtain consent where required
  • Not republish scraped review content in violation of copyright

This Actor is not affiliated with, endorsed by, or sponsored by Yelp Inc. "Yelp" is a trademark of Yelp Inc. We do not store any scraped data; the Actor returns it directly to your Apify dataset for your authorized use.

SEO Keywords

yelp scraper, yelp leads scraper, yelp email scraper, yelp business scraper, yelp reviews scraper, yelp contact extractor, yelp data extraction, yelp business emails, yelp lead generation, yelp api alternative, yelp business directory scraper, scrape yelp reviews, yelp ratings scraper, local business leads, b2b lead generation, yelp csv export, yelp json export, yelp business listings, yelp phone number scraper, sales prospecting data