What a performance matrix is
A category analyst with 300 SKUs and one slide needs a fast way to say which items to push, which to fix, and which to drop. A performance matrix gives them that. It's a 2x2 chart that plots two metrics against each other and drops every product into one of four quadrants. The classic CPG version puts distribution on one axis and sales velocity on the other, so each SKU's position tells you both how widely it's stocked and how fast it sells once it's on a shelf.
A performance matrix earns its keep because one number lies and two numbers together don't. A SKU can post big total sales just because it's in every store, while it barely moves per store per week. Another can sell out wherever it lands but sit in almost no stores. Plotting velocity against distribution on the same grid puts that difference on the table.
The four quadrants and what each one means
Split each axis at a threshold (often the category median or your own target line) and you get four groups. Here's how to read them and the action each one points to.
| Quadrant | Distribution | Velocity | What it is | Action |
|---|---|---|---|---|
| Winners | High | High | Widely stocked and selling fast everywhere | Protect the shelf space, defend against substitutes |
| Hidden gems | Low | High | Sells fast but is in too few stores | Push for more distribution, this is the growth lever |
| Overrated (over-stocked) | High | Low | Everywhere but barely moving | Fix the SKU or expect retailers to cut it |
| Laggards | Low | Low | Few stores, slow sales | Discontinue, or rework before chasing more shelf |
The most useful corner is usually hidden gems: high velocity, low distribution. The product already proves it sells when shoppers can find it, so the work is getting it into more stores. That's a distribution and trade marketing job rather than a product fix. Overrated SKUs are the mirror image, and the more dangerous one. They look healthy on a total-sales report because broad distribution piles up dollars, but the per-store rate is weak, and a buyer doing their own math will eventually pull the item. Catching those before the buyer does is the whole reason to run the matrix.
Why velocity vs distribution is the classic pair
You can build a performance matrix from any two metrics, but velocity and distribution earn the default spot because they map to the two questions a brand can act on separately. Distribution answers "in how many places can a shopper buy this," which trade and sales teams move. Velocity answers "how fast does it sell where it's stocked," which product, price, and promotion move. Keeping them on separate axes stops you from confusing a stocking problem with a selling problem. A wide-but-slow SKU and a fast-but-narrow SKU can show identical total sales, and they need opposite fixes.
Other pairings work for other questions. Market share against category growth is the old growth-share matrix. Velocity against margin sorts what to promote. The axes change with the decision, but the read stays the same: two metrics, four quadrants, one action per corner.
A worked example
Take a snack brand looking at three SKUs in one retailer, with the category median drawn at 60% ACV distribution and 10 units per store per week. The numbers below are illustrative.
- SKU A: 85% ACV, 18 units/store/week. High and high, a winner. Hold the line.
- SKU B: 30% ACV, 22 units/store/week. Low distribution, high velocity, a hidden gem. It outsells SKU A per store but reaches a third of the shelves. The move is more doors, not a recipe change.
- SKU C: 90% ACV, 4 units/store/week. High distribution, low velocity, overrated. It books real total dollars from sheer reach, but at 4 units it's a markdown or a cut waiting to happen.
Read as a list, SKU C might look like the star because its total sales are biggest. On the matrix it's the one at risk, and SKU B is the one worth real investment.
The competitive matrix: same grid, other people's brands
Swap your own SKUs for the competitive set and the same 2x2 becomes a competitive matrix, which is the version that goes in a category review. The axes stay velocity and distribution. What changes is that you are now plotting every brand in the segment, including yours, so the buyer can see the shape of the category rather than a list of your asks.
Take the refrigerated salsa set at a regional grocer, category median at 55% ACV and 12 units per store per week:
| Brand | %ACV | Units/store/wk | Quadrant | What the buyer reads |
|---|---|---|---|---|
| National leader | 92% | 19 | Winner | Anchor. Not moving |
| Private label | 100% | 26 | Winner | Traffic and margin. Untouched |
| Regional #2 | 71% | 9 | Overrated | Over-spaced for its rate |
| Verde Fresca (you) | 34% | 21 | Hidden gem | Earns doors it does not have |
| Two small entrants | under 20% | 5 to 7 | Laggards | Cut candidates |
Read as a competitive analysis, that grid is a positioning argument the buyer can act on without taking your word for anything. You are at 21 units against a 12-unit median in a third of the doors. The regional #2 is at 9 units in 71% of them. You are not asking for facings, you are pointing at a swap the category math already supports, and the laggard corner tells the buyer where the space comes from.
Two cautions before you build one. Your own velocity is measured only where you are stocked, which is usually the better doors, so expect some regression when distribution expands. And a competitive matrix that puts your brand alone in the winner corner reads as a sales deck. If the honest grid does not favor you, plot a different pair of axes or bring a different argument, because a buyer who has the same data will notice.
Pitfalls to watch
A performance matrix is only as honest as its setup. Three things bend it.
- Axis choice. The metrics you pick decide the story. Plotting total dollars instead of velocity just reprints the size ranking and tells you nothing new.
- Thresholds. Where you split each axis (median, mean, a target) moves SKUs across quadrant lines. State the cutoff and keep it consistent, or last quarter's hidden gem becomes this quarter's laggard for no real reason.
- Small-sample SKUs. An item in five stores can post a wild velocity number off a handful of weeks. Set a minimum store count or week count before a SKU earns a dot, so noise doesn't get filed as a growth opportunity.
One more thing. The matrix sorts, it doesn't explain. It tells you a SKU is overrated, not whether the cause is price, placement, or a thin promotion calendar. Treat it as the triage step that decides where to look next.
Where Scout fits
Building a performance matrix by hand means pulling velocity and distribution per SKU out of SPINS or Circana exports, picking thresholds, and rebuilding the grid every time the data refreshes. Scout reads those exports and answers the matrix questions directly: ask which SKUs sell fast but sit in too few stores, or which ones are widely stocked and underperforming, and it sorts your catalog into the quadrants in seconds instead of a morning of spreadsheet work.
The short version
- A performance matrix is a 2x2 that plots two metrics and sorts products into four quadrants.
- The classic CPG pair is distribution against velocity, because each axis maps to a fix a different team owns.
- Hidden gems (fast but narrow) are the growth lever; overrated SKUs (wide but slow) are the hidden risk a total-sales report misses.
- Watch your axis choice, your thresholds, and small-sample SKUs, and use the matrix to decide where to look, not as the final answer.