Stock Return Calculator — CAGR + Dividends

Add dates, prices, and dividends. Toggle DRIP to reinvest distributions. Private by design — everything runs locally in your browser.

Inputs

Price path assumption: linear between start and end. You can enter an override reinvest price per dividend row if you like.

Applied before DRIP; leave blank for 0%.

Dividend schedule

Enter one row per dividend: Date, Dividend per share, optional Reinvest price override.
DateDPS ($)Reinvest price (opt.)
Tip: You can paste CSV into the table (Date,DPS,Price).

Results

Summary:
Metrics:
Equity curve
Linear price between start and end; DRIP adds shares on dividend dates.
Cash-flow table
DateEventPriceShares ΔSharesCash ΔCashPortfolio Value

How this calculator works

Summary: We start with either shares or amount ÷ start price. Each dividend adds cash equal to shares × DPS × (1 − tax). If DRIP is on, that cash buys more shares at the dividend date price (interpolated unless overridden). The ending value equals ending shares × end price + leftover cash. CAGR annualizes the growth over the exact time span.

Key formulas

  • Linear price at time t: \( P(t)=P_s + (P_e-P_s)\cdot \frac{t - t_s}{t_e - t_s} \)
  • Final value: \( V_{\text{end}} = S_{\text{end}} \cdot P_e + \text{Cash}_{\text{end}} \)
  • Total return: \( \frac{V_{\text{end}}}{V_{\text{start}}}-1 \)
  • CAGR: \( \left(\frac{V_{\text{end}}}{V_{\text{start}}}\right)^{1/\text{years}} - 1 \)

Notes & assumptions

  • Price on dividend date defaults to a linear interpolation between your start and end prices. You can override per row.
  • Dividends are assumed to be paid on the entered date (use payment/record date consistently).
  • Splits aren’t modeled explicitly; adjust starting shares if needed.
  • All values are nominal USD; no FX or fees.

5 Fun Facts about Stock Returns

Dividends carry most of history

Roughly half of long-term global equity returns (since 1900) came from dividends and their reinvestment, not price moves.

Total return

Sequence matters

Two investors with the same average return can end up miles apart if one sees losses early while contributing and gains later.

Order effect

Splits hide in share count

A 2-for-1 split doubles shares and halves price—total value unchanged. Adjusting share count, not price, keeps CAGR math clean.

Splits

Tax drag is sneaky

Reinvested dividends taxed each year can lower CAGR versus deferring tax—same headline yield, different after-tax compounding.

After-tax

Time in beats timing

Missing just a handful of the best days in a decade can slash total return—why many investors stay invested and avoid guessing tops.

Stay invested

Explore more tools