"How often are the rates updated?" is the single most asked question about exchange rate APIs. It shows up in every API's FAQ, every developer forum thread, and every Stack Overflow comparison. And for good reason — the answer determines whether an API is suitable for your project or a liability waiting to happen.
The Three Layers of "Update Frequency"
When an API says "rates updated every X," that statement hides three separate concerns.
1. Real-Time vs Delayed Data
The forex market trades 24 hours a day, 5 days a week. Currency prices change every second. An API's update frequency tells you how closely it tracks those changes:
- Real-time (seconds to minutes): Pulls from live interbank market feeds. Essential for trading, payments, and any app where a 1% swing matters.
- Hourly: A middle ground. Acceptable for dashboards and reporting, but misses intraday volatility.
- Daily: A single snapshot, usually from the ECB at 16:00 CET. Fine for accounting and invoicing.
Example: On March 11, 2026, GBP/USD moved from 1.2910 to 1.2745 within 6 hours after an unexpected Bank of England announcement. An app using daily rates would have shown a price that was off by 1.3% for the entire day — a $13 discrepancy on every $1,000 transaction.
2. The "Free Tier" Trap
Most exchange rate APIs advertise real-time capabilities but lock them behind paid plans. Here is what free tiers actually deliver:
| API | Free Tier Update | Paid Tier Update |
|---|---|---|
| AllRatesToday | Every 60 seconds | Every 60 seconds |
| Open Exchange Rates | Hourly | Every 5 minutes |
| Fixer.io | Daily | Every 60 seconds |
| ExchangeRate-API | Daily | Daily |
| CurrencyAPI | Daily | Hourly |
| Frankfurter | Daily (ECB) | N/A (free only) |
Notice the pattern: most free tiers give you daily rates only. You build your app, test it, ship it — and then discover during market volatility that your "exchange rate feature" is showing yesterday's price.
AllRatesToday is different: The free tier gets the same 60-second update frequency as paid plans. The only limit is request volume, not data freshness.
3. Accuracy vs Latency: What Does "Real-Time" Actually Mean?
This is the subtlety most developers miss. "Real-time" can mean two very different things:
- Real-time source: The underlying data comes from live institutional interbank feeds. The rate itself is current.
- Real-time delivery: The API responds quickly, but the data might be a cached snapshot from hours ago. Fast delivery, stale data.
Always ask: "Is the data real-time, or just the API response?"
AllRatesToday sources data from institutional interbank market data and interbank market feeds — the same sources used by Google Finance, XE, and Bloomberg.
Which Update Frequency Do You Actually Need?
| Use Case | Minimum Update | Why |
|---|---|---|
| Trading / Forex | Real-time (seconds) | Price slippage directly costs money |
| Payment processing | Real-time (minutes) | Conversion at checkout must reflect current market |
| E-commerce price display | Hourly to real-time | Stale rates erode margins or overcharge customers |
| SaaS multi-currency billing | Daily to hourly | Invoices are usually generated at intervals |
| Accounting / Tax reporting | Daily | Regulatory bodies accept end-of-day rates |
How to Verify an API's Update Frequency
Don't take marketing claims at face value. Here is a simple test:
# Fetch the rate, wait 2 minutes, fetch again
# Compare the timestamps and values
curl -s "https://allratestoday.com/api/v1/rates?source=USD&target=EUR" \
-H "Authorization: Bearer YOUR_API_KEY" | jq '.time, .rate'
sleep 120
curl -s "https://allratestoday.com/api/v1/rates?source=USD&target=EUR" \
-H "Authorization: Bearer YOUR_API_KEY" | jq '.time, .rate'
If the timestamps are different and the rate has changed (even slightly), the API is genuinely updating. If both calls return the exact same timestamp, you are getting cached daily data.
The Bottom Line
- Daily rates are fine for accounting and reporting.
- Hourly rates work for dashboards and non-transactional displays.
- Real-time rates are essential for payments, e-commerce, and anything where money changes hands.
- Most free APIs give you daily data. Check the fine print before building on top of it.
AllRatesToday updates every 60 seconds from institutional interbank market data — even on the free plan. 160+ currencies.
Get your free API key | Documentation | GitHub
Written by the team behind AllRatesToday — an exchange rate API
with real-time mid-market rates for 160+ currencies and the official published tables of
116 central banks and tax authorities. The official-rate endpoint needs no key. Browse the
API docs or grab a free key
to start building.
Open source: official SDKs for JavaScript, Python, PHP, Go and Rust,
plus MCP servers and a hosted MCP endpoint at https://allratestoday.com/api/mcp for AI agents.
Top comments (0)