Hardware FixRecommendedDevice not working? Your driver may be the problemCheck updates for common hardware issues.Fix DriversFall ResetAmazon USFall reset deals: check better picks before checkoutAmazon US: today's deals, useful picks and quick comparisons.Check DealsWindows FixRecommendedWindows errors stealing your time? Find the fix fastScan stability, cleanup and performance issues.Fix Now×
Skip to content
Blog

How to Create a Stock Heat Map in Google Sheets

By TheFinanceBase Team8 min read
Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Some links on this page are affiliate links: if you buy through them we may earn a commission, at no extra cost to you.

You can build a stock heat map in Google Sheets with GOOGLEFINANCE and conditional formatting: put each ticker on a row, calculate its daily percentage change, then color that column from red through neutral to green. For a more visual market map, you can also use a Treemap chart, with rectangles sized by market capitalization. The table is easier to compare precisely; the treemap is better for showing relative size.

Google Sheets does not have a dedicated stock-heat-map command. These methods combine its stock-data functions, formatting rules, and chart tools. Google Finance quotes may be delayed by up to 20 minutes, and some exchanges, securities, or attributes may not be supported, so treat the result as a dashboard—not a trading feed.

Choose a colored table or a treemap

A stock heat map can mean two different things:

  • Conditional-formatting table: Each stock remains a row in a normal table, and a numeric column—usually daily percentage change—is shaded according to its value. This is the best starting point for a watchlist because labels and exact numbers stay easy to read.
  • Treemap: Stocks appear as nested rectangles, often grouped by sector. Rectangle size represents market capitalization or position value; color represents performance. This is compact and visually striking, but precise comparisons are harder.

Use percentage change for color rather than share price. A $500 stock is not necessarily performing better than a $10 stock; percent change makes the size of their moves comparable. Google lists conditional-formatting color scales and Treemap among Sheets’ supported features (conditional formatting; chart types).

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Build a stock data table

Start with a sheet containing one stock per row. For example:

Ticker Company Sector Price Change % Market cap
NASDAQ:GOOG Alphabet Communication Services Formula Formula Formula
NASDAQ:AAPL Apple Technology Formula Formula Formula

Use an exchange-qualified ticker where possible, such as NASDAQ:AAPL, rather than relying on a bare symbol. Exchange and ticker conventions differ, and qualification helps avoid ambiguous matches. Enter company and sector labels yourself if needed; do not assume every desired detail is available from the quote function.

Pull quotes with GOOGLEFINANCE

In D2, retrieve the price:

=IFERROR(GOOGLEFINANCE(A2,"price"),"")

In E2, retrieve daily percentage change:

=IFERROR(GOOGLEFINANCE(A2,"changepct")/100,"")

Format column E as a percentage, then fill both formulas down your list. The division by 100 normalizes a result such as 1.25 to 0.0125, which percentage formatting displays as 1.25%. Check the raw result in your sheet before relying on this conversion: locale and cell formatting can affect what you see, and applying the conversion or percentage format twice can produce an incorrect display.

In F2, retrieve market capitalization if available:

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
=IFERROR(GOOGLEFINANCE(A2,"marketcap"),"")

Fill down. Attributes are not available for every symbol. Other documented attributes include previous-day close, absolute change, opening price, volume, and P/E ratio. For example:

Rank #2
=IFERROR(GOOGLEFINANCE(A2,"volume"),"")

See Google’s GOOGLEFINANCE documentation for syntax, available attributes, coverage limitations, and data qualifications.

Create the color-scale heat map

  1. Select the percentage-change cells, such as E2:E100. Do not apply this gradient across the whole table: ticker names, prices, and market caps are different kinds of values and would produce misleading colors.
  2. Choose Format → Conditional formatting.
  3. In the side panel, choose Color scale.
  4. Set the minimum color to red, the midpoint to white or pale gray, and the maximum to green.
  5. Set the midpoint value to 0, then click Done.

A zero midpoint makes unchanged stocks neutral and separates gains from losses. A scale whose midpoint is based on the list’s average can make a flat stock look positive or negative just because the rest of the list moved. Google’s conditional-formatting instructions explain color-scale settings and formula-based rules.

Keep the percentage visible next to its color. Color alone is difficult to compare and may be inaccessible to readers who have trouble distinguishing red and green. Use a legend, consider a muted or color-blind-friendlier diverging palette, and check that the table still makes sense in grayscale if it may be printed.

What’s actually slowing this PC down?

Pick the symptom - the matching free tool is one click away.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Optionally highlight entire rows

A gradient in the change column conveys both direction and magnitude. If you also want a simple positive-or-negative cue across each row, select A2:F100, open Format → Conditional formatting, and add a custom-formula rule:

=$E2<0

Choose a pale red fill. Add a second rule with:

=$E2>0

Choose a pale green fill. The dollar sign fixes the reference to column E while the row number changes for each row. Keep these fills subtle: a binary row highlight should supplement, not replace, the change-column gradient.

Make the table easier to read

  • Freeze the header row and format the price as currency.
  • Format percentage change as a percentage and market capitalization consistently, for example in millions or billions.
  • Sort by sector, market capitalization, or percentage change, depending on what you are trying to see.
  • Add a clear legend, such as “red: down; neutral: near 0%; green: up.”
  • Keep the underlying numbers visible so a color is never the only way to understand a value.
  • Consider fixed scale limits if one unusually large move makes all other cells look nearly identical. For example, a range from -10% to +10% can make ordinary moves easier to distinguish, but values beyond those limits will share the extreme colors.

Build a market-cap treemap

For a market-map-style dashboard, create a separate chart-ready table with a parent category, stock label, size value, and performance value:

Sector Stock Market cap Change %
Technology Apple Formula Formula
Technology Microsoft Formula Formula
Communication Services Alphabet Formula Formula
  1. Select the chart-ready data.
  2. Choose Insert → Chart.
  3. In the Chart editor, choose Treemap as the chart type.
  4. Use sector and stock as the hierarchy, with market capitalization as the size measure.
  5. If the editor offers a separate color-data setting, assign percentage change to it and set a diverging scale with zero as the neutral point.
  6. Add a descriptive title and explain what the color scale means.

Sheets supports Treemap charts, and its chart model describes separate size data, color data, and a color scale. However, the user-facing editor may not expose all those controls uniformly. If you cannot assign percentage change separately from size, use the conditional-formatting table for a reliable performance heat map instead. Google’s general workflow for adding a chart is select data, then choose Insert → Chart.

Free tools Windows power users keep installed

One-click scans. No signup required.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

A market-cap treemap shows the relative size of companies, not the importance of each holding in your own account. Large companies dominate the visual area, and small ones may become too tiny to read. For a portfolio map, use position value instead of total company market capitalization if your goal is to show how your own money is allocated.

Use historical returns instead of today’s move

To examine a past period, request a date range. For example, this formula retrieves daily prices for a ticker over roughly the past 30 days:

=GOOGLEFINANCE("NASDAQ:GOOG","price",TODAY()-30,TODAY(),"DAILY")

Historical queries return an expanded array with headers, rather than a single price cell. Calculate a period return from the start and end prices, for example (LatestPrice-StartPrice)/StartPrice, and use that return as the heat-map value. Label the dates clearly; a historical map is not a picture of today’s market. Google also documents limitations on accessing historical GOOGLEFINANCE data through the Sheets API or Apps Script.

Independent reader supportYour contribution helps us test, update, and keep practical guides available for everyone.Support on Ko-Fi

Fix common problems

GOOGLEFINANCE returns #N/A or a blank

Check that the ticker is spelled correctly and includes an exchange, then test a known symbol and the simpler "price" attribute. Some exchanges, securities, or attributes are unsupported; data can also be temporarily unavailable or absent for a non-trading day. IFERROR hides the visible error but does not fix missing data. If the instrument is not covered, use a suitable external source or enter a fixed snapshot manually.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

The percentage looks 100 times too large

Inspect the raw changepct result in an unformatted cell. If it is supplied as a number such as 1.25, dividing by 100 and then applying percentage formatting should display 1.25%. Normalize it once and format it once; do not apply both a second division and a second percentage conversion.

Market cap is missing or treemap boxes look wrong

Some symbols have no market-cap result. Check for blanks or zeroes in the size column and remove or replace those entries before charting. A blank or zero size can make a rectangle disappear or distort the map. If the size data is incomplete, the table remains usable without a treemap.

All the colors look almost the same

An extreme outlier can stretch an automatic scale. Set fixed minimum and maximum values, use separate scales for distinct groups, or keep the full numeric return beside the color. Fixed limits improve comparison within a chosen range but can make unusually large moves appear no more extreme than the limit color.

The market is closed or the data seems stale

Daily change is measured against the previous trading day’s close. On weekends and market holidays, values may reflect the last completed session or be unavailable. Google says quotes may be delayed by up to 20 minutes; a formula-driven sheet should not be treated as an instant update or execution signal. Add a “data as of” note where timing matters.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

International stocks do not work

Google documents incomplete market coverage and says GOOGLEFINANCE is available in English and does not support most international exchanges. Do not assume that every global listing or attribute will resolve. Test the exact symbol, and use another appropriate data source for unsupported securities.

Know what the heat map can—and cannot—tell you

A daily-change heat map answers a narrow question: which listed stocks rose or fell most over the period represented by the data? It does not tell you which company is undervalued, which holding contributes most to portfolio risk, whether a move reflects a corporate action or bad data, or what to buy. A performance color is a visualization, not investment analysis.

Use a dedicated market-data or charting service if you need guaranteed exchange coverage, tick-level or exchange-grade real-time quotes, intraday alerts, adjusted historical data, or professional portfolio accounting. For a personal watchlist, Sheets is useful when you accept its data limits and verify important figures through an appropriate source. Google describes GOOGLEFINANCE data as informational and not intended as trading advice; verify prices, corporate actions, coverage, and fundamentals before making financial decisions.

Product prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on Amazon at the time of purchase will apply.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
Written by TheFinanceBase Team

The Team behind TheFinanceBase.

Recommended PC Tool
Recommended PC Tool
Outdated Drivers Are Slowing You DownFree scan - exact matches
Windows Errors? Fix Them Before They SpreadFree repair scan

Two free Windows tools

One Free Minute Could Fix That PC

Before you go - each of these free tools takes about a minute and tackles what quietly slows a Windows PC down.

Special offer. View Outbyte info, uninstall instructions, EULA, and Privacy Policy.