text, markdown, blocks), the lane-free provenance, and the full structured evidence — cited and retrieved sources, the query fan-out, and brand mentions — all come with the capture at no per-field cost.
What a capture costs
Each surface has a flat credit cost per successful capture:Every field is included in the price. A capture that returns a long, richly
formatted answer with deep structured evidence costs exactly the same as one
that returns a short answer. Google Search (
google_search) and Google News
(google_news) are both 3 credits per capture. The table above is generated
from the code source of truth — see
aisearchapi.dev/pricing for plans and
per-credit rates.You only pay for successful captures
Credits are charged on a successful capture only.- An empty capture is free. When a surface returns nothing, the child job still completes with
provenance.surfacePresent: falseand an emptyanswer— and it costs nothing. - A failed capture is free. If a child ends in
failed(for example, aSURFACE_TIMEOUT), you are not charged for it.
Submissions are gated by an atomic credit reservation over the whole
planned fan-out. If your balance can’t cover the request (or, on
batch, the whole batch), it’s rejected with
402 INSUFFICIENT_CREDITS and nothing is spawned — the reservation is
all-or-nothing, so a request can never drive your balance negative.Fan-out math
One search fans out to one child per surface × region. The total spend for a search is:Example: one surface, one region
Example: one surface, one region
A search for
["chatgpt"] in [{ "country": "US" }] is a single capture — 5 credits on success.Example: three surfaces, one region
Example: three surfaces, one region
A search for
["chatgpt", "claude", "perplexity"] in one region is three captures: 5 + 3 + 3 = 11 credits on success.Example: two surfaces, two regions
Example: two surfaces, two regions
A search for
["chatgpt", "perplexity"] across [{ "country": "US" }, { "country": "GB" }] fans out to four children: (5 + 3) × 2 = 16 credits if all four succeed. Any child that returns empty or fails is not charged.Auto Extract and Watches
Auto Extract is free during BETA. Its credit cost is0, so requesting extract never changes creditsToCharge or
creditsCharged. Pricing will change at GA.
Creating a Watch is also free. Each dispatched run bills
like a normal async search: Σ(surface cost) × regions, with the same
success-only settlement. Empty or failed captures are refunded, and skipped
runs — including runs skipped for insufficient credits — are never billed.
Free credits to start
New accounts start with 500 free credits — no card required. That’s enough to try every live surface across several regions before you pick a plan. See aisearchapi.dev/pricing for plans and rates (Starter, Growth, Scale, and custom Enterprise volume).Cost visibility
Every submit tells you what it cost, both in response headers and in acredits object on the payload — so you can reconcile spend without a second round-trip to the usage ledger.
Response headers. Metered (restricted-key) submits return two headers on both the sync 200 and the async 202:
X-Credits-Charged— credits this submit debited.X-Credits-Remaining— your balance after the debit.
credits object. { creditsToCharge, creditsCharged } accompanies billing throughout a request’s lifecycle:
creditsCharged reflects success-only billing — a child that comes back
empty or failed settles at 0, even though it appeared in the planned
creditsToCharge. Reconcile against creditsCharged (or the
X-Credits-Charged header) for what you actually paid.Read your ledger
GET /v1/usage returns your plan, a usage rollup grouped by (surface, region), and your current balance.
Accounting is per child job. One search across N surfaces × M regions counts
as N × M entries in the ledger, each attributed to its exact
(surface, region) group. See the usage reference for every
field.Pricing & plans
Compare plans and per-credit rates.
The Envelope
Everything a capture returns — all included in the credit cost.