API Reference

Billing & Limits

How CurrencyCore plans, monthly usage limits, rate limits, and over-usage pricing work — including exactly which requests count toward your limit.


CurrencyCore bills per organization. Each org is on one plan, which sets a monthly request limit and a rate limit. Dodo Payments is the Merchant of Record, so taxes/VAT are handled at checkout.

Plans

PlanMonthly requestsRate limitPriceOver-usage
Hobby (free)10,00060 req / min$0— (hard cap)
Pro250,000600 req / min$29 / mo$0.40 / 10k
Scale2,000,0003,000 req / min$99 / mo$0.25 / 10k
Business10,000,0006,000 req / min$299 / mo$0.15 / 10k
EnterpriseCustom12,000+ req / minCustomContact us

What counts toward your monthly limit

Only successful requests count. A request is metered against your monthly limit only when it returns HTTP 2xx. Any request that errors (4xx/5xx) is not counted.

Counted (2xx) — including these “no data” responses, which still succeed:

  • A normal conversion.
  • A conversion where a target’s PPP couldn’t be applied (ppp.error set on that target — the FX result is still returned).
  • A request whose date has no FX data (empty results + a top-level message).

Not counted (errored):

  • 400 invalid_input — bad/missing params, or a future date.
  • 400 unknown_currency — an unrecognized from/to currency.
  • 400 missing_ppp_countriesppp=true without a country on every currency.
  • 401 / 403 — auth problems.
  • 429 — rate-limited or monthly quota exceeded.

Rate limits

Rate limits cap how many requests you can make per 60-second window, per the table above. Unlike the monthly limit, the rate limit applies to every request regardless of status — errored calls and retries still consume your window budget. When you exceed it you get 429 rate_limited with a Retry-After header. Test keys always use the Hobby rate limit.

Over-usage (soft cap)

Paid plans carry an over-usage rate (for example, $0.25 per 10,000 requests on Scale). On those plans, traffic beyond your monthly limit is billed at that rate instead of blocked — your API keeps serving. The Hobby plan has no over-usage rate: once its limit is reached, further requests return 429.

Hard usage cap

On paid plans, over-usage is billed automatically — convenient, but it means a traffic spike can run up your bill. A hard usage cap lets you set a ceiling so that, once you reach it, further requests are blocked for the rest of the billing period instead of being billed as over-usage.

  • Off by default. Turn it on from the Billing page in your dashboard (owners and admins only).
  • You choose the number. It defaults to your plan’s monthly request limit — keep it there to allow no over-usage at all, or set it higher to allow a bounded amount of over-usage before requests stop.
  • When you hit the cap, requests return 429 (the same status as an exceeded quota) until the period resets at the start of the next month.
  • Heads-up emails. We email you when you reach 80% and 100% of your cap.
  • Hobby is already a hard cap at its included quota, so this setting doesn’t apply there.

Need a custom plan?

For higher volume, custom rate limits, annual commitments, SLAs, or anything that doesn’t fit the tiers above, we’ll tailor a plan to your usage. Contact us and we’ll set you up — your custom plan then appears on your dashboard’s Plans page, visible only to your organization.