Skip to content
KStart free
AI InfrastructureDefenseQuantumAll studies →

What is Brinson attribution?

Brinson attribution explains why a portfolio beat or missed its benchmark. It splits the gap, sector by sector, into three parts: allocation — whether over- or under-weighting a sector helped; selection — whether the stocks held inside a sector beat that sector's benchmark; and interaction, the joint term where the two decisions reinforce or offset.

How it works

Start with the active return: the portfolio's return minus the benchmark's over the same period. Brinson attribution asks where that difference came from. It groups both books by sector and, in each sector, compares two decisions against what the benchmark did there — how much money was in the sector, and what the money earned once it was.

Allocation is the weighting decision on its own. It asks whether being heavier or lighter than the benchmark in a sector helped, judged as though the manager had simply held the sector's own benchmark stocks. A manager who was overweight energy in a year energy led the market earns allocation, whatever they owned inside it.

Selection is the stock-picking decision on its own. It asks whether the specific names held in a sector beat that sector's benchmark, judged at benchmark weight so the size of the bet is held constant. A manager whose energy names beat every other energy name earns selection even if they were underweight the sector.

Interaction is the part neither decision can claim alone: it is the extra that comes from picking well in a sector you were also overweight, or from picking badly in one you avoided. Some houses fold it into selection; keeping it separate is the more honest reading, because it is genuinely the product of two choices rather than either.

Two conventions are in common use, and they differ on one point. Brinson–Hood–Beebower credits an overweight for sitting in a sector that simply rose. Brinson–Fachler judges the same overweight against how the whole benchmark did, so a tilt is rewarded only when the sector beat the benchmark overall — the more defensible reading of what an allocation decision was actually betting on, and the one SPZCO computes by default. The two agree on the total and differ only in how it is split between sectors.

Added across every sector, the three effects come back to the active return, so nothing is left unexplained. The unit is one period at a time; chaining periods together so the effects compound over a year is a separate, well-established step, and the linked view says so on its own panel.

Where you see this in the terminal

PORT · Attribution tab(account required)your book's active return split by sector, with the per-month detail behind it

Brinson–Fachler conventionswhich convention we compute, what the inputs must satisfy, and what is rejected

Linking periods togetherhow single-period effects are chained so they compound over a window

The conventions behind it

What this page explains in plain language, the methodology documents state as conventions: the inputs, what is rejected, and the stated limits.

More of these: every concept page. The full transparency index is at Methodology.