Skip to main content
SheetCraft
💰 Financial Function · intermediate

GOOGLEFINANCE Function in Google Sheets

Fetches current or historical securities data from Google Finance. Stock prices, currency rates, indices, and mutual fund data — built into Google Sheets, no API key needed.

Syntax

GOOGLEFINANCE(ticker, [attribute], [start_date], [end_date | num_days], [interval])

Returns: A single value for current data, or a spilled array for historical ranges.

Excel equivalent: Excel has STOCKHISTORY (Microsoft 365 only) but limited fundamentals.

Parameters

NameRequiredDescription
tickerRequiredTicker symbol with optional exchange prefix, e.g., "GOOG", "NASDAQ:AAPL", "CURRENCY:USDEUR", "INDEXSP:.INX".
attributeOptionalWhat to fetch: "price" (default), "priceopen", "high", "low", "volume", "marketcap", "pe", "eps", "beta", "changepct", and many more. For historical: "open", "close", "high", "low", "volume", "all".
start_dateOptionalStart of historical range. If omitted, returns current data only.
end_date | num_daysOptionalEnd date OR number of days from start_date.
intervalOptional"DAILY" or "WEEKLY" for historical sampling.

Examples

Current stock price

=GOOGLEFINANCE("AAPL")

Returns the current price of Apple. Updates roughly every 15-20 minutes during market hours.

Currency conversion rate

=GOOGLEFINANCE("CURRENCY:USDEUR")

Current USD-to-EUR exchange rate. Useful for multi-currency dashboards.

Historical close prices

=GOOGLEFINANCE("GOOG", "close", DATE(2025,1,1), DATE(2025,12,31), "DAILY")

Returns a 2-column array of dates and close prices for 2025. Great input for SPARKLINE.

Multi-attribute snapshot

=GOOGLEFINANCE("MSFT", "marketcap")

Other useful attributes: "pe", "eps", "high52", "low52", "volume", "changepct", "beta".

When to use an alternative

  • IMPORTXML against Yahoo Finance or similarYou need data Google Finance doesn't expose (e.g., specific intraday metrics).
  • Custom Apps Script with a paid APIYou need professional-grade data with SLAs and tick-level history.
  • Yahoo Finance add-ons or Wise SheetsWant a richer marketplace add-on with fundamentals coverage.

Common errors and how to fix them

  • #N/A

    Cause: Ticker not found, exchange prefix needed, or market closed for some attributes.

    Fix: Try with explicit exchange prefix: "NASDAQ:AAPL" instead of "AAPL". Check Google Finance directly for the symbol.

  • Quote delayed

    Cause: GOOGLEFINANCE is delayed by 15-20 minutes for most exchanges.

    Fix: Don't use GOOGLEFINANCE for real-time trading decisions. It's fine for analysis, dashboards, and slow-moving portfolios.

  • Historical data limit

    Cause: Very long date ranges may truncate or return errors.

    Fix: Break the query into yearly chunks if you need 10+ years of daily data.

Related functions

Frequently Asked Questions

Is GOOGLEFINANCE data real-time?

No — it's delayed 15-20 minutes for US equities, sometimes more for international markets. Crypto and currency data is typically near-real-time. Don't use this for live trading decisions.

Why is my historical price missing?

Three common reasons: (1) the date was a market holiday, (2) the ticker didn't exist yet on that date, (3) the data source has a gap. Wrap with IFERROR to handle gaps gracefully.

Can GOOGLEFINANCE fetch crypto prices?

Limited — Bitcoin (BTCUSD) and a few major coins work via the CURRENCY: prefix. For broader crypto data, use IMPORTXML against CoinGecko or a paid API.

Source: Google Sheets official function reference.