Dev.to · 3 min read

Yield on cost — the dividend metric DRIP quietly builds

Yield on cost — the dividend metric DRIP quietly builds

Everybody quotes current yield — annual dividend ÷ today's price. It's the headline number. It's also the wrong number to watch once you actually own a position and reinvest. The number reinvestment grows is yield on cost: annual dividend ÷ what you originally paid. A DRIP calculator makes this visible in a way a brokerage statement doesn't. The engine is the same open-source library, dividend-math. What reinvestment actually does dripCalculator simulates a dividend reinvestment plan year by year: dividends computed at the current yield on the current share count, reinvested into more shares at the current price, with both price and dividend growing each year. import { dripCalculator } from 'dividend-math'; const r = dripCalculator({ initialInvestment: 10000, price: 80, dividendYieldPct: 3.5, dividendGrowthPct: 10, priceGrowthPct: 7, monthlyContribution: 100, years: 20, }); // The number nobody quotes: yield on cost const yieldOnCost = (r.finalAnnualDividendIncome / r.totalInvested) * 100; The interesting move is that last line. totalInvested is what you actually put in (initial + contributions). finalAnnualDividendIncome is what the position throws off per year at the end. Divide them and you get the yield on your original dollars — and after 15–20 years of dividend growth plus reinvestment, that number regularly runs two to three times the starting yield. Why it climbs Two forces, both quiet: The dividend grows. A 3.5% payer raising its dividend ~10%/yr nearly triples the per-share dividend in a decade. Reinvestment buys more shares at prevailing prices, and those shares then pay the (growing) dividend too. Current yield can stay flat the whole time — the price rises alongside the dividend — while yield on cost keeps climbing, because the denominator is your historical cost, not today's price. That's the real return a long-term DRIP creates, and it's invisible if you only look at current yield. The edge case worth getting right Cumulative dividends over N years are a geometric series: D + D(1+g) + D(1+g)² + …. When g = 0 it collapses to D × N; when g > 0 it's the closed-form (D·((1+g)ᴺ−1))/g. The g = 0 branch has to be handled separately — divide by zero otherwise. It's the kind of thing that's easy to get subtly wrong, which is why every formula in the library is a pure function covered by unit tests. Same dripCalculator drives the DRIP, SCHD, QQQI, and monthly pages on dividendpayoutcalculator.com — one implementation, no drift. Run it Live DRIP / dividend reinvestment calculator: year-by-year table + chart, no sign-up. Library (npm): npm install dividend-math Source: github.com/a353551071/dividend-math (MIT) Math/engineering post, not financial advice. Past dividend growth doesn't guarantee future growth; model scenarios, don't pick tickers. How do you track yield on cost in your own portfolio — spreadsheet column, or do you let the broker's cost basis do the work? Always felt like a metric more people should watch.

This is a summary aggregated from Dev.to. Read the complete article on the original site:

Read full article at Dev.to

More Programming & Dev News