API teardown · 2026

The Yelp Fusion API gives you 3 reviews and a daily ceiling. Here's how to get the rest.

Yelp does have an official API — that's the catch. It's just capped where it matters for reviews and lead-gen. This is where it stops, and what scraping recovers.

Open the Yelp Actor →

Unlike most targets, Yelp does ship an official API — Fusion. So the question here isn't "is there an API?", it's "does the API give you what you actually need?" For two of the most common jobs — mining the full review corpus and building local business lead lists — the honest answer is no. Let's look at exactly where the ceiling sits, then at what scraping the public pages adds back.

The Fusion API's real caps

These are the limits that decide whether the official API can do your job. None of them are obscure; they are just rarely spelled out before you have already built against them:

LimitWhat it means in practice
3 reviews per businessThe reviews endpoint returns at most three. A restaurant with 4,000 reviews still gives you three.
Truncated review textEach of those three is an excerpt, not the full review body. No good for sentiment or theme analysis.
~5,000 calls / dayStandard access ceiling. One call per business detail burns through this fast across multiple cities.
1,000 results per searchSearch pagination caps at 1,000 (50 per page x 20 pages). A dense category in a big metro overflows it.
No raw website field guaranteeBusiness website links are inconsistent in the API payload, which hurts lead-gen enrichment.

If your project is "show me a couple of representative reviews on a map," Fusion is fine — use it, it's clean and free. The moment you need the whole review history, the full text, or a wide business sweep for outreach, you have outgrown it.

API vs scraping, side by side

Fusion API gives you

  • Up to 3 truncated reviews
  • Core business fields (name, rating, count)
  • 1,000 search results max
  • ~5k calls/day
  • Official, ToS-clean, free

Scraping the public pages adds

  • Full review text, all of it
  • Reviewer name, date, rating, useful/funny/cool counts
  • Phone + website for outreach
  • Unbounded search depth via pagination
  • Categories, hours, price tier, photos

Two data shapes: businesses and reviews

It helps to think of Yelp as two related datasets you can pull independently.

Business records (the lead-gen layer)

One row per business: name, address, phone, website, categories[], rating, reviewCount, priceTier ($ to $$$$), hours, coordinates and the Yelp page URL. This is the layer that turns into a prospect list: "every plumber in Phoenix rated 4.0+ with under 30 reviews" is a sharp, contactable target set.

Review records (the sentiment layer)

One row per review, joined to a business: full text, rating, date, reviewerName, reviewer's total review count, and the helpful-vote counts. This is the layer the Fusion API specifically cripples, and the reason most serious review projects scrape.

A worked lead-gen example

Suppose you sell a booking tool to independent salons and you want warm leads — salons that are busy enough to care but not so big they already have software. Here's the pipeline:

  1. Search the category hair salons across your target metros.
  2. Filter on the business layer: rating ≥ 4.0 (they care about reputation), reviewCount between 15 and 150 (active but not enterprise), and a phone present.
  3. Enrich: keep the website where listed so you can check if they already run online booking.
  4. Score and export to CSV. You now have a ranked outreach list, not a raw dump.

The Fusion API can start this, but the 1,000-result cap and missing website fields force you back to the public listings to finish it cleanly.

A note on anti-bot — why you don't roll your own

Yelp actively defends its pages: aggressive rate-limiting on datacenter IPs, interstitial challenges, and layout shuffles that quietly break hand-written parsers. A naive scraper works for a day and then starts returning empty results or CAPTCHAs. A maintained actor absorbs that with rotating residential proxies and parser upkeep, so your pipeline doesn't go dark the week Yelp ships a redesign.

Running it as an API call

A run that searches a category in a city and pulls full reviews per business:

curl -X POST "https://api.apify.com/v2/acts/renzomacar~yelp-scraper/run-sync-get-dataset-items?token=YOUR_APIFY_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "searchTerms": ["hair salons"],
    "locations": ["Phoenix, AZ"],
    "maxBusinesses": 200,
    "maxReviewsPerBusiness": 50,
    "minRating": 4.0
  }'

You get one JSON object per business, each with a nested reviews[] array carrying the full text the Fusion API never hands over. Append &format=csv to the dataset URL to flatten it into a spreadsheet for the sales team.

Practical cautions

Get the full Yelp picture, not three truncated reviews

Our maintained Yelp Scraper pulls complete business records and full-text reviews past the Fusion API's caps — proxies and anti-bot handled, clean JSON or CSV out. Free Apify credits to start.

Get the Yelp Scraper → Or get done-for-you leads

Disclosure: the links to Apify on this page are affiliate links. If you create a paid account through them we may earn a commission, at no extra cost to you. We recommend Apify because we build and ship the Yelp Scraper on it ourselves.