Comparison · Frankfurter (open source)

Fiat Agent vs Frankfurter

No key, no account, central-bank rates — genuinely free, and genuinely daily.

Facts checked 1 November 2026Where each one wins

Cost

Frankfurter

Free, no key, no account, open source.

Fiat Agent

Open endpoint free with no key; a key opens with a one-time 5,000-request signup bonus, then one-time packs.

Cadence

Frankfurter

Daily reference rates as published by the underlying sources.

Fiat Agent

The store is refreshed on a fixed cadence and every response states the timestamp of the reading behind it.

Base currency

Frankfurter

Any base, with cross rates calculated server-side.

Fiat Agent

Any published code, on both endpoints, with ?base=.

History

Frankfurter

Daily history from the underlying official sources.

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=.

Accounts and keys

Frankfurter

None. Nothing to rotate, nothing to meter.

Fiat Agent

Per-account keys you can label and revoke, with a visible balance and per-key usage.

Throttling

Frankfurter

No published per-client windows; fair use.

Fiat Agent

The open endpoint is bounded (5 per second, 50 per hour, 50 per day); keyed calls are not.

Output

Frankfurter

JSON and CSV.

Fiat Agent

JSON only, with CORS enabled on every response.

Their figures are as published on their own pricing pages — check theirs before you buy, check ours before you plan

The short version

Frankfurter is the honest answer to a lot of searches for a free currency API: no key, no account, no billing, open source, and reference rates from central banks and official sources. If all you need is a daily reference figure for a chart or a calculator, it is hard to beat free.

The trade-off is cadence and control. Central-bank reference rates are published once per business day, so intraday movement is not visible; there is no account, so there is no per-account balance, key rotation or usage record. Fiat Agent exists for the cases where those things matter — and it also has an open endpoint, so you can compare them without signing up for anything.

When Frankfurter is the right call

If your page shows yesterday's official rate, or a chart of monthly averages, then a daily central-bank reference figure is exactly the semantics you want — and paying for anything else would be a mistake.

It is also the only option here you can self-host, which some teams require for compliance reasons. That is a real advantage no hosted API can match.

When a stored, metered reading helps

Two things get harder with a public, unmetered endpoint: knowing how old a figure is, and knowing which of your systems used it. Fiat Agent stores each reading before serving it and returns the timestamp of that reading, so a displayed price can always be traced to the moment it was taken.

The other difference is operational: keys you can revoke per environment, a balance that tells you what a service is consuming, and responses that fail loudly with typed error codes rather than an empty object.

JavaScript · proving a quote's age

const res = await fetch("https://fiatagent.base44.app/api/v1/public/rates");
const { meta, data } = await res.json();

const ageMinutes = Math.round((Date.now() - new Date(meta.updated_at)) / 60000);
console.log(data.latest.rates.EUR, "EUR per USD, read", ageMinutes, "minutes ago");

Trying both costs nothing

Frankfurter needs no signup, and neither does Fiat Agent's open endpoint. Fetch the same pair from both, compare the figures against the official source, and pick the one whose cadence matches what you display. That is a ten-minute decision, not a procurement exercise.

The honest split

Choose Frankfurter when

  • You need one daily official figure and nothing else.
  • You must self-host, or you cannot depend on a vendor.
  • You want CSV as well as JSON with no account at all.

Choose Fiat Agent when

  • You want a finer-than-daily reading with a timestamp on every response.
  • You need revocable keys, per-account balances and usage you can attribute.
  • You want current rates and a date-range history from one contract.

Frankfurter questions, answered

Is Fiat Agent free like Frankfurter?

The open endpoint is free and needs no key, capped at 5 per second, 50 per hour, 50 per day per client. A key does not cost anything either — every account opens with a 5,000-request signup bonus that never expires. You only pay when you buy more requests.

Where do Fiat Agent's rates come from?

One upstream provider, read into Fiat Agent's own store and served from there. The About page states the provider, the derivation method and the timestamp of the latest stored reading.

Can I self-host Fiat Agent?

No. It is a hosted service with a managed store. If self-hosting is a requirement, an open-source option is the right choice.

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.