Yelp Scraper avatar

Yelp Scraper

Pricing

from $1.50 / 1,000 businesses

Go to Apify Store
Yelp Scraper

Yelp Scraper

Free Yelp web scraper to extract data from Yelp. Fast Yelp review scraper, but also gets business details and ratings without using the Yelp API.

Pricing

from $1.50 / 1,000 businesses

Rating

4.1

(9)

Developer

Tri⟁angle

Tri⟁angle

Maintained by Apify

Actor stats

86

Bookmarked

6.8K

Total users

205

Monthly active users

4 days

Issues response

a day ago

Last modified

Categories

Share

What does Yelp Scraper do?

Yelp Scraper is an Apify actor that allows you to extract business data from Yelp quickly, without using the Yelp API.

Yelp Scraper can scrape:

  • Business name, alternate names, and Yelp URL
  • Full address, including city, region, postal code, and country
  • Phone number and website
  • Rating, review count, and price range
  • Categories, business type, and cuisine
  • Opening hours, plus any upcoming special hours
  • Amenities and business highlights (delivery, takeout, accessibility, payment methods, and so on)
  • Photos, with captions
  • "From the business" details — specialties, history, and year established
  • Health inspection score, where Yelp publishes one
  • Whether the business is claimed, verified, or advertising on Yelp

Looking for individual reviews? This actor gives you each business's overall rating and total review count, but not the review texts themselves. To extract those, use our Yelp Review Scraper — it takes the business URLs this actor outputs and returns the full reviews, with filtering by date and language.

Why scrape Yelp?

Yelp is a popular platform for finding local businesses, with millions of reviews and ratings. It is an excellent source of data for businesses looking to improve their online presence or conduct market research.

Here are some ways you could use Yelp data:

  • Analyze customer sentiment and improve your product or service based on feedback
  • Identify popular businesses in a specific area to inform business decisions
  • Track competitors and monitor customer sentiment towards them

If you would like more inspiration on how scraping Yelp could help your business or organization, check out our industry pages.

How to scrape Yelp

It's easy to scrape Yelp with Yelp Scraper. Just follow these few steps, and you'll get your data in a few minutes.

  1. Click on Try for free.
  2. Enter the search terms and the locations you want to search them in — for example Pizza in New York. Alternatively, paste direct Yelp URLs instead.
  3. Click on Run.
  4. When Yelp Scraper has finished, preview or download your data from the Dataset tab.

Input

FieldDescription
Search termsWhat to search for, e.g. Pizza, Plumbers. Requires Locations to be filled in as well.
LocationsWhere to search, e.g. New York, Houston, TX. Every search term is searched in every location.
Search results limitHow many businesses to scrape per search query.
Direct Yelp page URLs instead of searchScrape specific business or search URLs directly. When provided, these take precedence and search terms are ignored.
Max imagesPhotos to extract per business. Defaults to 25, which the business page provides at no extra cost — higher values need additional requests per business, so runs take a little longer. Set to 0 to skip photos.

Search terms and locations are used together, so Pizza + Coffee in New York + Chicago runs four searches. If you provide search terms without any locations, the run will stop with an error rather than finish having scraped nothing.

How many results can you scrape with Yelp scraper?

Yelp scraper can return up to 240 results on average. However, you have to keep in mind that scraping yelp.com has many variables to it and may cause the results to fluctuate case by case. There’s no one-size-fits-all-use-cases number. The maximum number of results may vary depending on the complexity of the input, location, and other factors. Some of the most frequent cases are:

  • website gives a different number of results depending on the type/value of the input
  • website has an internal limit that no scraper can cross
  • scraper has a limit that we are working on improving

Therefore, while we regularly run Actor tests to keep the benchmarks in check, the results may also fluctuate without our knowing. The best way to know for sure for your particular use case is to do a test run yourself.

How much will scraping Yelp cost you?

When it comes to scraping, it can be challenging to estimate the resources needed to extract data as use cases may vary significantly. That's why the best course of action is to run a test scrape with a small sample of input data and limited output. You’ll get your price per scrape, which you’ll then multiply by the number of scrapes you intend to do.

Watch this video for a few helpful tips. And don't forget that choosing a higher plan will save you money in the long run.

Output

Each business becomes one dataset item. Here's a real example, with the longer lists shortened:

{
"name": "Prince Street Pizza",
"bizId": "zj8Lq1T8KIC5zwFief15jg",
"directUrl": "https://www.yelp.com/biz/prince-street-pizza-new-york-2",
"alternateNames": [],
"address": {
"addressLine1": "27 Prince St",
"addressLine2": null,
"addressLine3": "",
"city": "New York",
"regionCode": "NY",
"postalCode": "10012",
"country": "US"
},
"phone": "(212) 966-4100",
"website": "https://locations.princestreetpizza.com/new-york",
"aggregatedRating": 4.3,
"reviewCount": 5705,
"priceRange": "Under US$10",
"type": "Restaurants",
"cuisine": "Pizza",
"categories": ["Restaurants", "Pizza"],
"operationHours": [
{
"dayOfWeekShort": "Mon",
"dayOfWeek": "Monday",
"regularHours": ["10:00 AM - 3:00 AM (Next day)"]
}
],
"upcomingSpecialHours": [],
"amenitiesAndMore": ["Offers delivery", "Offers take-out", "Takes reservations"],
"businessHighlights": ["Casual dining", "Catering service", "Gluten-free friendly"],
"aboutTheBusiness": {
"specialties": "Prince St. Pizza opened its doors in 2012 in New York City…",
"history": "Our family recipe stemmed from a simple idea…",
"yearEstablished": "2012"
},
"healthScore": "0.0",
"claimed": true,
"verified": false,
"advertiser": true,
"primaryPhoto": "https://s3-media0.fl.yelpcdn.com/bphoto/Jo9jBP5y6G_bG_g3H31fiw/l.jpg",
"images": [
{
"link": "https://s3-media0.fl.yelpcdn.com/bphoto/Jo9jBP5y6G_bG_g3H31fiw/o.jpg",
"alt": "Naughty, spicy pepperoni"
}
],
"scrapeStartedAt": "2026-08-04T08:31:33.663Z",
"scrapeFinishedAt": "2026-08-04T08:31:36.918Z"
}

Not every field is available for every business. Fields Yelp doesn't publish for a given business come back as null or an empty list — healthScore only exists in regions with published inspections, cuisine only for restaurants, alternateNames mostly for businesses in markets that don't use the Latin alphabet, and businessHighlights and aboutTheBusiness only where the owner has filled them in.

Combining this with review data

The directUrl of every business is a normal yelp.com link, which means you can feed the output of this actor straight into our Yelp Review Scraper:

  1. Run Yelp Scraper to find businesses matching your search terms and locations.
  2. Export the directUrl column from the dataset.
  3. Paste those URLs into Yelp Review Scraper's Start URLs to collect the reviews for each one.

That way you get the business profiles and their reviews without scraping either twice.

Tips for scraping Yelp

  • Use relevant search terms to get the most accurate results.
  • Searching a broad term across several locations returns more businesses than one narrow search — each term is run against each location.
  • Leave Max images at the default unless you specifically need more photos; it's the cheapest setting.
  • Be mindful of Yelp's terms of service and follow them to avoid legal issues.

Note that personal data is protected by GDPR in the European Union and by other regulations around the world. You should not scrape personal data unless you have a legitimate reason to do so. If you're unsure whether your reason is legitimate, consult your lawyers. We also recommend that you read our blog post: is web scraping legal?

Not your cup of tea? Build your own scraper

Yelp scraper doesn’t exactly do what you need? You can always build your own! We have various scraper templates in Python, JavaScript, and TypeScript to get you started. Alternatively, you can write it from scratch using our open-source library Crawlee. You can keep the scraper to yourself or make it public by adding it to Apify Store (and find users for it).

Or let us know if you need a custom scraping solution.

Your feedback

We’re always working on improving the performance of our Actors. So if you’ve got any technical feedback for Yelp Scraper or simply found a bug, please create an issue on the Actor’s Issues tab in Apify Console.