exchangeratesapi.io Alternative: AllRatesToday Currency API
exchangeratesapi.io was a beloved free ECB API before the apilayer takeover added keys and quotas. AllRatesToday offers real-time rates for 160+ currencies, a keyless ECB endpoint, and EUR pricing.
exchangeratesapi.io started life as a free, open ECB reference-rate API that thousands of tutorials and side projects were built on. Since the apilayer takeover it's a different product: an API key is required, the free plan carries a small monthly quota, and several capabilities — including, as of the takeover, HTTPS and base-currency switching on the lowest tiers — moved behind paid plans. If you built against the original free API, or the current constraints no longer fit, AllRatesToday is a modern alternative: real-time rates for 160+ currencies, HTTPS everywhere, and a keyless open ECB endpoint for the original use case.
At a glance
| AllRatesToday | exchangeratesapi.io (post-apilayer) | |
|---|---|---|
| API key required | Free key in 30 seconds; keyless open ECB endpoint too | Yes — required since the apilayer takeover |
| Free tier requests | Free tier | Around 100 req/mo |
| HTTPS on free tier | Yes | Historically restricted on the lowest tiers |
| Base currency on free tier | Any of 160+ | EUR base on the free plan |
| Update cadence | Real-time, every 60 seconds | Depends on plan tier |
| Currencies | 160+ | Broad fiat coverage |
| Official central bank rates | 54 central banks + 3 tax authorities, same key | ECB-rooted heritage; multi-bank official rates not offered |
| Entry paid plan | €4.99/mo — 5,000 req | Per apilayer's public pricing page |
Pricing and feature details are based on each provider's public pricing pages and may change. Check the vendor's site for the latest figures.
Why teams switch from exchangeratesapi.io to AllRatesToday
1. The free API you remember doesn't exist anymore
The original keyless exchangeratesapi.io is gone; requests without an access_key fail.
If you want that spirit back, AllRatesToday's open ECB endpoint serves the latest official ECB
reference table with no key at all — and a free registered key unlocks real-time market rates for
160+ currencies.
2. HTTPS and base switching without a paywall
As of the apilayer takeover, HTTPS and base-currency switching sit behind paid tiers on the lowest plans. AllRatesToday ships HTTPS on every plan, and any plan can use any source currency.
3. Real-time market rates, not just a daily reference
The ECB reference rate is published once per working day — perfect for accounting, stale for user-facing conversion. AllRatesToday serves mid-market rates from institutional interbank market data, updated every 60 seconds, alongside the official reference tables when you need those.
4. Predictable EUR pricing
Plans go €4.99, €9.99, €49.99 per month (5,000 / 10,000 / 100,000 requests) with self-serve cancellation — see pricing.
Official central bank rates — the part no market feed offers
Beyond live market rates, AllRatesToday serves the official published rates of 54 central banks and three tax authorities (HMRC, US Treasury, Swiss BAZG) under the same API key — the ECB reference rate for EU accounting, the Banxico FIX that legally settles USD obligations in Mexico, HMRC's monthly customs rates, and more, each under the bank's own publication date. If your workload ever touches invoicing, accounting, customs, or audit, this is the difference that matters: a market feed answers "what does the pair trade at?", while compliance asks "which rate were you required to use?" (Our central bank API comparison covers the landscape.)
Drop-in code example
The response family is similar, so most migrations are a URL and auth change:
// Before — exchangeratesapi.io (key required post-takeover)
fetch('https://api.exchangeratesapi.io/v1/latest?access_key=YOUR_KEY&symbols=USD,GBP')
// After — AllRatesToday (any source, Bearer header)
fetch('https://allratestoday.com/api/v1/rates?source=EUR&target=USD,GBP', {
headers: { Authorization: 'Bearer art_live_xxxxx' }
})
.then(r => r.json())
.then(rows => console.log(rows));
// Or the official ECB table, keyless — the original use case:
fetch('https://allratestoday.com/api/open/central-bank/ecb')
.then(r => r.json())
.then(console.log); Honest pros and cons
Where AllRatesToday wins
- Keyless open ECB endpoint — the original free use case, preserved
- HTTPS and any base currency on every plan
- Real-time (60-second) market rates
- Official rates from 54 central banks, not just the ECB
- Official SDKs for JS, Python, PHP and React
Where exchangeratesapi.io may still suit you
- You've already migrated to the keyed version and it works
- Your procurement only approves apilayer-billed vendors
- You rely on a specific historical archive of theirs
/api/open/central-bank/ecb endpoint first — zero sign-up — then add a free key when
you want real-time or multi-currency calls.
FAQ
Is exchangeratesapi.io still free?
There is a free plan, but as of the apilayer takeover it requires an API key and carries a small monthly quota, with several features reserved for paid tiers. The original keyless API no longer responds without a key.
Does AllRatesToday serve ECB reference rates too?
Yes — the ECB is one of our 54 central bank sources, served under its own publication date, with a keyless open endpoint for the latest table.
Will the JSON shape feel familiar?
Yes — source currency, targets, rates, and dates. Most integrations change the URL, the auth style, and a few key names.
Try it in two minutes
Get a free API key — or hit the keyless ECB endpoint right now.
Get free API key See pricing