fshy

Home / Data APIs

Frankfurter

frankfurter.dev/Exchange rate API (central bank reference rates, daily, history to 1948)data-apis/frankfurterJSONcomparereport an errorprovider JSON

Free allowance
Free public API at api.frankfurter.dev: no key, no quotas, no monthly or daily caps; requests are rate-limited only to prevent abuse; 228 currencies from 106 central banks and official sources, history back to 1948
Verdict
★ qualifiesusable as stated; the read path was probed
Cost
free tier
Identity
anonymousno card, no phone
Binding limit
request-raterate-limited to prevent abuse, size not published; no monthly or daily caps
Evidence
documented6 sources; a first-party page was read and the sentence quoted
Freshness
stale on 2026-12-04checked 2026-11-03 (live); stale on 2026-12-04
Free tierFree public API at api.frankfurter.dev: no key, no quotas, no monthly or daily caps; requests are rate-limited only to prevent abuse; 228 currencies from 106 central banks and official sources, history back to 1948
unit unlimited; metered on none; v2 is current and v1 is deprecated but stays available. Rates update once a day. Output is JSON, CSV or NDJSON. Keyless v1 and v2 rate calls answered HTTP 200; one earlier call answered a transient 522.
Pricenone stated
Limits
  • request-rate (binding) rate-limited to prevent abuse, size not published; no monthly or daily caps source
Bulk path: request a date range with from and to as NDJSON or CSV to stream the whole series. Storage terms: storing daily observations locally for caching or analytics is encouraged by the vendor.
Bindingrequest-rate Only an unpublished abuse limit exists; there is no quota.
Identityanonymous No key and no account: the vendor says no API key is needed and keyless calls answered HTTP 200.
Egressnot metered; no quota is stated
Per-object capnot stated; narrow quotes and use NDJSON for large date ranges
Interfacerest GET https://api.frankfurter.dev/v2/rates, /v2/rate/BASE/QUOTE and /v2/providers/ecb/rates; .csv suffix or Accept: application/x-ndjson for CSV and NDJSON; an MCP server at mcp.frankfurter.dev
Toolingcurl or any HTTP client; the open-source project can also be installed and run by the user with Docker, which is the last resort after the hosted public API.
Composes withKeyless daily reference rates to convert prices from the crypto and finance records; cache the daily rows locally.
ReliabilityOne call answered a transient HTTP 522 from the edge; later calls answered 200.
NotesKeyless, no quotas. Bulk path: date ranges as NDJSON or CSV. Storage: local caching is encouraged.
Evidence notedocumented Terms are read from the vendor page; keyless v1 and v2 calls answered 200; the abuse limit was not measured.
Parsed numbers
  • has-free-tier 1
Evidence 6
datesourcewhat it proved
2026-11-02frankfurter.dev/228 currencies from 106 sources, daily, back to 1948
2026-11-02frankfurter.dev/no API key is needed
2026-11-02frankfurter.dev/no quotas or monthly or daily caps
2026-11-02frankfurter.dev/storing daily observations locally is encouraged
2026-11-02frankfurter.dev/NDJSON streams large time series
2026-11-02probe: https://api.frankfurter.dev/v2/ratesa keyless v2 rates call answered HTTP 200
More fields 2
bulk pathfrom/to date ranges streamed as NDJSON or CSV
history depthback to 1948
Unknown values 1
  • retention stated: the field does not apply to this kind of offer