Skip to content
Frankfurter alternative

Frankfurter API alternative: fxapi vs Frankfurter

Frankfurter is free, keyless and open source. Here’s what it covers, where fxapi adds intraday updates, analytics endpoints and paid plans with defined quotas, and how to move over.

Last updated: · fxapi team

Frankfurter is a popular free, open-source exchange rate API that began with European Central Bank reference rates. This page is for developers deciding whether Frankfurter covers their needs or whether they need a Frankfurter API alternative with intraday updates, analytics endpoints or a commercial plan. To be direct: if you need daily central-bank reference rates with no key and no quota, Frankfurter is hard to beat – it now covers 223 currencies from 104 central banks and official sources, back to 1948. fxapi fits when you need rates more often than once a day, a conversion endpoint, fluctuation and period averages, crypto and precious metals, or a paid plan with a defined quota and an SLA.

fxapi vs Frankfurter at a glance

CriterionfxapiFrankfurter
Free plan300 requests/month (10/minute), daily updates, API keyFree, no API key, no monthly or daily quotas; rate-limited to prevent abuse
Entry paid planBasic: $9.99/month, 15,000 requestsNo paid plans; self-hosting via Docker
Update frequencyDaily (Free), hourly (Basic), 60 seconds (Professional, Enterprise)Daily
Currencies190+ (fiat, legacy, 4 metals, 16 crypto)223
Historical dataDaily, back to 1999-01-01Back to 1948
Time series/v1/range, Professional ($34.99) and up; day to minute accuracy/v2/rates with from/to; group=week or month to downsample
Conversion/v1/convert, Basic and upNo endpoint; multiply a pair rate in your code
Fluctuation/v1/fluctuation, all plans incl. FreeNot stated
Averages endpoint (IAS 21)/v1/average, all plans incl. FreeNot stated
Crypto & metals16 crypto, XAU/XAG/XPT/XPDNot stated
Base currency switching on free planYes, any codeYes (base)
MCP server for AI agentsHosted at https://api.fxapi.com/mcpNot stated
SDKsOfficial: JavaScript, Python, PHP, Go, Ruby, C#, RustNot stated

Competitor information checked on October 8, 2026 from frankfurter.dev, frankfurter.dev/docs, frankfurter.dev/v1 and the GitHub repository. Plans change – verify on their site.

Where Frankfurter is strong

  • Free, keyless, no quotas. Nothing to sign up for, no key to protect – ideal for prototypes, side projects, static sites and teaching.
  • Open source and self-hostable. The code is MIT-licensed, and docker run -d --init -p 8080:8080 lineofflight/frankfurter starts your own instance. Self-hosting removes any dependency on the public endpoint’s rate limits.
  • Official-source data with attribution. Frankfurter blends rates from 104 central banks and official sources. providers=ecb scopes results to one provider and expand=providers shows which providers contributed to each row – useful when auditors ask where a number came from.
  • Deep history. Data goes back to 1948, far earlier than most commercial APIs, including fxapi (1999).
  • Wide coverage. 223 currencies, with legacy currencies available via scope=all on /v2/currencies.
  • Flexible output. Append .csv or send Accept: text/csv for CSV; Accept: application/x-ndjson streams large series line by line.
  • Stable v1. v1 is deprecated in favor of v2 but, per the docs, remains available indefinitely.

Where fxapi is different

Intraday updates

Frankfurter publishes daily rates. fxapi refreshes hourly on Basic and every 60 seconds on Professional and Enterprise, and every response carries meta.last_updated_at. If you price in multiple currencies during market hours or show live conversions, see real-time exchange rates and end-of-day vs real-time rates.

Endpoints that do the math

  • /v1/convert returns converted amounts, optionally at a historical date (Basic and up).
  • /v1/fluctuation returns start_rate, end_rate, change and change_pct (all plans).
  • /v1/average returns monthly, quarterly, yearly or total averages with min and max per period – built for IAS 21 and ASC 830 (all plans).
  • /v1/range adds hour, quarter_hour and minute accuracy for recent data (Professional and up).

Crypto and precious metals

fxapi covers 16 cryptocurrencies and gold, silver, platinum and palladium alongside fiat, and any of them can be the base_currency. See crypto exchange rates and gold and silver prices.

A plan you can build commitments on

Paid fxapi plans come with a defined monthly quota, no per-minute limit, multiple API keys, team management (Professional and up), sandbox keys, and IP/URL whitelisting plus an SLA on Enterprise. Quota usage is visible at /v1/status and in response headers.

MCP and SDKs

The hosted MCP server gives AI agents tool access to rates; official SDKs cover JavaScript, Python, PHP, Go, Ruby, C# and Rust.

Migrating from Frankfurter to fxapi

Endpoint mapping

FrankfurterfxapiNotes
/v1/latest, /v2/rates/v1/latestbase → base_currency; symbols / quotes → currencies
/v1/YYYY-MM-DD, /v2/rates?date=/v1/historicaldate=YYYY-MM-DD
/v1/START..END, /v2/rates?from=&to=/v1/rangedatetime_start, datetime_end, accuracy=day (or week/month instead of group)
/v2/rate/{base}/{quote}/v1/latestbase_currency=EUR&currencies=USD
Rate × amount in your code/v1/convertvalue, base_currency, currencies
/v1/currencies, /v2/currencies/v1/currenciesAdds symbols, decimal digits, countries
/v2/providers–fxapi does not expose sources
.csv suffix / Accept: text/csvformat=csvOn /v1/range, /v1/fluctuation, /v1/average

Response shape

Frankfurter v1 returns amount, base, date and a flat rates object (example response; values change daily):

{"amount":1.0,"base":"EUR","date":"2026-10-06","rates":{"GBP":0.8488,"USD":1.1269}}

Frankfurter v2 returns an array of rows, each with date, base, quote and rate. fxapi returns meta.last_updated_at and a data object keyed by currency code – read data.USD.value.

Before and after

Frankfurter v1:

curl "https://api.frankfurter.dev/v1/latest?base=EUR&symbols=USD,GBP"

fxapi:

curl -G "https://api.fxapi.com/v1/latest" \
  -d base_currency=EUR \
  -d currencies=USD,GBP \
  -H "apikey: $FXAPI_KEY"
// Frankfurter v1:  json.rates.USD
// fxapi:           json.data.USD.value
const res = await fetch(
  "https://api.fxapi.com/v1/latest?base_currency=EUR&currencies=USD,GBP",
  { headers: { apikey: process.env.FXAPI_KEY } }
);
const { data } = await res.json();
const rates = Object.fromEntries(Object.entries(data).map(([c, r]) => [c, r.value]));

The main new step is the API key: keep it on your server, send it in the apikey header and cache responses for your plan’s update interval – see caching exchange rates.

Verdict

Use Frankfurter if daily central-bank reference rates are what you need, you value no key and no quota, you want provider attribution, history before 1999, or the option to self-host. Choose fxapi if you need hourly or 60-second updates, conversion, fluctuation and IAS 21 averages as endpoints, crypto and precious metals, or a paid plan with a defined quota, multiple keys and an SLA. Both can run side by side – start with a free fxapi key.

fxapi is a foreign exchange rates API by Everapi GmbH (Austria): live and historical rates for 190+ currencies, time series, conversion, fluctuation and period averages.

Frequently asked questions

Is Frankfurter still free?
Yes. Frankfurter’s site states the public API needs no key and has no monthly or daily quotas, with rate limiting to prevent abuse. It is open source (MIT on GitHub) and can be self-hosted with Docker.
Does Frankfurter only use ECB data?
Not anymore by default. Frankfurter started with European Central Bank reference rates; its v2 API blends rates from 104 central banks and official sources, and providers=ecb restricts results to the ECB.
How often does Frankfurter update?
Daily. fxapi updates daily on Free, hourly on Basic and every 60 seconds on Professional and Enterprise – see real-time exchange rates.
Does Frankfurter have a conversion endpoint?
No. Its docs recommend fetching a pair rate and multiplying in your own code. fxapi offers /v1/convert from the Basic plan.
Can I use both?
Yes. Some teams keep Frankfurter for daily reference data and add fxapi where they need intraday rates, crypto, averages or a quota and SLA they can plan around.
Free plan · no credit card

Get your free exchange rate API key

300 requests a month, latest and historical rates, fluctuation and averages – free forever. Upgrade when you need faster updates or more requests.