Real Time Stock Prices in Excel: Live Streaming Data for Financial Professionals

In this article

To get real-time stock prices in Excel, you need a streaming source: either a broker's RTD link (which requires a funded account and the broker's desktop app running) or a data add-in such as MarketXLS. With MarketXLS, =QM_Stream_Last("AAPL") streams Apple's last price into a cell and updates on its own; real-time streaming for US stocks and ETFs requires the Advanced or Business plan, and the Standard plan is 15-minute delayed. Excel's free Stocks data type and Power Query imports are delayed and need a refresh.

See it in actionMarketXLS video

Try it in your own spreadsheet

Get the free MarketXLS sample workbook (.xlsx).

No account needed. MarketXLS live data requires a paid plan. Preview workbook

Explore more videos
Real time stock prices in excel showing live streaming data in a spreadsheet with MarketXLS formulas

This guide compares those methods, then shows the MarketXLS formulas for streaming prices, on-demand prices, fundamentals, history, and options.


Methods Compared: Getting Real Time Stock Prices in Excel

The methods differ mainly in whether the data streams, whether it is delayed, and what setup it needs:

MethodReal-Time?Auto-RefreshData CoverageSetup ComplexityBest For
Microsoft STOCKHISTORY + Stocks Data TypeDelayed 15-20 minManual refreshUS equities onlyLowCasual users
Power Query Web ConnectionDelayedScheduled (min 1 min)Varies by sourceMediumOne-time data pulls
Broker RTD Links (Thinkorswim, IBKR)True real-timeAutomatic streamingDepends on brokerHighActive traders with existing accounts
MarketXLS =QM_Stream_Last()Real-time on Advanced and Business plansAutomatic streamingUS, Canadian, UK, German, Australian markets; stocks, ETFs, optionsLowFinancial advisors, asset managers, wealth managers
MarketXLS =Last() / =QM_Last()15-min delayed on Standard; real-time on Advanced and BusinessOn recalcSame coverageLowResearch and analysis workflows
DDE Links (Legacy)Real-timeAutomaticLimitedVery HighLegacy systems only

Method 1: Microsoft's Built-In Stock Data Type

Excel 365 includes a Stocks data type and the STOCKHISTORY function. Here's how it works:

Step-by-Step

  1. Type a ticker symbol like AAPL into a cell
  2. Select the cell, go to the Data tab, and click Stocks
  3. Excel converts the cell into a linked data type
  4. Click the small icon that appears to see available fields like Price, Volume, and Market Cap
  5. Use formulas like =A1.Price to extract specific fields

Limitations

The Stocks data type is free and built into Excel, but it has drawbacks for professional use:

  • Data is delayed 15-20 minutes: not suitable for real-time monitoring
  • No automatic streaming: you must manually refresh or press F9
  • Limited to basic equities: no options chains, no futures, no streaming quotes
  • No historical data granularity: the STOCKHISTORY function provides daily data only
  • Coverage gaps: many international markets, OTC stocks, and smaller-cap names are missing
  • No customization: you cannot build models that react to live price changes

For advisors who need to monitor client portfolios in real time, the delay alone rules it out.


Method 2: Power Query Web Connections

Power Query pulls tables from web pages into Excel on a refresh schedule. It is not a streaming source.

Step-by-Step

  1. Go to Data → Get Data → From Web
  2. Enter the URL of a financial data source that provides tabular data
  3. Select the table you want to import
  4. Click Load to bring it into your worksheet
  5. Set up a scheduled refresh (minimum interval: 1 minute in most configurations)

Limitations

  • Not truly real-time: even with a 1-minute refresh, you're always looking at slightly stale data
  • Rate limiting: most free web sources throttle frequent requests
  • Fragile connections: web page layouts change, breaking your queries without warning
  • Manual maintenance: when a connection breaks, you need to rebuild it
  • No streaming capability: each refresh is a complete data pull, not a live stream

Power Query is excellent for periodic data imports and building reports, but it was never designed for live market monitoring.


If you already have a brokerage account with Thinkorswim or Interactive Brokers, you can use RTD (Real-Time Data) links to stream prices into Excel.

How It Works

RTD links use the =RTD() function in Excel to connect to a local application running on your machine. The broker's desktop platform acts as a data server, pushing updates to Excel cells in real time.

For example, with Thinkorswim:

=RTD("tos.rtd",,"AAPL","LAST")

Limitations

  • Requires a funded brokerage account: this isn't a standalone data solution
  • Desktop application must be running: the broker platform needs to stay open
  • Symbol limits: brokers may cap the number of concurrent RTD streams
  • Not portable: the workbook only works on a machine with the broker software installed and running
  • Limited options analytics: you can stream option quotes, but building full chains usually requires additional work

For more on how MarketXLS compares to broker-based streaming, see our detailed MarketXLS vs Thinkorswim streaming data comparison.


Method 4: MarketXLS Streaming Formulas

MarketXLS is an Excel add-in that returns market data as worksheet formulas, with streaming quotes from QuoteMedia. It needs no brokerage account and no web queries. Real-time streaming requires the Advanced or Business plan.

Getting Started

  1. Install MarketXLS: the Windows desktop add-in (ribbon tab "MarketXLS", activated with a license key) or the Microsoft 365 add-in for Excel on Mac and Excel for the web (ribbon "MarketXLS (Web)", sign in with your MarketXLS account). See choose your version.
  2. Open Excel and confirm the MarketXLS ribbon tab is present
  3. Type formulas into cells. On the Microsoft 365 add-in, use the mxls. prefix, for example =mxls.Last("MSFT")

The Core Streaming Formula

The core streaming formula is:

=QM_Stream_Last("AAPL")

Formula documentation: QM_Stream_Last

This formula streams the last traded price for a symbol into the cell. It updates automatically while streaming is on, with no F9 or scheduled query. Each unique symbol uses one live symbol subscription.

Building a Live Portfolio Monitor

Here's how a wealth manager might set up a real-time portfolio tracking sheet:

Column A (Ticker)Column B (Formula)Description
AAPL=QM_Stream_Last("AAPL")Live streaming price for Apple
MSFT=QM_Stream_Last("MSFT")Live streaming price for Microsoft
GOOGL=QM_Stream_Last("GOOGL")Live streaming price for Alphabet
JPM=QM_Stream_Last("JPM")Live streaming price for JPMorgan
SPY=QM_Stream_Last("SPY")Live streaming price for S&P 500 ETF

Then in Column C, you calculate real-time position values:

=QM_Stream_Last("AAPL") * [shares held]

Formula documentation: QM_Stream_Last

The portfolio value then updates as prices stream, inside the spreadsheet you already use for analysis and reporting.

On-Demand Price Formulas

When you don't need continuous streaming but want the latest price on demand, use:

=Last("AAPL")

Formula documentation: Last

Or the QuoteMedia equivalent:

=QM_Last("AAPL")

Formula documentation: QM_Last

These formulas return the current last price when the sheet calculates. They're ideal for models and reports where you want a snapshot rather than a continuous stream.

Going Beyond Price: A Complete Data Ecosystem

MarketXLS has 1,000+ functions beyond price. These are common ones to put next to streaming prices:

Fundamental Analysis

What You NeedFormulaWhat It Returns
P/E Ratio=PERatio("AAPL")Current price-to-earnings ratio
Market Capitalization=MarketCapitalization("AAPL")Total market cap
Revenue=Revenue("AAPL")Annual revenue
Quarterly Revenue=hf_revenue("AAPL", 2025, 4)Revenue for a specific quarter
Dividend Yield=DividendYield("AAPL")Current dividend yield
Dividend Per Share=DividendPerShare("AAPL")Annual dividend amount
Dividend Frequency=DividendFrequency("AAPL")How often dividends are paid

Technical Analysis

IndicatorFormulaUse Case
RSI=RSI("AAPL")Identify overbought/oversold conditions
50-Day Moving Average=SimpleMovingAverage("AAPL", 50)Trend identification
200-Day Moving Average=SimpleMovingAverage("AAPL", 200)Long-term trend confirmation

Historical Data

Pull complete price history for backtesting and analysis:

=QM_GetHistory("AAPL")

Formula documentation: QM_GetHistory

This returns open, high, low, close, and volume data for building models, calculating custom indicators, or generating client reports. For a single past close, use =Close_Historical("AAPL", DATE(2025,1,2)).

Options Data

For advisors running covered call strategies or managing options overlays:

=QM_GetOptionChain("AAPL")

Formula documentation: QM_GetOptionChain

This pulls the options chain. You can also price individual contracts:

=OptionSymbol("AAPL", DATE(2026,12,18), "Call", 200)

Formula documentation: OptionSymbol

This generates the option symbol, which you can then price:

=QM_Last("@AAPL 261218C00200000")

Formula documentation: QM_Last

Options data is end-of-day on the Standard plan and real-time streaming on Advanced and Business; options tracking is limited to 300 symbols.

For a deeper look at options capabilities, visit the MarketXLS Options Profit Calculator.


Real-World Use Cases for Financial Professionals

Use Case 1: Financial Advisor — Client Portfolio Monitoring

A financial advisor managing 50 client accounts needs to monitor all positions in real time during market hours. With MarketXLS streaming formulas, they build a master sheet:

  • Column A: All tickers across client portfolios
  • Column B: =QM_Stream_Last() for each ticker (streaming prices)
  • Column C: Shares held per position
  • Column D: =B2*C2 — real-time position value
  • Column E: =DividendYield() — income analysis
  • Column F: =PERatio() — valuation check

On the Advanced or Business plan, the dashboard updates as prices stream, with no switching between platforms or manual data entry.

Use Case 2: Asset Manager — Risk Monitoring

An asset manager running a multi-strategy fund needs to track sector exposures as prices move. Using streaming formulas combined with Excel's native calculation engine:

=QM_Stream_Last("XLF") / QM_Stream_Last("SPY")

Formula documentation: QM_Stream_Last

This gives a real-time relative strength ratio for the Financial Select Sector ETF versus the S&P 500 — updating live as both prices stream.

Combine this with =SimpleMovingAverage("XLF", 50) to see whether the current streaming price is above or below the 50-day average, all in one sheet.

Use Case 3: Family Office — Multi-Asset Monitoring

Family offices often track equities, ETFs, options, and futures across multiple accounts. MarketXLS handles all of these in the same spreadsheet:

Everything in one workbook, one ribbon tab, one subscription. No switching between broker platforms, no juggling multiple data vendors.

Use Case 4: Wealth Manager — Client Reporting

When a client calls asking about their portfolio performance today, a wealth manager with MarketXLS can instantly pull up a live view:

=QM_Stream_Last("MSFT")

Formula documentation: QM_Stream_Last

Paired with historical data:

=QM_GetHistory("MSFT")

Formula documentation: QM_GetHistory

Live prices plus history let you answer a client's performance question from one sheet.


Pro Tips for Working With Real Time Stock Data in Excel

Tip 1: Separate Streaming Sheets from Model Sheets

Keep your streaming price cells on a dedicated "Data" sheet. Reference those cells from your analysis sheets. This keeps your models clean and makes it easy to audit where data is coming from.

Tip 2: Use Conditional Formatting for Alerts

Combine =QM_Stream_Last() with Excel's conditional formatting to create visual alerts:

  • Red when a stock drops below a threshold
  • Green when it hits a target price
  • Yellow for positions approaching stop-loss levels

Tip 3: Build Watchlists That Update Themselves

Create a watchlist with streaming prices, fundamental ratios, and technical indicators all in one view:

TickerLive PriceP/EDividend YieldRSI50-Day SMA
AAPL=QM_Stream_Last("AAPL")=PERatio("AAPL")=DividendYield("AAPL")=RSI("AAPL")=SimpleMovingAverage("AAPL", 50)
MSFT=QM_Stream_Last("MSFT")=PERatio("MSFT")=DividendYield("MSFT")=RSI("MSFT")=SimpleMovingAverage("MSFT", 50)

The price column streams through the trading day; the other columns update when Excel recalculates.

Tip 4: Combine Streaming With Historical for Context

A streaming price alone lacks context. Pair it with historical data to see where the current price sits relative to recent history:

=QM_Stream_Last("AAPL") / SimpleMovingAverage("AAPL", 200)

Formula documentation: QM_Stream_Last, SimpleMovingAverage

A ratio above 1.0 means the stock is trading above its 200-day moving average. A ratio below 1.0 means it's below. This simple formula gives you instant trend context for any streaming price.

Tip 5: Save Snapshots for Compliance

If you're a registered investment advisor, you may need to document the data you used when making allocation decisions. Use =Last() (not streaming) at specific times to capture point-in-time snapshots that you can save and archive.


Who Needs Real Time Stock Prices in Excel?

Financial Advisors

Streaming prices in Excel let advisors monitor client positions in the same tool where they build plans and reports.

Asset Managers

When you rebalance a model portfolio or monitor risk limits, delayed data can mislead. Real-time streaming keeps the analytics on current prices.

Wealth Managers

When a client calls during market hours, a streaming workbook shows the portfolio's current value without leaving Excel.

Family Offices

Family offices track equities, ETFs, and options across accounts. One Excel workbook with MarketXLS can hold all of them.


Pricing and Plans

Real-time streaming requires the Advanced or Business plan. US plans for non-professional users (prices include data and exchange fees; taxes may apply):

PlanBilled annuallyBilled quarterlyUS stocks and ETFsOptions
Standard$70/month ($850/year)$85/month ($255/quarter)15-minute delayedEnd-of-day
Advanced$125/month ($1,500/year)$150/month ($450/quarter)Real-time streamingReal-time streaming
Business$200/month ($2,400/year)$240/month ($720/quarter)Real-time streamingReal-time streaming

Professional users have different entitlements and exchange fees. See the MarketXLS pricing page for current details.


Frequently Asked Questions

How do I get real time stock prices in Excel without paying for a data feed?

Microsoft Excel 365 includes a built-in Stocks data type that provides delayed price data. For real-time streaming prices, you need either a broker RTD connection (requires a funded brokerage account) or a paid Excel add-in such as MarketXLS, because exchanges charge for real-time data.

What is the difference between QM_Stream_Last and Last in MarketXLS?

=QM_Stream_Last("AAPL") updates automatically while streaming is on, with no manual refresh. =Last("AAPL") returns the most recent price at the time the formula calculates (when you press F9 or the sheet recalculates). Use QM_Stream_Last for live monitoring dashboards and Last for models and reports where you want a point-in-time snapshot.

Can I stream real time stock prices for options and futures in Excel?

Options, yes. MarketXLS supports options pricing through formulas like =QM_Last("@AAPL 261218C00200000") for individual contracts and =QM_GetOptionChain("AAPL") for chains. Options data streams in real time on the Advanced and Business plans (end-of-day on Standard), and options tracking is limited to 300 symbols.

How many symbols can I stream at once in MarketXLS?

Each unique symbol or option contract you stream uses one live symbol subscription, and the options pricing page states options tracking is limited to 300 symbols. Your plan and your computer's resources set the practical limit. For large portfolios, stream the positions you watch closely and use on-demand =Last() for the rest.

Does real time stock data in Excel work with Excel on Mac?

Yes. Mac users install the MarketXLS Microsoft 365 add-in from Microsoft AppSource, which also works in Excel for the web. It adds a "MarketXLS (Web)" ribbon and task pane, you sign in with your MarketXLS account, and formulas use the mxls. prefix, for example =mxls.Last("MSFT"). Some functions differ by platform, so check the formulas page and choose your version.

How do real time stock prices in Excel compare to Bloomberg Terminal?

A Bloomberg Terminal is a full research and trading platform priced per seat per year. MarketXLS is an Excel add-in: real-time streaming stock and options prices, fundamentals, and technical indicators cost $1,500/year on the Advanced plan (billed annually, non-professional). Advisors who mainly need data in Excel may not need a full terminal. See MarketXLS pricing for current plan options.


The Bottom Line

Free Excel tools give you delayed data, and broker RTD links need a funded account and a running desktop app. MarketXLS streams prices with a formula: =QM_Stream_Last("AAPL") for a streaming price (real-time on Advanced and Business), =PERatio("AAPL") for valuation, and =QM_GetOptionChain("AAPL") for an options chain.

Explore the full list of 1,000+ available formulas on the MarketXLS functions page, or check out more Excel tutorials and guides to see what's possible.

For a step-by-step quote-board workflow with freshness and spread checks, read Stock Quotes in Excel.

Get Started with MarketXLS →

About the authors
Anagh

About Anagh

CTO, MarketXLS

Anagh is the CTO of MarketXLS. He works with Ankur and Robin on the MarketXLS blog, creating articles together about market data and spreadsheet workflows.

Written collaboratively by Anagh, Ankur and Robin.

Important Disclaimer

The information provided in this article is for educational and informational purposes only and should not be construed as investment advice, a recommendation, or an offer to buy or sell any securities. MarketXLS is a financial data platform and is not a registered investment advisor, broker-dealer, or financial planner. Always conduct your own research and consult with a qualified financial professional before making any investment decisions. Past performance is not indicative of future results. Trading and investing involve substantial risk of loss.

Explore MarketXLS in Excel
Download a free sample workbook (.xlsx). MarketXLS is a paid subscription.

See MarketXLS in action

Bring this workflow into Excel.

Book a demo with our team to see how MarketXLS supports your market research.

Ankur
AnkurFounder & CEO, MarketXLS
Book a demo