Home › Finance Formulas › Holding Period Return Formula
Holding Period Return Calculator
Holding period return is the total return on an investment over the whole time you owned it. It includes both the change in price and any income received, such as dividends, interest or rent: HPR = (P1 − P0 + D) ÷ P0. The calculator also splits it into a capital gain yield (P1 − P0) ÷ P0 and an income yield D ÷ P0.
Formula
Where
- HPR
- total return over the holding period
- P0
- purchase price
- P1
- selling price or current value
- D
- income received while holding (dividends, interest)
- t
- holding period in years
Calculator
Result and step-by-step solution
Capital gain 12% + income 4%; annualized 10.4% over 1.5 years.
- Total gain(P1 − P0) + D = (56.00 − 50.00) + 2.00 = 8.00
- Divide by the purchase priceHPR = 8.0050.00 = 16%
- Annualize(1 + 0.16)1/1.5 − 1 = 10.4007%
How to use the formula
Because holding periods differ, HPRs are hard to compare directly. The annualized return (1 + HPR)1/t − 1 converts any holding period to a per-year figure, so a 16% gain over 18 months can be set against a savings rate or another stock held for three years.
In the example a share bought at 50, sold at 56, with 2 of dividends received, has an HPR of 16%: 12% from the price rise and 4% from income. Held for 1.5 years that is 10.40% a year. For a series of holding periods, chain the returns with the geometric mean. The site also has a separate holding period return calculator for quick checks.
Frequently asked questions
- What is the holding period return formula?
- HPR = (ending value − beginning value + income) ÷ beginning value.
- How do I annualize a holding period return?
- Annualized return = (1 + HPR)1/t − 1, with t the holding period in years.
- Does HPR include dividends?
- Yes. Dividends, interest and any other cash received while you held the asset belong in the income term D.
- How do I combine HPRs from several periods?
- Multiply the growth factors: (1 + HPR1)(1 + HPR2)… − 1.
Last reviewed: September 26, 2026. Calculations run in your browser and were checked against numpy-financial, SciPy and published spreadsheet examples.
