Skip to main content
cloro extracts structured data from multiple providers. Each request costs credits based on the provider and the features you enable.

Provider list and base costs

Detailed pricing

Sync request surcharge

All sync monitor requests (/v1/monitor/*) include a +2 credit surcharge on top of the base cost and any feature add-ons. Async and batch requests (/v1/async/*) are not affected.

Google Search multi-page pricing

HTML responses are included at no additional cost. Maximum 10 pages per request. Google News uses the same multi-page pricing, without the AI Overview option. Read X-Credits-Charged on the response for the exact charge of a request.

ChatGPT additional features

AI Mode additional features

Setting include.expandProducts: true returns a productResults array with per-merchant offers for each product cluster. The surcharge scales with the clusters Google actually returns — three clusters cost 4 + 3 = 7 credits, none costs the base 4. Expansion covers at most 6 clusters per scrape, so the ceiling is 10 credits. The charge is applied after the scrape completes and appears in X-Credits-Charged on sync responses.

Feature comparison

Query fan-out support

Query fan-out reveals the search queries that providers use internally to gather information. Useful for understanding how models break down complex prompts. AI Overview and AI Mode do not expose result.searchQueries. Google does not include that data in the rendered HTML it serves to anonymous users.

Shopping cards support

Shopping cards provide structured product information including pricing, ratings, offers, and merchant details. Cards only appear when the prompt is product-related and the provider returns product data — even then they aren’t guaranteed. See Why aren’t shopping cards appearing in my responses? for prompt examples.

Ads support

Ads extraction provides structured advertising data from provider responses, including advertiser branding, destination URLs, and product carousel cards.

State-level targeting

Pass the USPS two-letter code as state alongside country: "US" to target a specific state:
Call GET /v1/states?country=US for the full list of codes (50 states + DC). Google Search, AI Overview, and AI Mode use location / uule for sub-country targeting instead. Google News supports country only — it has no sub-country targeting.

Other features

Unsupported providers

cloro does not currently scrape the following providers. The list covers the most common requests we receive and is updated as coverage changes. To request a provider, let us know at r/cloroapi. We cannot commit to dates and will not scrape services that require authentication.

Common questions

How does cloro retrieve data from AI providers?

cloro retrieves data from AI surfaces (ChatGPT, Perplexity, Copilot, Gemini, etc.) using real browser sessions routed through proxy infrastructure — not direct API calls. Key implications:
  • Geo proxy routing: each request routes through a proxy in the country (and, for US requests on supported providers, the state) you specify — the AI provider sees that location’s anonymous user.
  • Model routing: cloro does not control which model the provider uses; that is the provider’s decision (e.g., ChatGPT cycles between gpt-5-3 and gpt-5-3-mini based on its own logic).
  • Authentication walls: cloro cannot access content that requires a logged-in session. If a provider begins requiring login in a region, requests from that region will fail until the provider relaxes the requirement.
  • Response fidelity: the html field is the actual page the provider rendered; result.* fields are extracted from that page.

Does the country parameter change the response language?

No. country controls geo-routing, not language. Most providers infer language from the prompt itself, so to get a Spanish response from a Mexico-targeted request, write the prompt in Spanish. Mixed-language prompts (English prompt + non-English country) often work but can produce inconsistent localisation — for best results, match the prompt language to the target country.

I targeted one country but the response references another — is the proxy broken?

Almost always the proxy applied correctly and what you’re seeing is model behavior, not routing:
  1. Pre-trained answers leak through. A model trained heavily on US English content sometimes defaults to US-centric references even when served from another region. The proxy was applied; the model ignored the regional context.
  2. The prompt overrides the geography. A prompt like “best pizza in Cincinnati” returns Cincinnati results from any proxy. The location affects what the search layer sees, not what the user asked for.
  3. Sources are the strongest signal. Inspect result.sources. Sources from the targeted country’s domains (.de, .fr, .com.ua) confirm the proxy worked. Diverse sources with US-centric prose is model bias, not a routing bug.
  4. HTML proof. Request include.html: true and inspect the rendered page — the chrome (language, currency, regional UI) reflects where the request was actually made from.
If sources, HTML chrome, and response language all point to the wrong region, open a support ticket with the taskId and the country you submitted.

A country worked last month but now returns 400 errors. What changed?

Provider availability shifts week to week as upstream products roll out regional changes. Refresh GET /v1/countries?model=<provider> before assuming a regression — the supported list is the source of truth and it does change. If the country still appears in the list but requests keep failing, reach out with the taskId — paid plans via the in-dashboard support widget, free tier via the Ask Assistant button in these docs.

Why is ChatGPT (or Copilot) suddenly failing for a specific country?

Some AI providers intermittently require login for anonymous users in specific regions, blocking the anonymous session cloro uses. This is not a cloro infrastructure issue — it resolves when the provider adjusts its regional access controls, on a timeline cloro does not control. If your failure rate from a specific country consistently exceeds ~30%, reach out — paid plans via the in-dashboard support widget, free tier via the Ask Assistant button in these docs. The status page (status.cloro.dev) does not track per-region provider breakdowns.

Why aren’t shopping cards appearing in my responses?

Shopping cards only appear when the prompt is related to products or shopping:
Bear in mind that the provider must support shopping cards (ChatGPT, Perplexity, Copilot, or AI Mode).

Do you support Claude, Mistral, Meta AI, DeepSeek, or Amazon Rufus?

No. See Unsupported providers above for the current list and reasons.