Portfolio Attribution: Where Your Returns Actually Come From
What Attribution Measures
When your portfolio beats the benchmark by 400bps, three things can explain it: you overweighted sectors that outperformed (allocation), you picked better-than-average names within each sector (selection), or the interaction of the two. Brinson-Fachler attribution is the standard decomposition, and it matters because the three buckets degrade at different rates. Allocation skill is hard to repeat (sector rotation is a crowded factor). Selection skill compounds if it's real. Interaction is noise. Investors who can't distinguish the three tend to ride luck up and down without ever correcting.
What the Attribution Card Shows
The Attribution card breaks your portfolio's excess return versus its benchmark (defaults to SPY, configurable) into allocation, selection, and interaction effects by GICS sector. Each sector row shows your weight, benchmark weight, your sector return, benchmark sector return, and the three-way contribution to excess. A summary strip at top lists the top 3 positive and negative contributors so you can see which decisions drove the month.

Reading the Decomposition
Two things pay off. First, selection-dominant outperformance is better news than allocation-dominant — it means you're picking better names within sectors you chose, which is a higher-capacity, more-repeatable skill than sector timing. Second, watch interaction for flags — large interaction effects usually mean your weights drifted (stocks appreciated/depreciated without you rebalancing) so the decomposition is partly measuring your past self's decisions. Three months of strongly positive allocation and negative selection is a signal to re-examine stock picks within sectors you rotate into.
Where It Fits
Combine Attribution with Factor Analysis — attribution tells you *where* returns came from (sectors, names); factor analysis tells you *how* returns came (value vs momentum vs quality). They often disagree, and that disagreement is informative. Also cross-check with Rebalancing to see whether the weight drift that's now in your attribution was meant to be there.
Open the Attribution card → /app/portfolio
Ready to try alphactor.ai?
Validate your trading strategies with statistical credibility testing. Start free.
Get Started Free