If you have ever opened two brokerage apps at the same time and looked at the same stock, you may have noticed something odd. The prices do not always match. The difference is usually small, a few cents at most, but it is there. One app shows Apple at 187.42, the other at 187.45. Each app claims to be showing you a live quote of the current market price, and yet the numbers are different.
The discrepancy comes from how the U.S. stock market actually works, which is quite different from how most people imagine it.
The common mental model of the stock market is a single location where buyers and sellers meet and agree on prices. That model was roughly accurate decades ago, when most trading in a given stock happened on a single exchange. The New York Stock Exchange handled the bulk of volume for the companies listed there, and the price on the NYSE was, for practical purposes, the price.
That is no longer how it works. Today, a stock like Apple trades simultaneously on sixteen different exchanges, plus several dozen alternative venues known as dark pools. Each of these venues maintains its own order book, its own queue of buyers and sellers, and its own current best price. At any given moment, the best available price to buy Apple on the Nasdaq might be slightly different from the best available price on NYSE Arca, which might differ again from the price available on IEX or CBOE EDGX.
Every one of these prices is valid, representing real orders from real participants willing to trade at those levels. What you see on your screen is just one of them, determined by which venue your broker is looking at and how quickly the data reaches you.
Most retail investors see their stock quotes through a consolidated data feed. This is a system that collects price information from all the exchanges, assembles it into a single stream, and distributes it to brokers, financial websites, and data vendors. The idea behind consolidation is straightforward: since the market is fragmented, someone needs to stitch the pieces together so that investors can see a coherent picture.
The consolidated feed identifies the best available bid and the best available offer across all exchanges at any given moment. This composite price is known as the national best bid and offer. When your brokerage app shows you a quote, it is typically showing you something derived from this consolidated view, representing the highest price any buyer on any exchange is willing to pay and the lowest price any seller on any exchange is willing to accept.
Assembling that view takes time. Data from each exchange has to travel to the consolidation point, get processed, and then travel onward to your broker, who processes it again before displaying it on your screen. Each step adds latency, sometimes just microseconds, sometimes more. During periods of active trading, prices can change multiple times in the span it takes for a single consolidated quote to reach you. The price on your screen is always at least slightly in the past.
Latency is only part of the issue. Some brokers supplement or replace the consolidated feed with direct feeds from individual exchanges, which can arrive faster but only reflect prices on those particular venues. Others use their own internal pricing based on the orders flowing through their systems. Two brokers looking at the same stock at the same moment may be working from slightly different snapshots of the market, assembled from different sources, arriving with different delays.
Even a perfect real-time snapshot of the national best bid and offer would still be incomplete, because a significant portion of U.S. equity trading volume never appears on any public exchange. Often estimated at around forty percent, this volume executes in dark pools operated by banks and broker-dealers, or gets internalized by brokers who fill orders from their own inventory rather than routing them to an exchange.
The logic behind these venues is straightforward. A large institution trying to buy a million shares of a stock does not want to broadcast that intention on a public order book, where other participants could see the order and trade ahead of it. Dark pools allow large orders to be filled without that information leakage.
The cost of that privacy falls on everyone looking at the publicly visible quote. Orders resting in dark pools do not show up in the national best bid and offer. A stock might have substantial buying interest sitting in a dark pool at a price better than anything on the lit exchanges, but that interest remains invisible until the trade actually executes. The quote on your screen describes the market you can see, which is not necessarily the full market that exists.
A market this fragmented could easily produce wildly divergent prices across venues, and the reason it does not is that several forces work constantly to keep them aligned. Brokers generally have obligations to seek the best available price for their customers. Arbitrageurs monitor prices across venues and trade against any discrepancies, pushing them back into alignment almost instantly. The result is that prices across sixteen exchanges and dozens of dark pools stay remarkably close together, usually within a penny or two, despite the fact that no single central location is setting the price.
The small differences you see between two brokerage apps are the residual noise of this system. They reflect differences in data sources, processing speed, and the precise moment each app last refreshed its quote. For a retail investor placing a market order for a hundred shares, these differences are effectively negligible. The execution price will land very close to whatever quote was on the screen.
For most people, the fact that the market is fragmented across dozens of venues is an interesting piece of trivia that has no practical effect on their investing. The system works well enough that the quote on their screen is a reliable guide to what they will pay.
The picture changes when the stakes around precision increase. Historical prices pulled from different data sources may not always agree, because different sources may be reporting prices from different venues or using different consolidation methods. Intraday research depends on whether the data comes from a single exchange or from the consolidated feed, since the two can tell different stories about what happened during volatile moments. And any strategy built on the exact sequence of price changes is sensitive to which venue generated each data point and when.
Volume carries a similar ambiguity. The number shown on most charts and screeners is consolidated volume, an aggregate across all venues. The distribution of that volume across exchanges and dark pools is uneven and shifts constantly, though, so a stock might show heavy total volume while the volume on any single exchange is thin. That gap affects how easily large orders can be filled at the quoted price.
None of this invalidates the price on your screen. It does mean that the single number your broker shows you is an abstraction, a useful summary of a more complex reality happening underneath. A stock's price is not like the price of a gallon of milk at a specific grocery store. It is a cloud of prices spread across a network of competing venues, and what you see is one slice of that cloud, captured at one moment, delivered through one path, and already slightly out of date by the time it reaches you.
For everyday investing, the abstraction is good enough. When the work depends on the data being precisely right, understanding what sits behind that abstraction is where it actually begins.