Skip to main content
The rule is simple: if you didn’t get data, you didn’t pay. This page is the fine print, made coarse.

Enrichment operations

Search-style operations

Search-style ops bill per page or result actually returned:

Batch jobs

Billing is per item, not per job:

Signal checks — the one exception

Signals invert the model: a check is a scheduled scrape, and it’s billed on every tick whether or not your criteria match. What stays consistent: a check whose scrape fails is not billed. Two guardrails keep check spend visible and bounded: every Signal reports credits_used_this_month, and an account-level monitoring.monthly_check_budget caps total check spend (Signals pause with budget_exceeded, enrichment is untouched).
Why pay-per-check? Because the scrape is the cost — we hit the live source on every check to know whether anything changed. You’re paying for freshness, not for alerts. Estimate before you enable: credits per check × how often the Signal runs — the Signals cookbook does the math.

Verify any charge

Every response’s meta block states billed and reason. Every Signal check writes a check log you can audit via Trigger history. If a charge ever looks wrong, send us the requestId — that’s what it’s for.