Currency Exchange · head-to-head
Bank of Russia vs Frankfurter
This is the Central Bank of the Russian Federation's raw XML data feed, not a modern REST API — it exposes daily and historical official ruble exchange rates alongside adjacent datasets like precious metals prices, interbank rates, deposit rates, and currency swap rates. Requests are parameterized with simple date-range query strings, and the site even ships legacy sample code in Visual Basic and PHP, reflecting its origins as an early-2000s government data service.
Frankfurter aggregates and republishes daily reference rates from roughly 84 central banks, not solely the ECB, covering 200+ currencies with history back to 1948, and supports current, dated, and time-series conversion queries, including filtering to a specific source institution. It's free with no API key and no request quotas beyond abuse-prevention rate limiting, returns JSON by default plus CSV and streaming NDJSON, and now also ships an official self-hosting Docker image and an MCP server for AI-agent integration. The project's site and docs moved from frankfurter.app to frankfurter.dev, with the old domain now redirecting.
| Bank of Russia | Frankfurter | |
|---|---|---|
| Authentication | None | None |
| Pricing | free | free |
| Formats | XML | JSON, CSV, NDJSON |
| CORS | unknown | yes |
| HTTPS | Yes | Yes |
Frankfurter supports CORS, while Bank of Russia doesn't — pick Frankfurter for direct browser calls.