FX Rates & History avatar

FX Rates & History

Pricing

from $0.08 / 1,000 results

Go to Apify Store
FX Rates & History

FX Rates & History

Latest and historical foreign exchange rates (ECB reference data) as clean, typed dataset records. Timeseries, single-date, and conversion modes. No API key required.

Pricing

from $0.08 / 1,000 results

Rating

0.0

(0)

Developer

Cynix Dev

Cynix Dev

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

a day ago

Last modified

Share

Foreign exchange rates — latest, historical, full time series, or a direct conversion — built on European Central Bank reference data. Clean typed records, no API key, no per-call pricing.

What it does

Four modes from one input form:

  • latest — today's reference rates for your base currency.
  • historical — the rates for one specific date.
  • timeseries — every business day between startDate and endDate, one record per currency per day.
  • convert — convert an amount from base into to.

The data is ECB reference data, the same series central banks, auditors and accounting systems treat as authoritative — which matters when a number has to survive review.

Features

  • Four modes — latest, single historical date, date-range time series, and conversion.
  • ECB reference data — an authoritative, citable source rather than an anonymous aggregator.
  • Any base currencyEUR, USD, GBP, AUD and the rest of the published set.
  • Currency filter — request only the pairs you need via symbols, or leave it empty for all.
  • Tidy long-format output — one row per currency per date, which drops straight into pandas or SQL.
  • No API key and no rate-limit tier to manage.

What people use it for

  • Invoicing and accounting — pin the exact rate for the date a transaction settled.
  • Multi-currency reporting — normalise revenue from several regions to one currency.
  • Backtesting and research — pull years of daily rates as a clean time series.
  • Price localisation — refresh conversion rates on a schedule for a storefront.
  • Agent tooling — a dependable currency-conversion tool for an LLM workflow.

The four modes

{ "mode": "latest", "base": "EUR", "symbols": ["USD", "GBP", "AUD"] }
{ "mode": "historical", "base": "USD", "date": "2024-03-15" }
{ "mode": "timeseries", "base": "EUR", "symbols": ["USD"],
"startDate": "2026-01-01", "endDate": "2026-06-30" }
{ "mode": "convert", "base": "GBP", "to": "JPY", "amount": 250 }

Business days only

The ECB publishes on TARGET business days, so weekends and European bank holidays have no rate of their own. A timeseries range simply skips those dates, and a historical request for a weekend resolves to the most recent published day. For daily-average accounting, use the series and carry the previous close forward.

Input

mode and base are required. Which of the remaining fields matter depends on the mode: date for historical, startDate/endDate for timeseries, amount/to for convert.

FieldTypeDefaultWhat it does
mode (required)stringlatestWhat to fetch: latest rates, a single historical day, a time series range, or a one-off conversion. Options: latest, historical, timeseries, convert.
base (required)stringEUR3-letter ISO code, e.g. EUR, USD, GBP.
symbolsarray[]3-letter ISO codes to fetch. Leave empty for all available currencies.
datestringYYYY-MM-DD. Required when mode = historical.
startDatestringYYYY-MM-DD. Required when mode = timeseries.
endDatestringYYYY-MM-DD. Defaults to the most recent business day.
amountinteger1Amount of base currency to convert when mode = convert.
tostringTarget 3-letter ISO code when mode = convert.

Input example

{
"mode": "latest",
"base": "EUR",
"amount": 1
}

Output

Long-format records: each row is one currency's rate against the base on one date, tagged with the mode that produced it.

Every dataset record contains: mode, base, currency, rate, date, fetchedAt.

Output example

A real record from a run of this Actor:

{
"mode": "latest",
"base": "EUR",
"currency": "AUD",
"rate": 1.6401,
"date": "2026-08-19",
"fetchedAt": "2026-08-20T02:32:58.185Z"
}

Export the dataset as JSON, CSV, Excel, XML or JSONL from the Console, or pull it programmatically through the Apify API and any of the official clients.

How to use it

  1. Click Try for free (or Start if you already have an Apify account).
  2. Fill in the input fields described above — the defaults already produce a working run.
  3. Press Start and watch the log; results stream into the dataset as they are found.
  4. When the run finishes, open the Output/Storage tab and export as JSON, CSV or Excel.

Runs can be scheduled (hourly, daily, weekly) and wired into Slack, Google Sheets, Zapier, Make, webhooks or your own backend through Apify integrations. Everything the Console does is also available over the Apify API.

Pricing

This Actor is billed on Apify's pay-per-event model: a small charge when a run starts, plus a charge for each result written to the dataset. You only pay for records you actually receive — a run that finds nothing costs only the start event. Current rates are always shown on the Pricing tab of this page, and the run log prints your usage as it goes.

Free-plan credits from Apify cover a large amount of light usage, so you can evaluate the Actor before committing to anything.

FAQ

Which currencies are covered?

The ECB reference set — roughly 30 major and regional currencies including USD, GBP, JPY, CHF, AUD, CAD, CNY, SEK, NOK, PLN and more. Leave symbols empty to see everything available for your base.

Are these rates suitable for accounting?

ECB reference rates are widely accepted for reporting and are commonly cited by tax authorities and auditors. They are daily reference fixings, not tradeable quotes — they include no bid/ask spread, so don't use them as execution prices.

Why is there no rate for a weekend date?

The ECB only publishes on business days. That's a property of the source data, not a gap in the Actor.

How far back does history go?

The ECB series extends back to 1999 for most major currencies. Very long ranges produce a lot of records — one per currency per day — so filter with symbols when pulling multi-year series.

Can I use it for crypto?

No — this is fiat central-bank data. For crypto pricing, see the CoinGecko Markets Actor listed below.

Other Actors by cynix_dev

ActorWhat it does
arXiv Papers ExtractorSearch arXiv and extract papers as clean typed records: title, abstract, authors, categories, DOI, and direct PDF links.
CoinGecko Markets — Crypto Data APILive cryptocurrency market data from CoinGecko as clean typed JSON: price, market cap, volume, 24h change, ATH/ATL, …
USGS Earthquakes — GeoJSON ExtractorPull live and historical earthquakes from the USGS FDSN event service as clean typed JSON: magnitude, place, time, lat/lon/depth, …
Launch Library 2 — Rocket Launch TrackerUpcoming, previous, and specific rocket launches from The Space Devs' Launch Library 2 API.
Open Food Facts ExtractorSearch and extract food-product data from Open Food Facts as clean typed JSON: name, brand, ingredients, allergens, nutrition …
CoinGecko Markets — Crypto Data APILive cryptocurrency market data from CoinGecko as clean typed JSON: price, market cap, volume, 24h change, ATH/ATL, …
SEC EDGAR Filings ExtractorSearch and extract SEC EDGAR filings: full-text search across all filings or company filing histories by CIK.

This Actor collects only publicly available information. You are responsible for how you use the data, including compliance with the target site's Terms of Service, robots directives, copyright, and data protection law such as GDPR and CCPA. Do not use it to gather personal data without a lawful basis.

Support and feedback

Found a bug, hit a site change, or need an extra field? Open a ticket on the Issues tab of this Actor — issues are read and fixed. Feature requests and custom-scraper enquiries are welcome through the same channel.