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.

Facts checked 1 November 2026Where each one wins

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.