Yelp Business Search Scraper
Pricing
$0.80 / 1,000 results
Yelp Business Search Scraper
Pricing
$0.80 / 1,000 results
Rating
0.0
(0)
Developer
Danny
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
2 days ago
Last modified
Categories
Share
Find businesses on Yelp for any search term and location — name, star rating, review count, category tags, price level, and the Yelp business URL — straight from a query. No login, no browser to manage, fast JSON.
Results come back in Yelp's own organic ranking (the "best of" list), with sponsored placements excluded (any that slip through are flagged is_ad). Each business's URL/slug feeds straight into the Yelp Business Detail and Yelp Reviews scrapers.
Pricing: $0.80 per 1,000 businesses (pay per result). You're only charged for businesses actually returned.
What you get
Every business returns:
| Field | Description |
|---|---|
name | Business name |
url | Yelp business page URL |
slug | Yelp business slug (feed to the Detail / Reviews scraper) |
rating | Star rating (0–5) |
review_count | Number of reviews on Yelp |
categories | Yelp category tags (e.g. Plumbing, Water Heater Installation/Repair) |
price_range | Price level ($ – $$$$) when Yelp shows one |
is_ad | true if this is a sponsored placement |
Input
| Field | Required | Description |
|---|---|---|
query | ✓ | A business type or keyword — restaurants, plumbers, coffee, dentists … |
location | ✓ | City, area, or ZIP — San Francisco, CA or 10001 |
max_results | How many businesses to return (default 20; one page holds ~10) |
{ "query": "restaurants", "location": "San Francisco, CA", "max_results": 20 }
Example output
{"name": "Blue Dragon Plumbing","url": "https://www.yelp.com/biz/blue-dragon-plumbing-austin-2","slug": "blue-dragon-plumbing-austin-2","rating": 4.9,"review_count": 527,"categories": ["Plumbing"],"price_range": null,"is_ad": false}
Python client
from apify_client import ApifyClientclient = ApifyClient("<APIFY_TOKEN>")run = client.actor("<username>/yelp-search-scraper").call(run_input={"query": "restaurants", "location": "San Francisco, CA", "max_results": 20})for biz in client.dataset(run["defaultDatasetId"]).iterate_items():print(biz["name"], biz["rating"], biz["review_count"])
Node.js client
import { ApifyClient } from 'apify-client';const client = new ApifyClient({ token: '<APIFY_TOKEN>' });const run = await client.actor('<username>/yelp-search-scraper').call({query: 'restaurants', location: 'San Francisco, CA', max_results: 20,});const { items } = await client.dataset(run.defaultDatasetId).listItems();items.forEach((b) => console.log(b.name, b.rating, b.review_count));
FAQ
How many businesses per run? One Yelp results page holds ~10 organic businesses; max_results caps how many you keep.
Do I pay for sponsored results? Sponsored placements are excluded from the organic list; you're charged only for the businesses returned.
Can I get full details / reviews? Yes — take a business's slug and pass it to the Yelp Business Detail or Yelp Reviews scraper.