Compare the options
The table compares pricing, trials, updates, history, coverage, conversion and MCP. It does not establish a billing period for OANDA's unlabeled prices, reconcile XE's two currency counts or show that daily averages and spot rates are equivalent.
Plans, frequency, historical depth, and currency coverage
| Provider | Price from | Free tier | Update frequency | History | Coverage |
|---|---|---|---|---|---|
| exchangerate.dev | $19/month Basic; 100,000 requests | 5,000 requests/month; commercial use with a visible credit link | About 60 seconds for all 144 currencies on trading days, 15 minutes late on Free; ECB daily fallback | Free 30 days; Basic 1 year; Plus/Pro to 1999 where available | 144 currencies |
| Narwhal API | $59/month Basic; 100,000 requests | 5,000 requests/month; previous day close | Free: end of day (00:00 UTC); paid: live; interval not published | Stored observations by date range; start date not published | 144 currencies |
| XE Currency Data API | $799/year Lite; 10,000 requests/month | Free trial only | Daily Lite; hourly Intermediate; 15 minutes Prime; minutely add-on | Back to 1998 | Count stated two ways on its page |
| OANDA Exchange Rates API | Lite: $450 or $4,850, two unlabelled price sets on its pricing page; 100,000 quotes/month | 7-day free trial with unlimited quotes | Daily averages on Lite; up to 96 intraday fixings a day; 3 to 5 second spot on Premium plus | Over 32 years advertised; depth per plan not stated | Over 200 currencies and metals; 38,000+ pairs |
The shortlist
exchangerate.dev
- Best fit: Commercial rate displays needing conversion and included MCP
- Price from: $19/month Basic; 100,000 requests
- Free tier: 5,000 requests/month; commercial use with a visible credit link
- Update frequency: About 60 seconds for all 144 currencies on trading days, 15 minutes late on Free; ECB daily fallback
- History: Free 30 days; Basic 1 year; Plus/Pro to 1999 where available
- Coverage: 144 currencies
- Conversion: Single-amount and batch conversion endpoints
- MCP: Yes, nine tools, every plan including Free
exchangerate.dev suits commercial rate displays needing conversion and MCP. Basic costs $19 per month for 100,000 requests. Free provides 5,000 requests with a visible linked credit for commercial display. Free requires no card. Paid rates update about every 60 seconds across 144 currencies on trading days. Single and batch conversion and nine MCP tools are included. The trade-off is that rates are indicative, not executable or settlement prices; Free and keyless calls are 15 minutes late.
Sources: Plans and limits, API reference, Historical data, MCP server.
Narwhal API
- Best fit: Applications combining FX with commodities and economic data
- Price from: $59/month Basic; 100,000 requests
- Free tier: 5,000 requests/month; previous day close
- Update frequency: Free: end of day (00:00 UTC); paid: live; interval not published
- History: Stored observations by date range; start date not published
- Coverage: 144 currencies
- Conversion: Decimal-safe conversion endpoint
- MCP: Yes, hosted, same key and quota as REST
Narwhal API suits applications needing FX alongside commodities, economics and calendars. Basic costs $59 per month for 100,000 requests and live FX across 144 currencies. Free includes 5,000 monthly requests using the previous day's close at 00:00 UTC. It offers decimal-safe conversion and stored observations by date range. Hosted MCP uses the same key and quota. The trade-off is that its live update interval and historical start date are not published.
Sources: FX API documentation, Pricing.
XE Currency Data API
- Best fit: Annual packages including historical queries and monthly averages
- Price from: $799/year Lite; 10,000 requests/month
- Free tier: Free trial only
- Update frequency: Daily Lite; hourly Intermediate; 15 minutes Prime; minutely add-on
- History: Back to 1998
- Coverage: Count stated two ways on its page
- Conversion: Not mentioned on its page
- MCP: Not found
XE Currency Data API suits annual subscriptions needing historical rates, monthly averages and time-frame queries in every package. Lite costs $799 per year for 10,000 monthly requests and daily rates. Intermediate costs $1,799 for 50,000 and hourly rates; Prime costs $4,499 for 150,000 and 15-minute rates. History reaches 1998, with minutely updates sold as add-ons. The trade-off is annual-only billing with a trial rather than a free tier; coverage is stated two ways, and conversion and MCP were not found on its page.
Sources: Plans and features. Full comparison: XE Currency Data API vs exchangerate.dev →
OANDA Exchange Rates API
- Best fit: Bid ask averages and higher-tier streaming requirements
- Price from: Lite: $450 or $4,850, two unlabelled price sets on its pricing page; 100,000 quotes/month
- Free tier: 7-day free trial with unlimited quotes
- Update frequency: Daily averages on Lite; up to 96 intraday fixings a day; 3 to 5 second spot on Premium plus
- History: Over 32 years advertised; depth per plan not stated
- Coverage: Over 200 currencies and metals; 38,000+ pairs
- Conversion: Not stated on its pricing page
- MCP: None found; third-party connector only
OANDA suits applications needing daily bid, ask and mid averages, or higher-tier forwards and streaming. Lite lists 100,000 monthly quotes at $450 or $4,850. Premium adds unlimited quotes, period averages, open and close; Premium plus adds 3 to 5 second spot rates, forwards and streaming. A 7-day trial includes unlimited quotes. The trade-off is that its two price sets are unlabeled, historical depth per plan is not stated, and conversion is not stated on its pricing page.
Sources: Exchange Rates API, Pricing. Full comparison: OANDA Exchange Rates API vs exchangerate.dev →
Choose by rate type and pricing clarity
Start with the rate type your application needs. Then compare billing, quote allowances, historical queries and update intervals without assigning meaning to unlabeled prices or conflicting coverage counts.
| If you need | Start with |
|---|---|
| Rate type | OANDA Lite lists daily averages with bid, ask and mid; Premium adds period averages, open and close. XE includes historical rates and monthly averages. Choose the required rate type first. |
| Billing clarity | XE publishes annual-only packages. OANDA prints two unlabeled price sets, so retain both figures without assigning billing periods. Do not convert those unlabeled prices into a monthly comparison. |
| Update interval | XE moves from daily to hourly to 15-minute rates, with minutely add-ons. OANDA Premium plus lists 3 to 5 second spot rates and streaming; distinguish these from daily averages. |
| Historical requirements | XE includes historical rates, monthly averages and time-frame queries in every package, with history back to 1998. OANDA advertises over 32 years, but historical depth per plan is not stated. |
How we chose
We compared documented packages, price labels, rate types, updates, history, coverage, conversion and MCP. Sources were checked on 18 Oct 2026. This is a documented-feature comparison, not a benchmark. exchangerate.dev publishes this comparison and appears under the same criteria. Unlabeled prices remain unlabeled, conflicting coverage counts remain qualified, and unstated plan depth is not inferred. exchangerate.dev and Narwhal API are owned and operated by Nusantara Ventures, LLC.
Sources checked October 18, 2026. Prices and entitlements can change.
Related comparisons
- Best exchange rate APIs for developers: The broader comparison of developer exchange-rate services
- Best currency APIs (2026): Currency coverage and amount conversion in apps
- Best forex APIs (2026): Streaming, candles, history, and execution requirements
- Free exchange rate API comparison: A closer look at free-plan limits and trade-offs
- Best free exchange rate APIs (2026): Free quotas, freshness, keyless access, and commercial terms
- Best currency converter APIs (2026): Amount conversion endpoints, plan access, and app integration
- ExchangeRate-API alternatives (2026): Alternatives for daily rates, conversion, history, and MCP
- currencyapi alternatives (2026): Commercial terms, free access, update plans, and conversion
- Fixer alternatives (2026): Base selection, conversion access, and alternatives to Fixer
- Open Exchange Rates alternatives (2026): Free bases, amount endpoints, MCP, and billing periods
- Best historical exchange rate APIs (2026): Archive depth, date ranges, and historical plan access
- Best currency APIs with MCP (2026): MCP connections, tool access, quotas, and rate terms
- Exchange rates in Google Sheets and Excel: Sheets formulas, Apps Script, Excel data, and Power Query
- OANDA API alternatives: Observation types, historical depth, and alternatives to OANDA
- Frankfurter alternatives: Daily rates, newer observations, conversion, and keyless access
- Currencylayer alternatives: Commercial terms, source currencies, conversion, and update plans
- exchangerate.host alternatives: Free access, date ranges, and alternatives to exchangerate.host
- XE API alternatives: Annual billing, update intervals, and alternatives to XE
- XE vs Wise exchange rates: Converter displays, transfer quotes, and rates in code
- Wise API alternatives (2026): Related comparisons of exchange rate API access
- Fixer vs Open Exchange Rates (2026): Related guides to quotas and historical rate access
- Fixer vs Currencylayer (2026): Related comparisons of plan limits and feature access
- currencyapi vs freecurrencyapi (2026): Related guides to free quotas and commercial access
- Frankfurter vs ExchangeRate-API (2026): Related comparisons of free daily currency rate APIs