Why ExchangeRate-API Is Not a Standard Reference Rate: What Its Own Terms and Docs Say

Reviewed by Madhushan, Fintech Developer — November 2026

ExchangeRate-API is one of the most widely used currency APIs. It has run since 2010, it is easy to integrate, and its free plan is generous. For showing an approximate price it does the job. The trouble starts when its number is used as the exchange rate in invoices, ledgers, tax filings or settlements, because by its own description it is not that kind of rate.

Sources. Every statement about ExchangeRate-API below is quoted from its own website, documentation and terms, read on 10 November 2026. Check those pages before relying on any of it, since they change.

What makes a rate a standard reference

When an accountant, an auditor, a tax authority or a contract talks about "the exchange rate", they mean a rate with five properties. These are the same ideas that benchmark rules such as the IOSCO Principles for Financial Benchmarks and the EU Benchmarks Regulation are built around: governance, a transparent methodology and accountability.

  1. A named publisher. You can say whose rate it is: the European Central Bank, the Federal Reserve, HMRC.
  2. A stated method and time. You know how the figure is produced and what moment it refers to.
  3. A stable record. The figure for a past date exists, can be looked up again, and does not silently change.
  4. Fitness stated by the publisher. The publisher says what the rate may be used for.
  5. Someone accountable. There is an institution or a contract behind it, not just a URL.

Test 1: a named publisher

ExchangeRate-API's rate is its own composite. Its data page says: "We collect forex data from 30+ different sources. These include central banks that publish reference rates & commercial markets where we can calculate the midpoint of where a particular currency pair's spread is trading." And then: "we use our own algorithm to blend all the available data into one composite indicative exchange rate."

The sources are not listed. The only institution named anywhere is the European Central Bank, as an example. So the figure you receive was not published by any central bank and was not traded in any market. There is no institution you can cite for it other than ExchangeRate-API.

Test 2: a stated method and time

The method is described in one sentence: "This blending takes into account data age weightings and evaluations of a source's previous accuracy." The weights, the sources and the algorithm are not published. No fixing time is stated: the rate is not "as at 4pm London" or "noon New York". The company classifies the result itself: "Our exchange rates are classed as indicative midpoint rates."

Freshness also varies by pair. The data page says "less common pairs of smaller currencies will not always update as often as our data refreshes." On the free plan and the open endpoint, data is refreshed once every 24 hours.

Test 3: a stable record

Historical data is not available on the free plan; it is on the Pro, Business and Volume plans. Full currency coverage starts on 1 January 2021, with a shorter list of 35 currencies back to 1990. The historical documentation adds its own warning: "We blend data from different sources to reduce inaccuracies & provide one indicative mid-rate for each calendar day. This data is suitable for reporting, dashboards, academic studies... but shouldn't be used for processing cross-currency settlements or backtesting day trading models."

Even the list of supported currencies is not stated consistently: the home page and the supported-currencies page say 165, while another home page tile and the data page say 161.

Test 4: fitness stated by the publisher

This is the test that settles it, because ExchangeRate-API answers it directly in its terms:

If the provider says the data is not recommended for actual transactions or as financial data, booking invoices or tax figures at that rate means using it against its own terms.

Test 5: someone accountable

The difficult currencies

ExchangeRate-API publishes a caution list for currencies where the official rate and the rate actually available differ: ARS, LYD, SSP, SYP, VES, YER and ZWL. For these it says "we default to the rates published by the appropriate central banks" and "Please take extra caution when using our data for these currencies as there is a chance it might disagree with other sources." The Iranian rial is listed as suspended since March 2026.

That is a sensible policy, and it shows the limit of a blend: for exactly the currencies where the choice of rate matters most, the composite steps aside and a central bank table is used anyway, without the response telling you which one or of what date.

Scorecard

TestA standard reference rateExchangeRate-API, in its own words
Named publisherA central bank or tax authority"one composite indicative exchange rate" from 30+ unlisted sources
Method and timePublished method, stated fixing time"our own algorithm"; no fixing time
Stable recordDated table, retrievable laterHistory on paid plans; "one indicative mid-rate for each calendar day"
Stated fitnessPublished for a named purpose"only suitable for informational or illustrative purposes"
AccountabilityA public institution or a contract"as is"; liability limited to 500 rand; no published service level

Where you should not use it

What a standard source looks like

The standard source is the institution your rule or policy names, with its own date. A few examples of what "stated method and time" means in practice:

You can take these from each institution's website, or from an API that passes the table through unchanged with the publisher's date. AllRatesToday serves the official tables of 123 central banks and 6 tax authorities that way:

curl "https://allratestoday.com/api/open/central-bank/ecb"
# "bank": "ecb", "rate_date": "2026-11-09", "cadence": "daily",
# "rates": [ { "base": "USD", "quote": "EUR", "type": "reference", "value": ... }, ... ]

One caution applies to every vendor, ours included: a live mid-market rate is not an official rate, whoever serves it. It is the right number for showing a price. For anything a rule, an auditor or a contract will check, use the published table.

FAQ

Is ExchangeRate-API accurate?

It describes its rates as indicative midpoint rates blended from more than 30 sources, and its terms say it cannot guarantee the accuracy of any exchange rate it provides. For approximate prices that is usually enough. It is not a figure published by a central bank.

Can I use ExchangeRate-API for accounting or tax?

Its terms say the data is only suitable for informational or illustrative purposes and that use for actual transactions or as financial data is explicitly not recommended. Accounting and tax rules usually name a central bank or tax authority rate, which is a different figure.

Where does ExchangeRate-API get its rates?

It says it collects data from more than 30 sources, including central banks and commercial markets, and blends them with its own algorithm into one composite indicative rate. The sources are not listed.

Is the ExchangeRate-API free plan allowed for commercial use?

Yes. Its terms say both the free plan and paid accounts are suitable for commercial or personal use. The open endpoint requires an attribution link and the data may not be redistributed.

What should I use when I need a rate I can cite?

The table published by the institution your rule or policy names, with its publication date: for example the European Central Bank, the Federal Reserve, HMRC or your own central bank.

Rates with a name and a date on them

The official tables of 123 central banks and 6 tax authorities, each with the publisher's own date, as JSON, CSV, XML or Excel. Dated tables and history on paid plans.

See plans

Related Articles