Yelp Business Scraper - Most Comprehensive
Pricing
from $0.40 / 1,000 places
Yelp Business Scraper - Most Comprehensive
๐ฅ ~$0.5/1K places ๐ฅ Look up any Yelp business by URL or alias. Returns comprehensive business data including categories, hours, location, photos, attributes, and more. Optionally fetches all reviews inline.
Pricing
from $0.40 / 1,000 places
Rating
5.0
(1)
Developer
Kai
Maintained by CommunityActor stats
1
Bookmarked
83
Total users
22
Monthly active users
3 hours ago
Last modified
Categories
Share
Yelp Business Scraper
Collect structured Yelp business records from known business pages or discover businesses by location, with an optional keyword. Each successful business produces one record in the run's default dataset.
What you can collect
- Business identity, rating, review totals, categories, price range, and status
- Address, coordinates, phone fields, hours, and special hours when available
- Business attributes, owner-provided details, menus, related categories, and highlights
- Optional reviews with text, rating, dates, author statistics, reactions, replies, and attached media
- Optional business photos and videos with URLs and available metadata
Yelp does not publish every field for every business. Optional fields remain null or empty when the source does not provide them.
Quick start
Look up a business by URL:
{"businesses": ["https://www.yelp.com/biz/gary-danko-san-francisco"]}
Search by keyword and location:
{"searchTerm": "pizza","location": "San Francisco, CA","maxSearchResults": 10}
Search by coordinates:
{"searchTerm": "coffee","latitude": 37.7749,"longitude": -122.4194,"searchRadius": 2,"searchRadiusUnit": "km","maxSearchResults": 5}
Include reviews, photos, and videos:
{"businesses": ["WavvLdfdP6g8aZTtbBQHTw"],"includeReviews": true,"maxReviewsPerBusiness": 50,"includePhotos": true,"maxPhotosPerBusiness": 30}
Input
Provide at least one direct business reference, or search by location. Search requires either a text location or both latitude and longitude; searchTerm is optional. For backward compatibility, direct and search fields may be combined. When a search location is present, the Actor uses search mode; otherwise it processes businesses in the supplied order. A text location and coordinates may also be supplied together. category filters a search but does not start one by itself.
| Parameter | Type | Default | Behavior |
|---|---|---|---|
businesses | string[] | [] | Yelp URLs, aliases, or 22-character encrypted business IDs. Duplicate references remain in input order and are emitted independently. |
searchTerm | string | โ | Optional keyword such as pizza, dentist, or a business name. Search also requires a location or coordinate pair. |
location | string | โ | City, postal code, address, or neighborhood. Required unless both coordinates are provided. |
latitude | number | โ | Latitude from -90 to 90. Requires longitude. |
longitude | number | โ | Longitude from -180 to 180. Requires latitude. |
category | string | โ | Yelp category alias used as a search filter. |
maxSearchResults | integer | 20 | Maximum discovered businesses, from 1 to 1,000. |
searchSort | enum | default | default, distance, rating, or review_count. |
searchRadius | number | โ | Non-negative search radius. Coordinate searches are post-filtered to this distance; 0 matches only businesses at the exact requested coordinates and commonly returns no results. |
searchRadiusUnit | enum | km | km or miles. |
includePhotos | boolean | false | Include business photos and videos. The existing input name is retained for compatibility. |
maxPhotosPerBusiness | integer | 20 | Non-negative maximum combined photos and videos per business. 0 means unlimited. |
includeReviews | boolean | false | Include reviews inside each business record. |
maxReviewsPerBusiness | integer | 20 | Non-negative maximum reviews per business. 0 means unlimited. |
sortBy | enum | DATE_DESC | DATE_DESC, DATE_ASC, RATING_DESC, RATING_ASC, or ELITES_DESC. |
ratings | string[] or number[] | ["1","2","3","4","5"] | Rating selections as strings or numbers from 1 through 5. Duplicate selections are preserved; output ratings are numbers. |
query | string | "" | Search within reviews. A query uses relevance ordering. |
languageCode | string | en | Language value passed to Yelp's review request. |
proxyConfiguration | object | {"useApifyProxy":true} | Optional proxy settings for the run. |
Review sort and rating filters apply when no review query is set. Query results use relevance ordering, and the source may not honor the other review filters in that mode.
Output
The default dataset contains one object per requested business result. Repeated direct inputs and repeated upstream search rows are preserved in order.
Main field groups include:
- Core:
id,alias,name,rating,reviewCount,priceRange,isClosed - Location:
formattedAddress,coordinates,phoneNumber,countryCode - Hours:
operationHours,regularHoursRaw,upcomingSpecialHours,isCurrentlyOpen - Classification:
categories,categoryDetails,categoryAncestry,authoritativeAttributes - Business details:
specialties,summary,bizOwnerProfile,menu,externalResources - Media:
businessPhotos,businessVideos,photoTabs,videoCarouselItems - Reviews:
reviews, present only whenincludeReviewsis enabled - Provenance:
scrapedAt
The following selected fields come unchanged from a verified live record; the complete record contains additional fields:
{"id": "WavvLdfdP6g8aZTtbBQHTw","alias": "gary-danko-san-francisco","name": "Gary Danko"}
Review objects are nested under their business and include the parent business ID. Repeated photo, video, and review rows from Yelp are preserved in source order.
Empty results and failures
- A valid search with no matches succeeds with an empty dataset.
- A search request that cannot be completed fails the run; it is not reported as an empty result.
- A direct batch with some valid and some invalid businesses succeeds with the valid records and reports the failed count in the log.
- A direct batch where every business fails still completes successfully with an empty dataset and reports the failed count in the log.
- If a requested review or media section cannot be completed, that business is not emitted as a complete result. Encrypted-ID lookups can return fewer page-specific optional fields than URL or alias lookups. Use a URL or alias when the broadest available business profile is important.