CompareRoundup

Exchange rates in Google Sheets and Excel

Getting exchange rates into a spreadsheet can mean a built-in formula, a linked data type, or a small API integration. This page compares those three routes. exchangerate.dev teaches an Apps Script FXRATE() function for Google Sheets and Power Query for Excel; it does not provide an add-in. GOOGLEFINANCE works inside Sheets, while Excel’s Currencies data type needs a Microsoft 365 account. Choose by the workbook’s refresh, history, and automation requirements.

18 Oct 2026 · 5 min read

Compare the options

Columns compare where each route works, rate limitations, historical access, and usage constraints. The API route requires setup; the built-in options use spreadsheet features. A displayed rate does not establish suitability for trading, and built-in history may have restrictions on programmatic access.

ProviderWhere it worksRatesHistoryLimits
exchangerate.devGoogle Sheets through an Apps Script FXRATE() function; Excel through Power Query on Windows and Mac144 currencies; Free and keyless calls 15 minutes lateFree 30 days; Basic 1 year; Plus and Pro from 1999; Excel download from the history toolNo add-in; Free 5,000 requests/month; keyless 10/minute and 100/hour per IP
GOOGLEFINANCE in Google SheetsGoogle Sheets formulaQuotes may be delayed up to 20 minutes; source and currency count not statedDAILY or WEEKLY intervals; cannot be read through the Sheets API or Apps ScriptNot intended for professional financial use; dates are treated as noon UTC
Excel Currencies data typeExcel for Microsoft 365 (Windows and Mac) with a Microsoft 365 accountProvided as is and may lag; data provider not namedNot described on its help pageNot for trading or investment decisions

The shortlist

exchangerate.dev

  • Best fit: Custom Sheets functions and Excel Power Query
  • Price from: $19/month Basic; 100,000 requests
  • Free tier: 5,000 requests/month; commercial use with a visible credit link
  • Update frequency: About 60 seconds for all 144 currencies on trading days, 15 minutes late on Free; ECB daily fallback
  • Coverage: 144 currencies
  • Conversion: Single-amount and batch conversion endpoints
  • MCP: Yes, nine tools, every plan including Free
  • Where it works: Google Sheets through an Apps Script FXRATE() function; Excel through Power Query on Windows and Mac
  • Rates: 144 currencies; Free and keyless calls 15 minutes late
  • History: Free 30 days; Basic 1 year; Plus and Pro from 1999; Excel download from the history tool
  • Limits: No add-in; Free 5,000 requests/month; keyless 10/minute and 100/hour per IP

exchangerate.dev suits a workbook that needs an API route in Sheets or Excel. Its Sheets tutorial builds an Apps Script FXRATE() function using anonymous latest-rate calls and a ten-minute cache. The Excel tutorial uses Power Query on Windows and Mac, with the key in a header. The trade-off is setup: these are tutorials, not an add-in. Free and keyless rates are fifteen minutes late. Free provides 5,000 monthly requests; bound Apps Script code is visible to spreadsheet editors, so consider who can access it.

Sources: Plans and limits, API reference, Historical data, MCP server.

GOOGLEFINANCE in Google Sheets

  • Best fit: Built-in formulas inside Google Sheets
  • Where it works: Google Sheets formula
  • Rates: Quotes may be delayed up to 20 minutes; source and currency count not stated
  • History: DAILY or WEEKLY intervals; cannot be read through the Sheets API or Apps Script
  • Limits: Not intended for professional financial use; dates are treated as noon UTC

GOOGLEFINANCE in Google Sheets suits a workbook that can use a built-in formula rather than maintain an API integration. Google documents daily or weekly historical intervals and warns that quotes may be delayed up to twenty minutes. The trade-off is automation: historical results cannot be read through the Sheets API or Apps Script. Dates are treated as noon UTC, which can shift the displayed day. Google does not state the rate source or currency count on the help page and says the data is not intended for professional financial use.

Sources: GOOGLEFINANCE help.

Excel Currencies data type

  • Best fit: Linked currency data inside Microsoft 365
  • Where it works: Excel for Microsoft 365 (Windows and Mac) with a Microsoft 365 account
  • Rates: Provided as is and may lag; data provider not named
  • History: Not described on its help page
  • Limits: Not for trading or investment decisions

Excel Currencies data type suits a workbook using Excel for Microsoft 365 on Windows or Mac with a Microsoft 365 account. It offers a linked currency-pair workflow within Excel rather than a separate API tutorial. The trade-off is the published data limitation: values are provided as is, may lag, and are not for trading or investment decisions. Microsoft does not name the data provider on the help page or describe historical access there. Check the required workbook workflow rather than assuming a history export is included.

Sources: Currency pairs help.

Choose by how the workbook runs

Check where the file opens, how it refreshes, and whether another system needs to read its historical results. Those requirements can decide the integration route.

If you needStart with
Workbook environmentConfirm whether the workbook runs in Sheets or Excel and which account opens it. Check Microsoft 365 access before choosing the Currencies data type.
Refresh behaviourDecide how old a displayed rate may be. Include formula delays, API plan delays, and the tutorial’s cache when planning refresh behaviour.
Historical automationCheck whether history must be read by a script or external system. GOOGLEFINANCE historical results cannot be retrieved through Apps Script or the Sheets API.
Code and credentialsReview who can edit the spreadsheet and see bound scripts. For the API route, follow the tutorial’s authentication and caching guidance.

How we chose

We compared the documented spreadsheet workflows, supported environments, refresh caveats, historical access, automation restrictions, and setup requirements. Sources were checked on 18 Oct 2026. This is a documented-feature comparison, not a benchmark of rate accuracy, formula speed, or workbook performance. exchangerate.dev publishes this comparison and appears as the API tutorial option. Microsoft’s unnamed provider and unstated historical features are left qualified; no first-party add-in is implied by the tutorials. exchangerate.dev and Narwhal API are owned and operated by Nusantara Ventures, LLC.

Sources checked October 18, 2026. Prices and entitlements can change.

Frequently asked questions

Does exchangerate.dev have a Sheets or Excel add-in?

No. It provides tutorials: an Apps Script FXRATE() custom function for Google Sheets and Power Query for Excel on Windows and Mac. The Sheets example uses anonymous latest-rate calls with a ten-minute cache; the Excel example puts the key in a header.

Can Apps Script read GOOGLEFINANCE historical results?

No. Google says historical data cannot be accessed through Apps Script or the Sheets API and returns an error for that access. A visible historical formula result therefore does not establish a supported programmatic export workflow.

How fresh are GOOGLEFINANCE currency quotes?

Google warns that quotes may be delayed up to twenty minutes. Its help page does not state the currency rate source or currency count. Dates are treated as noon UTC, which can affect the displayed historical day.

What account does Excel Currencies require?

Microsoft documents a Microsoft 365 account for the Currencies data type in Excel for Microsoft 365 on Windows and Mac. Its help page does not establish specific subscription tiers; verify access in the account using the workbook.

Can I download exchangerate.dev history for Excel?

Yes. The history tool offers an Excel download. Available daily history depends on the plan: Free covers 30 days, Basic one year, and Plus and Pro extend from 1999-01-04 where available, with later starts for some currencies.

Keep reading

Start with a free API key

exchangerate.dev offers keyless evaluation; a free key includes 5,000 calls a month across 144 currencies with no card. All 144 currencies update roughly every 60 seconds on trading days, every response carries source and market_session, and MCP ships on every plan.

Get a free key