ExchangeRate-API gives you 1,500 free requests a month, any base currency on the free key, and paid plans from $10/month. What the free key doesn't give you is historical data, intraday updates or quota leniency. Those start on Pro.
Below are the current 2026 ExchangeRate API plans, what its free tier leaves out, how the v6 history endpoint compares with CurrencyFreaks historical data, and where each API is the cheaper pick.
ExchangeRate-API Pricing Plans (2026)
Prices checked on 1 October 2026 against exchangerate-api.com. Yearly billing on any ExchangeRate-API plan costs 10 months' price.
| Plan | Monthly price | Yearly price | Requests/month | Update frequency | Historical data |
|---|---|---|---|---|---|
| Free | $0 | - | 1,500 | Once a day | ❌ |
| Pro | $10 | $100 | 30,000 | Every 60 minutes | ✔ |
| Business | $30 | $300 | 125,000 | Every 5 minutes | ✔ (plus enriched data) |
| Volume | Contact / custom | $700 | Higher than Business | Every 5 minutes | ✔ (plus enriched data) |
Every ExchangeRate-API plan covers the same 161 currencies. Paying more buys you requests and refresh speed, not coverage.
CurrencyFreaks Plans for Comparison
| Plan | Monthly price | Yearly price | Requests/month | Update frequency | Historical data |
|---|---|---|---|---|---|
| Developer | $0 | - | 1,000 | Every 24 hours | ❌ |
| Starter | $9.99 | $99.99 | 15,000 | Hourly | ✔ |
| Growth | $49.99 | $499.99 | 150,000 | Every 10 minutes | ✔ (plus IP to currency) |
| Professional | $99.99 | $999.99 | 550,000 | Every 60 seconds | ✔ (plus time series, fluctuation) |
On raw cost per request, ExchangeRate-API wins. Pro works out to about $0.33 per 1,000 requests, against $0.67 for CurrencyFreaks Starter. If you only need fiat rates refreshed hourly and nothing else, that gap is real and you should take it. The case for CurrencyFreaks rests on what you get per request: currencies instead of 161, 60-second updates on Professional, and endpoints ExchangeRate-API doesn't have at any price.
ExchangeRate API Free Tier: Limits and What's Missing
There are two free options, and people often mix them up.
Free API key (v6.exchangerate-api.com). You sign up, get a key and 1,500 requests a month. Rates refresh once a day. You can set any base currency in the URL, which is better than the CurrencyFreaks free plan (USD base only).
Open access (open.er-api.com). No key at all. Same daily refresh, but you must show a "Rates By Exchange Rate API" attribution link in your app. ExchangeRate-API asks you to poll at most once an hour, and hammering it returns HTTP 429 for 20 minutes.
What the free key leaves out, per ExchangeRate-API's own plan list:
- Historical data (the
/historyendpoint returns a plan error) - Enriched data such as country codes and currency symbols
- Relaxed quota enforcement, so requests stop when you hit 1,500
- Email support
- The LTS commitment that endpoints won't be retired
- Pricing lock for existing customers
None of the free options include crypto, precious metals, XML responses or IP-based currency lookup. Those don't exist on paid plans either.
ExchangeRate-API v6 Historical Endpoint vs CurrencyFreaks Historical Data
ExchangeRate-API's v6 history endpoint takes the date as path segments:
GET https://v6.exchangerate-api.com/v6/YOUR-API-KEY/history/USD/2026/08/20
Add an amount as a fifth segment (/2026/08/20/500) and it returns converted amounts too. One call returns one day, for one base currency, against every currency it has on file for that day.
The coverage has a cut-off that's easy to miss. Full currency coverage only starts on 1 January 2021. From 1990 to the end of 2020, the history endpoint returns just 35 currencies (AUD, BRL, CAD, CHF, CNY, DKK, EUR, GBP, JPY, USD and others). Ask for PKR in 2015 and you won't get it.
The CurrencyFreaks historical endpoint looks like this:
GET https://api.currencyfreaks.com/v2.0/rates/historical?date=2026-08-20&base=gbp&symbols=usd,eur,pkr,cad&apikey=YOUR_APIKEY
Differences that change what you can build:
| CurrencyFreaks | ExchangeRate-API v6 history | |
|---|---|---|
| Cheapest plan with history | Starter, $9.99/month | Pro, $10/month |
| How far back | Back to 28 November 1984 | 1990 for 35 currencies, 2021 for the full list |
| Per-currency start dates | Queryable via /v2.0/historical-data-limits |
Not exposed by an endpoint |
| Filter to specific currencies | ✔ (symbols parameter) |
❌ (returns all rates for the day) |
| Historical conversion | ✔ (/v2.0/convert/historical) |
✔ (amount path segment) |
| Date range in one call | ✔ (time series endpoint, Professional plan) | ❌ (one call per day) |
| Fluctuation between two dates | ✔ (Professional plan) | ❌ |
The one-call-per-day limit adds up quickly. A year of daily EUR rates from ExchangeRate-API costs 365 requests, which is 1.2% of a Pro month. On CurrencyFreaks Professional it's a single time series request. For a chart or a backtest, that difference matters more than the $0.01 between the entry prices.
ExchangeRate-API also says its history data shouldn't be used for cross-currency settlements or for backtesting day-trading models. Check that against your use case before you build on it.
Feature Comparison: CurrencyFreaks vs ExchangeRate-API
| Feature | CurrencyFreaks | ExchangeRate-API |
|---|---|---|
| Currencies | 1000+ ( fiat, | 161 (fiat only) |
| Free plan requests | 1,000/month | 1,500/month |
| Fastest update | 60 seconds (Professional) | 5 minutes (Business) |
| Base currency on free plan | USD only | Any |
| Response format | JSON and XML | JSON only |
| Latest rates conversion | ✔ (paid plans) | ✔ (pair endpoint) |
| Historical rates | ✔ (paid plans, back to 1984) | ✔ (paid plans, full list from 2021) |
| Time series endpoint | ✔ (Professional plan) | ❌ |
| Fluctuation endpoint | ✔ (Professional plan) | ❌ |
| IP to currency endpoint | ✔ (Growth plan+) | ❌ |
| Authorization | API key | API key (or keyless open access) |

Which One Should You Pick?
Pick ExchangeRate-API if:
- you only need major fiat currencies and hourly refresh is enough
- you want a non-USD base currency without paying
- cost per request is the deciding number
Pick CurrencyFreaks if your app needs crypto or metals next to fiat, pre-2021 history for currencies outside ExchangeRate-API's 35, date ranges in one request, or a visitor's currency from their IP. ExchangeRate-API has no answer for those at any tier, so you'd end up running a second API next to it.

FAQs
Is ExchangeRate-API Free?
Yes. The free key gives 1,500 requests a month with daily updates, and the keyless open access endpoint is free with an attribution link. Historical data, faster updates and support need a paid plan from $10/month.
Does The ExchangeRate-API Free Tier Include Historical Data?
No. The v6 /history endpoint is only open to Pro, Business and Volume plans. CurrencyFreaks also keeps history on paid plans, starting with Starter at $9.99/month.
How Far Back Does ExchangeRate-API Historical Data Go?
To 1 January 1990, but only for 35 major currencies. The full 161-currency list starts on 1 January 2021. CurrencyFreaks history goes back to 28 November 1984, and the historical-data-limits endpoint tells you the first available date for each currency.
Can I Change The Base Currency On The ExchangeRate API Free Plan?
Yes. You set it in the URL, for example /v6/YOUR-API-KEY/latest/EUR, and it works on the free key. The CurrencyFreaks free plan is fixed to USD, and any base is available from Starter.
How Many Currencies Does ExchangeRate-API Support?
161, all fiat. It doesn't cover cryptocurrencies or precious metals, which CurrencyFreaks includes on every plan.
Is ExchangeRate-API Cheaper Than CurrencyFreaks?
Per request, yes. Pro gives 30,000 requests for $10, against 15,000 for $9.99 on CurrencyFreaks Starter. CurrencyFreaks costs more per call but covers more currencies, updates every 60 seconds on Professional, and has time series, fluctuation and IP-to-currency endpoints that ExchangeRate-API doesn't offer.




