Dividend growth rate measures how quickly a company increases its dividend per share over time. It complements dividend yield, annual payout, payout ratio, and the number of consecutive years of dividend increases. section 5.1 section 5.5
For a multi-year history, calculate the compound annual growth rate (CAGR) from the first and last annual dividend: (last dividend / first dividend)^(1 / years) − 1. Summing payments by year avoids confusing payment frequency with annual growth. section 5.1
A practical dividend-growth analysis can proceed as follows:
- Count payments per year and average the counts to estimate payout frequency separately from growth. section 5.1
- Combine growth with yield, payout ratio, market capitalization, and payment history rather than treating one percentage as a complete investment decision. section 5.1 section 2.4.6
Listing 5.1 Calculating dividend growth
def calc_div_growth_rate (stock):
try:
dividends = stock.dividends
if dividends.empty:
return None, None
dividends_by_year = dividends.resample('YE').sum() #1
if len(dividends_by_year) > 1: #2
first_year = dividends_by_year.index[0].year #2
last_year = dividends_by_year.index[-1].year #2
first_dividend = dividends_by_year.iloc[0] #2
last_dividend = dividends_by_year.iloc[-1] #2
num_years = last_year - first_year #2
cagr = ((last_dividend / first_dividend) #2
** (1 / num_years)) - 1 #2
else: #2
cagr = None
payouts_per_year = dividends.resample('YE').
count().mean() #3
if payouts_per_year > 3.5: #3
payout_frequency = "Quarterly" #3
elif payouts_per_year > 1.5: #3
payout_frequency = "Semi-Annual" #3
elif payouts_per_year > 0.5: #3
payout_frequency = "Annual" #3
else: #3
payout_frequency = "Irregular"
return cagr, payout_frequency
except Exception as e:
print(f"Error processing {stock}: {e}")
return None, None
Use the executable pattern to inspect dividend histories, aggregate annual payouts, calculate CAGR, and estimate payout frequency. section 5.1
Comparing growth profiles
A dividend scorecard can reveal different strategies: Microsoft combines a 0.71% yield with 10.24% five-year dividend growth, while Altria combines a 6.89% yield with 4.00% growth. NVIDIA shows 20.11% growth but only one consecutive year of increases, so a high growth figure alone does not establish a long record.
Interpret the metric cautiously. Larger, mature companies may raise dividends more slowly; a low payout ratio can leave room for reinvestment, while payment dates and taxation can affect an income plan. Dividend growth is historical evidence, not a guarantee of future increases. section 5.1 section 2.4.6
