Skip to article

Usage and warnings

Report what the winning provider supplies, while keeping unknown costs unknown.

On this page

Usage is reported, not estimated

AdapterNormalized usage
Context.devcredits from key_metadata.credits_consumed.
Exausd from costDollars.total.
Tavilycredits from usage.credits.
TinyFish / Bravenull when not reported.

Explicit zero usage is preserved. Missing usage becomes null. Winning-response usage excludes failed-attempt charges and is not the total cost of a fallback chain.

A reused response retains the original provider's usage, retrieval timestamps, and attempts. Check response.reuse: cache or in-flight sharing is not a new provider call, and its retained usage is not a fresh charge.

Output count is not a billing unit

Context requests at least ten native results and can trim to a smaller SDK ceiling. TinyFish requests one first page without a native count parameter. Never infer provider charges from results.length or treat unknown usage as zero.

Warnings use stable codes

  • fallback_used: a later provider succeeded after an earlier failure.
  • provider_warning: a provider-specific warning condition, such as Context partial results or Exa warning metadata.

Raw provider warning text is not forwarded through normalized warnings. A warning does not imply that a malformed consumed result was accepted; schema validation still applies.