Cloro, SearchApi, Olostep, DataForSEO, Oxylabs, and BrightData compared on cost, coverage, and measured success rates from a tool that runs all six in production.
Updated · Published
Frequently asked questions
What is an LLM scraping API?
An LLM scraping API submits a prompt to a consumer AI product such as ChatGPT, Gemini, or Google AI Mode and returns the answer, its citations, and often its web-search queries as structured JSON. It exists because none of those products expose a public API for the interface real users see, so the only way to observe what a user would get is to drive the product itself.
Why not just call the OpenAI API instead of scraping ChatGPT?
Because the model API and the ChatGPT product are different systems. The product adds its own retrieval, ranking, memory, and formatting layers, and it is those layers that decide which brands get named and which sources get cited. A gpt-5-mini call with web search enabled is cheaper and faster, but it does not reproduce the answer a customer sees at chatgpt.com.
Which LLM scraping API is cheapest?
At entry level, Oxylabs and BrightData tie at roughly $0.45 a month to track one prompt across ChatGPT and Google AI Mode. BrightData is pay-as-you-go with 5,000 free records a month, while Oxylabs starts with a $30/mo plan. At volume, SearchApi's largest plan is cheapest at about $0.30 per prompt, followed by DataForSEO's standard queue at about $0.36 if you can wait up to 45 minutes for results.
How much does it cost to track one prompt for a month?
At five runs a day across ChatGPT and Google AI Mode, one prompt is about 300 evaluations a month. On each provider's entry plan that comes to roughly $0.45 on Oxylabs or BrightData, $1.20 on SearchApi or DataForSEO, $1.30 on Cloro, and $2.15 on Olostep. Larger plans or slower queues bring every provider down to between $0.30 and $0.65.
Which AI surfaces can be scraped?
ChatGPT, Google AI Mode, Google AI Overview, Gemini, and Microsoft Copilot all have working scrapers from at least one provider. Coverage is not uniform: Cloro, SearchApi, Olostep, and BrightData reach all five, while Oxylabs and DataForSEO have no Copilot scraper.
Which LLM scraping API is the most reliable?
Cloro and SearchApi, both at 97% of runs in Elmo's October 2026 monitoring, with Olostep close behind at 96%. DataForSEO managed 85%, Oxylabs 69%, and BrightData 61%. Google AI Overview separates them most: SearchApi, Olostep, and Cloro all cleared 97% there, against 58% for DataForSEO, 28% for BrightData, and 26% for Oxylabs.
Do I need more than one scraping provider?
Most teams do not. One provider covering ChatGPT and Google AI Mode captures the bulk of AI referral traffic. A second provider is worth it mainly as a failover, since a single provider's outage otherwise leaves a gap in your history that cannot be backfilled.
Every AI visibility tool is built on top of a scraping API, and which one it sits on decides what the numbers mean. ChatGPT, Google AI Mode, Gemini, and Copilot have no public API for the interface real users see, so tracking what an answer engine says about your brand means driving the product itself. We build Elmo, an open-source AI visibility tracker, and we run six of these scraping providers side by side in production. This is what we've learned about the trade-offs.
Key takeaways
Entry pricing spans about 5x for identical work. Tracking one prompt across ChatGPT and Google AI Mode for a month costs roughly $0.45 on Oxylabs or BrightData and $2.15 on Olostep's smallest plan.
Headline per-run pricing is the wrong number to compare. If you're only tracking a handful of prompts, a free tier or a provider without a monthly minimum might be better. At scale, volume pricing reshuffles the order: SearchApi's largest plan is the cheapest per run here.
Reliability varies more than price does, and it is the variable nobody publishes. A failed scrape is a hole in your prompt's history that you cannot backfill. In October, success rates ranged from 97% to 61%.
Google AI Overview is where providers split. SearchApi, Olostep, and Cloro all cleared 97% on it; the other three were at 58% or below.
Median latency ranges from 11 seconds to over a minute, and individual runs took up to nearly 20 minutes. It rarely matters for scheduled tracking but matters enormously for anything a user is waiting on.
An LLM scraping API takes a prompt, drives a consumer AI product with it, and returns the generated answer as structured JSON, usually with the cited source URLs and sometimes the search queries the product ran behind the scenes.
That last part is why the category exists at all. You can approximate ChatGPT by calling gpt-5-mini with web search enabled, but it is significantly more expensive and the results will be different. This is because the ChatGPT product wraps the model in its own retrieval, ranking, and formatting layers, and those layers are what decide whether your brand gets named and which sources get linked. The model API answer and the product answer routinely disagree about both.
The same holds for Google. AI Mode and AI Overviews are Search features, not models, and there is no endpoint that returns them.
Not every provider reaches every surface. This is the first filter, because no amount of price advantage helps if the provider cannot see the surface you care about.
Surface
Cloro
SearchApi
Olostep
DataForSEO
Oxylabs
BrightData
ChatGPT
✅
✅
✅
✅
✅
✅
Google AI Mode
✅
✅
✅
✅
✅
✅
Google AI Overview
✅
✅
✅
✅
✅
✅
Gemini
✅
✅
✅
✅
Not tested
✅
Copilot
✅
✅
✅
–
–
✅
Oxylabs now sells a Gemini scraper, but Elmo doesn't integrate it yet, so it has no reliability data below.
Vendor pricing pages quote per-request or per-credit rates that are hard to compare. Here they are normalised to one number: what it costs to track a single prompt for a month.
The assumption is five runs a day across two surfaces, ChatGPT and Google AI Mode, which is 300 evaluations a month. That is Elmo's default cadence and a reasonable baseline for any tracker.
Two things this table hides, both of which change the answer at small scale.
Plan minimums beat unit prices.Oxylabs has no pay-as-you-go option, so the entry price is its $30/mo Starter plan, which covers about 20,000 LLM scraper results, or around 66 tracked prompts. If you are tracking ten prompts, you are paying $30 for $4.50 of scraping. BrightData bills per record with no monthly commitment, and its free 5,000 records a month cover about 16 prompts on this workload. DataForSEO is also pay-as-you-go, but you have to put at least $50 in up front, though the balance never expires.
Credits are not requests.Cloro prices per credit, and each surface costs a different number: Gemini and Google AI Mode 4, Copilot and Google AI Overview 5, ChatGPT 7. One prompt on ChatGPT plus Google AI Mode is 11 credits a day, or about 1,650 a month. The $30 Lite plan's 37,500 credits therefore covers about 22 prompts, at about $1.30 each; the rate halves to $0.65 from the $100 Hobby plan up. Olostep works the same way, at 5 credits for ChatGPT and 3 for every other surface, so its $9 Starter plan's 5,000 credits cover about four prompts.
Price and coverage are on every vendor's website. Success rate is not, and it is the number that actually determines whether your tracking data is usable.
A failed scrape is not the same kind of problem as a slow one. Retries may cost money and eventually give up, and a run that never completes leaves a gap in a time series that cannot be backfilled, because the answer that surface would have given yesterday no longer exists.
We run every provider against every surface it supports, several times a day, and publish every result including the failures. Here is what October's monitoring shows:
The most consistent provider across all five surfaces: 97% overall, and at least 97% everywhere except Copilot, where it managed 92%. It has good documentation and an API that is pleasant to integrate against. Requests go through an asynchronous task API that you poll, which also lets Cloro meter concurrency rather than holding a connection open. Failed requests are not charged.
It is plan-based rather than pay-as-you-go, and the $30 Lite plan works out to about $1.30 per prompt, so it stings on very small projects. From the $100 Hobby plan up, the rate halves to about $0.65. There is also a free tier of 500 credits a month for testing.
It is also the provider we put our own money behind: Cloro is the primary data source for Elmo Cloud, so the numbers in the table above are the same ones our paying customers depend on. Ahrefs, Scrunch, and Evertune run on it too.
Best for
Teams that want one provider to cover everything and would rather not think about it again.
Matched Cloro at 97% in October and was the fastest provider we run, with an 11-second median and no successful run over 1m28s. It was perfect on Google AI Mode, Google AI Overview, and Copilot; ChatGPT was its weakest surface at 92%.
It is also one of the simplest integrations here. One bearer API key and one synchronous endpoint serve every surface, selected by an engine parameter, so each run is a single request with no task queue to poll. The documentation is good, and ChatGPT results report whether the model searched the web.
Pricing is flat per search regardless of surface, and you only pay for successful searches. The exception is Google AI Overview, which can take a second search when Google doesn't return the overview inline. At $4 per 1,000 searches on the $40/mo Developer plan, it costs about $1.20 per prompt, slightly less than Cloro's entry plan; on the largest plans it falls to $1 per 1,000, the cheapest per run of any provider here. There is no pay-as-you-go tier, plans cap usage at 20% of your monthly searches in any hour, and sign-up includes 100 free requests.
Best for
Teams that want fast, synchronous results and predictable per-search pricing that gets cheaper at volume.
The provider behind Profound, Athena, and AirOps, and genuinely good at high-volume scraping with a well-designed API. It covers all five surfaces and hit 96% in October, including 99% on ChatGPT and Google AI Overview.
Pricing is credit-based, from a $9/mo Starter plan that covers only about four prompts at $2.15 each. The per-credit rate drops sharply on larger plans: the $99/mo Standard plan works out to about $0.60 per prompt.
Its 32-second median is competitive, but the tail is long. Individual runs approached 20 minutes, the slowest of any provider we run, which rules it out for anything a user is waiting on.
Best for
Large-scale batch scraping where throughput matters more than the slowest individual run.
The most flexible of the six, and the only one that fronts both scrapers and direct model APIs behind a single account. ChatGPT and Gemini come from its LLM Scraper and the two Google surfaces from SERP endpoints. It has no Copilot scraper.
ChatGPT and Gemini were near-perfect in October at 98% and 99%, with an overall median of 19 seconds. Google AI Overview pulled it down to 85% overall: only 58% of those runs succeeded, most failing with an internal error from DataForSEO's search backend.
Pay-as-you-go with a $50 minimum top-up and no subscription. Its queues give you a real cost lever: the standard queue costs less than a third of live mode, about $0.36 per prompt, if you can wait up to 45 minutes for results.
Best for
Anyone who wants pay-as-you-go pricing and the option to mix scraped and model-API data without a second vendor.
Tied with BrightData for the cheapest entry price, at about $0.45 per prompt. Oxylabs sells one subscription across all its products, from the $30/mo Starter plan, and new accounts get $5 of free credits. Requests go through an asynchronous Push-Pull API that avoids the connection timeouts of their realtime endpoint.
Three real limitations. It has no Copilot scraper, and its Gemini scraper is new enough that Elmo doesn't support it yet. There is no pay-as-you-go tier. And it was the second-least reliable provider we ran in October at 69%, with ChatGPT at 82% and Google AI Overview at 26%, where most jobs faulted on Oxylabs' side.
Best for
High volume on ChatGPT and Google AI Mode, where the per-run saving compounds and you can tolerate gaps.
A common default for web scraping in general. Pay-as-you-go at $1.50 per 1,000 records with no monthly commitment, tied with Oxylabs for the cheapest entry price, and a free tier of 5,000 records a month, which covers about 16 prompts on ChatGPT and Google AI Mode.
October was rough. It was the least reliable provider we ran at 61% and the slowest, with a 65-second median. ChatGPT and Gemini held up at 89% and 88%, but Google AI Mode fell to 71% and Google AI Overview to 28%. Copilot didn't return a single successful run: requests first hit a sign-in wall, then BrightData's dataset began rejecting collection requests entirely.
Best for
Trying out ChatGPT and Gemini scraping on the free tier before committing to a plan.
What's the best overall?Cloro. It covers everything at a reasonable price and rarely fails. It's what we use for Elmo Cloud.
Need speed, or a low per-run price at volume?SearchApi. It matched Cloro's reliability with the fastest median we measured, and its largest plans are the cheapest per run here.
Only tracking a handful of prompts?BrightData's free tier covers about 16 prompts a month, and DataForSEO's pay-as-you-go balance never expires.
Elmo is open source, and the provider integrations are readable if you want to see exactly what each request does. Coverage in the table above is taken from those integrations rather than from vendor marketing.
The reliability and latency figures come from the same store that backs Elmo's status page, which runs real prompts against every provider and surface several times a day and records every result, pass or fail. The tables above cover 2,700 runs across 30 targets from October 5 to October 31, 2026, de-duplicated so that retries within five minutes count once, which is the same aggregation the status page renders. Success rate is passing runs over total runs; latency is measured on passing runs only, since a failure's latency is time-to-error.
Pricing is taken from each vendor's public pricing pages as of November 2026 and normalised to the same workload. Vendors change prices; check before you commit.
Disclosure. Every provider link in this post is an affiliate link. If you sign up through one we get a small kickback at no extra cost to you, and it is one of the ways we fund work on Elmo, which is free and open source. It does not affect the ordering: we rank Cloro first because it is the provider we pay for ourselves, and the data behind that judgement is public on our status page. If you would rather support the project directly, please consider sponsoring Elmo on GitHub.