Contents Lesson 2 of 16

5 min read · foundations

Why does Apple's 2020 close appear as both 499 and 121?

Pull Apple's row for 28 August 2020 and two fields disagree by a factor of four. close says 499.23. adjusted_close, on a pull made 2026-07-28, says 121.06. Both are correct, they answer different questions, and almost every data bug a beginner ships comes from using the wrong one.

Every adjusted figure in this lesson carries that fetch date, and by the end of it you will know why: the raw numbers are settled history and the adjusted ones are recomputed behind your back. Run these fetches yourself and the raw column will match to the cent while the adjusted column reads a little lower. That is not a discrepancy to reconcile — it is the subject.

The raw tape

open, high, low and close are raw: the prices as they were actually printed on the tape that day, in the money of the day, with nothing done to them afterwards. On 28 August 2020, Apple genuinely traded near 500 dollars a share.

Three days later, on 31 August 2020, Apple executed a 4-for-1 split. Every holder of one share now held four, each worth a quarter as much. The next row in the raw series opens at 127.58. Nothing was destroyed; the unit changed.

So the raw close series contains a cliff. Anyone computing a daily return across that boundary from close alone gets −74%, which never happened to anybody. Here are the three sessions, live:

Live API response: apple split boundary bars

The adjusted column

adjusted_close is the same history restated as a total-return series: every dividend reinvested at the ex-date price, gross of tax and costs. That is a reinvesting holder's return, not cash received. It carries both corrections:

  • Splits, which change the number of units.
  • Dividends, which take value out of the price on the ex-date.

Watch the arithmetic separate those two. Split-only adjustment of the 28 August close would be:

499.23 ÷ 4 = 124.8075

The adjusted_close reported on 2026-07-28 is 121.06, which is lower by 3.75, or 3.00%. That three percent is not an error. It is every dividend Apple has paid since August 2020, compounded into one factor — so it grows, slowly, every quarter.

You can isolate the factor exactly. Take 31 August 2020, the first post-split session: raw close 129.04, adjusted close 125.1654 on the same pull. No split correction applies to it, so the ratio is dividends alone:

125.1654 ÷ 129.04 = 0.969974

Now apply that same factor to the split-adjusted August 28 price:

124.8075 × 0.969974 = 121.0600

Which is the reported number, to the last printed digit — on that date. One quarter for the split, times 0.969974 for the dividends, gives the total factor 0.242493, and 499.23 × 0.242493 = 121.06.

Do the same four fetches today and every adjusted figure will be lower, the factor will be smaller, and the reconstruction will still close exactly. The method is permanent; the digits are a snapshot. Which is the next section, stated as arithmetic you have just done rather than as a warning.

The consequence people trip over

The dividend factor is recomputed every time a new dividend is paid. The adjusted history of a dividend payer therefore changes at every ex-date — every quarter for Apple, and on whatever schedule the issuer pays. The adjusted_close you stored for August 2020 last year is not the one you will get today, and neither is wrong.

This is why two data vendors can print different adjusted prices for the same day and both be right, why a backtest can quietly drift between runs, and why serious pipelines store close plus the corporate-action history and derive the adjusted series on demand rather than caching it.

Volume is adjusted too

volume is a share count, and the intuition that a count must therefore be sacred is wrong here: it carries the split adjustment exactly as adjusted_close does. The series reads 187,630,000 shares on 28 August and 225,702,700 on 31 August — a step of 1.20, where the raw price step is 3.87. There is no cliff, because both figures are already expressed in post-split shares.

Two checks settle it, and neither needs a second data source. Take the 28 August figure at face value and multiply by the raw close: $93.7bn of turnover in one session, against a company worth about $2.1tn — four and a half per cent of Apple changing hands in a day. Then go further back, where the arithmetic gets louder. Apple's row for 3 June 2013 reports 372,352,400 shares at a close of 450.72: taken raw that is $168bn in a session, against a market capitalisation near $420bn, so forty per cent of the company would have traded that Monday.

Divide instead by the cumulative split factor — 28, being the 7-for-1 of 2014 times the 4-for-1 of 2020 — and you get 13,298,300 shares, which is what Apple actually traded, and $6.0bn of turnover, which is ordinary. Every pre-split row divides by its factor exactly, with no remainder. A raw count would not do that three times in a row.

The practical consequence is the opposite of what a share count suggests. A long volume average is safe across a split, because every row is in today's units. What is unsafe is pairing this adjusted column with the raw close: that multiplication puts the split straight back into a turnover figure you thought you had cleaned.

The rule to carry

Use raw close when you need what the tape actually said — reconciling against a broker statement, checking a headline price, matching a printed record. Use adjusted_close when you are computing returns across any period long enough to contain a corporate action. Never mix them inside one calculation.

This is the mechanical half of the adjustment problem introduced in adjusted-prices. That lesson explained why old prices look wrong on charts. This one names the two columns that carry the answer.

Try it now

  1. Here is /eod/AAPL.US for from=2020-08-26 to 2020-09-02, both close columns. Compute daily returns twice, once from close and once from adjusted_close. One series has a −74% day in it. The other does not.
Live API response: mda1 apple split week closes
  1. Divide adjusted_close by close on every row of that window. On 28 September 2026 the ratio read about 0.2423 before the split and 0.9691 after — one number is the other times four. Yours will be slightly lower after any later ex-date, and still four times apart.
  2. The lesson's 121.06 was stored on 2026-07-28. Between then and 28 September 2026 Apple had one ex-dividend date, 10 August 2026; here are the session before it and the ex-date. Divide adjusted_close by close on 7 August, multiply 121.06 by that factor, and diff the result with the 2020-08-28 adjusted_close in the step 1 table. The history moved, and now you have seen it move.
Live API response: mda1 apple ex date august 2026