exchangerate.dev vs forex-python
exchangerate.dev brings intraday FX, daily history, and MCP together in one API.
Verdict
Choose exchangerate.dev when intraday freshness, per-value provenance, MCP-native access, and free-tier headroom matter. Keep forex-python if you want its Python interface and daily rates meet your needs.
At a glance
| Feature | exchangerate.dev | forex-python |
|---|---|---|
| Free tier | 10,000 requests/month | Free library; backend quota not published |
| Cheapest paid plan | Basic · $10/month | Not published |
| Update speed | Major pairs about 60s on trading days | Daily, around 3 pm CET |
| History | Daily from 1999; varies by pair | From 1999 |
| Coverage | 31 currencies; any supported base | Currency count not published |
| Interfaces | REST; MCP; WebSocket on Realtime | Python library |
| SDKs | Not published | Python; MIT licence |
| Commercial use on free tier | ✗ Non-commercial only | Data licence not published |
Price at your usage
The lowest published plans for each monthly request volume, with traffic spread across the month.
| Requests a month | exchangerate.dev | forex-python |
|---|---|---|
| 1,000 | Free · $0/month | Not published |
| 10,000 | Free · $0/month | Not published |
| 100,000 | Basic · $10/month | Not published |
The Python package is free; its upstream service publishes no request allowance for these monthly volumes.
Switch in a few minutes
Replace CurrencyRates with a plain HTTP request for EUR per USD on your server.
forex-python
exchangerate.dev
Why teams switch
Room to test a real workload
10,000 free monthly calls give you room to build around your own traffic pattern, from a small currency converter to a recurring rate lookup. No card is required, and any supported currency can be the base. The usage table maps three monthly volumes to the lowest qualifying plan, making the next step clear as requests grow. Commercial use starts on Basic at $10/month.
Rates with a time and a source
Major pairs update about every 60 seconds on trading days. Responses include source and market-session fields alongside observation timestamps, so your application can show where a value came from and when it was observed. Daily references remain identifiable as daily data. That context belongs beside the number in a customer interface, an internal report, or an agent answer that explains the rate it used.
One account for apps and agents
REST and MCP are included on every plan. Daily history begins in 1999 for many pairs, bringing current lookups and dated records into the same service. A developer can start with the HTTP examples above, then use MCP for agent queries without adding another subscription. The same base and target currencies carry through the workflow, from fetching a current rate to looking up a historical observation.
When they are the better pick
forex-python is a better fit when you want a Python library and daily rates are enough. It is MIT-licensed and its repository is not archived. Its CurrencyRates interface handles current and historical lookups directly in Python.
Questions
Is there a free forex-python alternative?
Yes. exchangerate.dev offers 10,000 calls per month, history to 1999, and MCP on every plan, with no card required. forex-python is an MIT-licensed Python library with daily rates and history to 1999.
When is forex-python a better fit?
Choose forex-python when you want a Python library and daily rates meet your needs. Its latest release is 1.9.2, dated 22 May 2025. Its repository is not archived.
Why does forex-python raise RatesNotAvailableError?
Its README recommends version 1.6 or newer to avoid that error. A source-not-ready error was also reported in August 2025. That historical report does not indicate a current outage; version and currency support determine the next troubleshooting step.
Can I use exchangerate.dev Free commercially?
Free is for non-commercial work. Commercial use starts on Basic at $10/month, subject to terms and source rights.
Sources and review date
Reviewed .