OANDA API rate limits
What is recorded about how fast you may call the OANDA API: 1 limit record, the wording from the record and 1 related error code.
Risk warning: CFDs and spread bets are complex instruments and come with a high risk of losing money rapidly due to leverage. You can lose money on these products, and each provider publishes its own loss figure under FCA rules. You should consider whether you understand how they work and whether you can afford to take the high risk of losing your money. Automated and API trading can amplify losses through bugs, connectivity failures and runaway orders.
Recorded limits
One record per limit. The scope is part of the limit: a figure is only useful once you know whether it applies to a key, an account, a session or an address.
| Limit | Value | Scope | Source |
|---|---|---|---|
| Headline limit | 120/s per IP address, HTTP 429 above it | ip | developer.oanda.comchecked |
Rate limits, as the record words them
- Rate limits, as worded
OANDA publishes two figures, on two pages, in two units. The enforced one is on the development guide. The development guide states 120 requests a second per IP address, with HTTP 429 above that, and at most 20 active streams. The best practices page advises no more than 100 requests a second on an established connection and no more than 2 new connections a second. A request rate and an established connection rate are different units, so neither figure replaces or contradicts the other. Our inference and not OANDA's word: hold to the lower request rate and open no more than 2 new connections a second. Sources: https://developer.oanda.com/rest-live-v20/development-guide/ and https://developer.oanda.com/rest-live-v20/best-practices/, both read 23 September 2026, development guide re-read 24 September 2026.
OANDA v20 best practiceschecked
Error codes that concern limits
These are the decoded OANDA errors whose code or meaning names a rate limit, an allowance or throttling. Each row links to the full meaning and the fix.
| Code | HTTP status | Meaning, first sentence | Source |
|---|---|---|---|
| HTTP 429 | 429 | OANDA returned HTTP 429 because requests arrived faster than it would accept them. | developer.oanda.comchecked |
Pacing and backoff, in general
This part is general advice and says nothing about OANDA in particular. The figures that apply are the recorded ones above, and the provider's own documentation is the authority.
Pace before you are refused. Work out the gap between requests that keeps you under the limit, then leave a margin, because a limit counted by a provider's clock will not line up exactly with yours. Spread calls evenly: a burst at the start of each window is the usual way to hit a limit while staying under it on average. The rate limit calculator checks a polling plan against a limit and gives the shortest interval that fits.
When a request is refused for rate, stop sending and wait. Double the wait after each refusal in a row, add a small random amount so that several programs do not retry together, and cap the number of attempts. If the reply names how long to wait, use that figure in place of your own.
Take extra care with dealing requests. A refused or unanswered order may or may not have gone through, so check the state of the order before you send it again. Cache what does not change, such as instrument details and history you have already downloaded, and prefer a stream to polling where one is offered.
Where to go next
- The full OANDA record
- OANDA endpoints
- OANDA quickstart
- All OANDA error codes
- Broker API rate limits compared
- HTTP 429 across broker APIs
- Rate limits for every broker and platform
- The fact register
Other brokers: Axi, Bitget, Capital.com, CMC Markets, Deriv, Dukascopy, eToro, Exness, FOREX.com, FXCM, FxPro, IG, Interactive Brokers, Pepperstone, Saxo, Swissquote, ThinkMarkets, Tickmill, Trading 212, XTB.