Comparison · Open Exchange Rates
Fiat Agent vs Open Exchange Rates
A generous monthly free tier pinned to a USD base — against any-base calls and history by date range.
What
Open Exchange Rates
Fiat Agent
Free tier
Open Exchange Rates
1,000 requests a month, hourly updates, historical data, USD as the only base currency.
Fiat Agent
Open endpoint, no key or card: 5 per second, 50 per hour, 50 per day per client. A new account also opens with a one-time 5,000-request signup bonus.
Paid entry point
Open Exchange Rates
$12 a month for 10,000 requests and all base currencies; $47 for 100,000.
Fiat Agent
No subscription. One-time top-up packs add to your balance; nothing renews, nothing expires.
Base currency
Open Exchange Rates
USD only on the free plan; other bases on paid plans.
Fiat Agent
Any published code, on both endpoints, with ?base=.
Allowance behaviour
Open Exchange Rates
Monthly limit that resets each billing period.
Fiat Agent
Nothing resets. The balance moves only when you call or buy more.
History
Open Exchange Rates
Historical endpoints included, including time series.
Fiat Agent
Every reading ever stored, reachable by UTC date range with ?from= and ?to=, or as up to 2,000 recent readings with ?snapshots=.
Response shape
Open Exchange Rates
Rates as a flat code-to-quote map, meta fields alongside.
Fiat Agent
meta plus data.latest, data.currencies and data.snapshots in one response.
Data
Open Exchange Rates
Widely used reference rates with hourly updates on the free plan.
Fiat Agent
Reference rates and the full currency catalogue with names, symbols and flags. Indicative data for quoting and display — not a trading feed.
Their figures are as published on their own pricing pages — check theirs before you buy, check ours before you plan
The short version
Open Exchange Rates has one of the friendliest free tiers in the category: a thousand requests a month, hourly updates and access to historical data, with paid plans starting at $12 a month. It is a common first choice for a prototype, because the free plan actually works.
The trade-offs appear as a project grows: the free tier quotes against USD only, the allowance resets monthly, and history is reached through its own endpoint shape. Fiat Agent takes a different route — any base currency on both endpoints, a balance that does not reset, and history read from the same response as the current rates.
One base currency, or any base currency
Quoting against USD is fine until a page needs to show the price in euros and the rate you fetched needs a division on every render. Fiat Agent accepts ?base= on both endpoints, so the reading arrives already quoted the way the page displays it.
If you do get USD-based quotes, the arithmetic for any pair is a single division rather than a second lookup: rate(A→B) = quote(B) ÷ quote(A).
JavaScript · re-quote an amount without a second call
const { data } = await res.json();
const rate = (from, to) => data.latest.rates[to] / data.latest.rates[from];
const total = 199.95;
console.log(
total.toLocaleString("en-US", { style: "currency", currency: "GBP" }),
"≈",
(total * rate("USD", "GBP")).toFixed(2),
"GBP",
);What a monthly reset buys and costs
A monthly allowance is good for steady workloads: the same thousand calls every month, predictable. It is less good for a service that is busy at launch and quiet afterwards, where most of the allowance simply evaporates.
A one-time balance behaves the opposite way: nothing expires, so a quiet month costs nothing; a loud one spends what you bought. The honest rule is that a monthly plan wins when you genuinely use most of it every month.
History without a second endpoint
In Fiat Agent, history is not a separate resource to learn. A keyed call accepts ?from= and ?to= as UTC calendar days, and the same response still carries the current reading, the catalogue and the account balance. One HTTP round trip, one shape to parse.
The honest split
Choose Open Exchange Rates when
- You publish only USD-based figures and want the largest free tier in the category.
- You rely on the time-series endpoint shape and have code written against it.
- You want a single monthly invoice for a steady, predictable volume.
Choose Fiat Agent when
- You quote prices in several currencies and would rather not divide on every render.
- You need history and current rates from one call, one contract.
- You want the free portion to be permanent rather than a monthly allowance.
Open Exchange Rates questions, answered
How many requests do I get for free on Fiat Agent?
Every account opens with a one-time 5,000-request signup bonus — no card, no expiry, shared across all of your keys. Before you sign up, the open endpoint lets you call with no key at 5 per second, 50 per hour, 50 per day per client.
Can I get rates based on EUR instead of USD?
Yes, on both endpoints: append ?base=EUR. Any code in the published catalogue works, and a code we do not publish answers a 400 invalid_base rather than a silent fallback.
Is the free allowance monthly?
No. There is no monthly reset anywhere in Fiat Agent. The signup bonus and any pack you buy stay in the balance until calls use them.
Test the claim in one request.
No key, no card: call the open endpoint on both services, compare the reading timestamps, and pick on evidence.