Which Holding Actually Made Your Gain? Contribution to Return in Plain Words
5 min read
5 min read
Your portfolio is up Rp5,98 juta. One stock in it is up 40%. Surely that stock did the work?
Not necessarily. The stock that climbed the most in percent is often not the stock that paid you the most in Rupiah.
The tool that answers this is contribution to return. It tells you how much each holding added to your total gain or loss. In this post you will see the formula, one worked example with five stocks, and a way to read your own table.
Contribution to return is the part of your total portfolio return that came from one holding.
Two things decide it:
A big holding with a small gain can beat a tiny holding with a huge gain. That is the whole idea.
For a single period, the formula is short.
Contribution = starting weight × return
Add up every holding's contribution and you get the portfolio return. No hidden steps.
Weight means the holding's share of the portfolio at the start. If you have Rp40 juta in one stock and Rp100 juta in total, its weight is 40%.
Here is NetWort arithmetic with an invented portfolio. The stocks are labelled A to E on purpose. The returns are made up to show the idea. They are not real prices.
You start with Rp100 juta.
| Holding | Start value | Weight | Return | Gain or loss |
|---|---|---|---|---|
| Stock A | Rp40 juta | 40% | +5% | +Rp2,00 juta |
| Stock B | Rp30 juta | 30% | +9% | +Rp2,70 juta |
| Stock C | Rp18 juta | 18% | -4% | -Rp0,72 juta |
| Stock D | Rp10 juta | 10% | +12% | +Rp1,20 juta |
| Stock E | Rp2 juta | 2% | +40% | +Rp0,80 juta |
| Total | Rp100 juta | 100% | +5,98% | +Rp5,98 juta |
Check the maths for Stock B: 30% × 9% = 2,7 percentage points. On Rp100 juta, that is Rp2,70 juta.
Add all five contributions: 2,00 + 2,70 - 0,72 + 1,20 + 0,80 = 5,98 percentage points. That equals the portfolio return.
Look at the ranking two ways.
Ranked by return: Stock E (+40%), D (+12%), B (+9%), A (+5%), C (-4%).
Ranked by contribution: Stock B (2,70), A (2,00), D (1,20), E (0,80), C (-0,72).
Stock E was the star in percent. But it was only 2% of the portfolio. Its +40% added just 0,80 points.
Stock B rose only 9%. Yet it was 30% of the portfolio, so it added 2,70 points. That is about 45% of the total gain from one holding.
Stock A is the quiet lesson. Its +5% looks dull. But it was your biggest position, so it was your second biggest source of gain.
Stock C fell 4%. It looks like a small problem. But at 18% weight, it took 0,72 points off your return.
Without Stock C, the portfolio would have returned 6,70%. A mid-sized loser can quietly cancel out almost all of what your small star earned (0,72 against 0,80). Contribution makes that visible.
Build the same table for your portfolio. Then ask three questions:
If one holding keeps showing up at the top, that is a concentration risk worth a closer look. A portfolio can look diversified by count and still depend on one stock for most of its result.
The formula above works for one period with no trades. Real portfolios are messier.
If you buy more, sell some, or add cash during the period, weights change over time. Professionals then calculate contribution day by day or month by month and link the results. That is more work, and it is why a tool helps.
Also, contribution does not say why a holding did well. To split a result into "I picked the right sectors" and "I picked the right stocks", read our guide to Brinson performance attribution. And to judge the total against something fair, see how to compare your portfolio return with a benchmark.
Open your Holdings page on NetWort. Look at each position's gain or loss in Rupiah and its share of the portfolio. Then find the one holding that contributed the most. Is it the one you expected?