close and adjusted_close. They look interchangeable until a stock
splits or pays a dividend, and then a chart, a return figure or a backtest
built on the wrong one is quietly off. This post covers what each column
means, how the adjustment is calculated, and which one to reach for, with
SQL you can run against the Historical Stock Prices
dataset in Snowflake.
The short answer
If the question involves change over time, use
adjusted_close. If it
involves the price on a specific day, use close.
What close means
close is the official last price for the trading day (for a mutual
fund, the day’s net asset value). It’s a historical fact and it never
changes after the day ends. That’s also the problem: when a company does
a 4-for-1 split, its close drops by about 75% overnight even though no
shareholder lost anything. A return computed straight from close across
that date reports a crash that didn’t happen.
What adjusted close means
adjusted_close rewrites history so that every past price is comparable
to today’s. Two kinds of events trigger an adjustment:
Splits. For an N-for-1 split, every price before the split date is
divided by N. A $400 close before a 4-for-1 split becomes $100, in line
with how the stock trades afterward.
Dividends and distributions. On the ex-dividend date the price falls
by roughly the payout, because the cash has left the company. To keep
that from showing up as a loss, every earlier price is multiplied by a
factor:
Total return from adjusted close
Since dividends are folded intoadjusted_close, the ratio of two
adjusted prices is the total return, with dividends treated as
reinvested:
365.25 / days_between:
Price return vs. total return
You can split the two effects by comparingclose and adjusted_close
over a window with no splits:
- Price return (
end_close / start_close - 1) ignores dividends. - Total return (from
adjusted_close) includes them.
Daily returns and a common mistake
For daily returns, uselag over adjusted prices:
close from one
source with an adjusted_close from another, or caching adjusted prices
and appending new days without restating old ones. Either one produces
jumps on split and ex-dividend dates.
F.A.Q.
Is adjusted close the same as total return?
Is adjusted close the same as total return?
The ratio of two adjusted closes is the total return between those dates, assuming dividends are reinvested on the ex-date. A single adjusted close on its own is just a restated price.
Why did a historical adjusted close change?
Why did a historical adjusted close change?
A new split or dividend posted after you pulled it. Adjustment is applied backward across the whole history, so every earlier adjusted price moves when a corporate action lands. Raw
close never changes.Are open, high, low and volume adjusted?
Are open, high, low and volume adjusted?
In the Historical Stock Prices dataset,
adjusted_open, adjusted_high and adjusted_low apply the same day’s factor (adjusted_close / close) to the raw prices, so you get a full adjusted OHLC bar alongside the as-traded open, high, low and close. volume is adjusted for splits only. Vendors differ here (some only split-adjust OHLC, some adjust volume, some don’t), so check the docs before mixing sources.Should I use adjusted close for mutual funds?
Should I use adjusted close for mutual funds?
Yes. Mutual funds pass income and capital gains through as distributions, which drop the NAV on the ex-date. Without adjustment, those drops look like losses.