Why assortment is the biggest lever
Print the Sprouts refrigerated salsa planogram and it is a grid of maybe forty items, each in its box, across a $18.4M set in about 345 stores. Assortment planning is the fight over which of those boxes stay filled and by what, and it is the fight that moves the $18.4M number more than any other. In the review, the buyer spends maybe two minutes on price and five on promotion, then thirty on that one grid: which SKUs keep their box and which come off. Not because her attention wanders. Because the price ladder and the summer feature move dollars at the margin, and which items are on the shelf at all sets the ceiling everything else works under.
Assortment is the first of the four tactical decisions in the eight-step process, and it is the one that sets the ceiling for the other three. You cannot price an item that is not authorized, promote an item nobody stocks, or planogram a slot for a SKU that does not exist. Every fresh salsa on that fixture is occupying space that some other item, a fermented line extension, a competitor's pico, the store brand, could have held instead. So the real assortment question is never "is this SKU good enough to keep." It is "is this SKU the best use of this slot, given everything else that wants it." That reframing is what separates a rationalization that grows the category from one that just trims the tail.
The assortment planning framework
SKU rationalization is the disciplined version of the cut/keep/add decision. An item does not stay on the shelf because it exists or because a supplier likes it. It stays because it passes a set of tests, and it comes off when it fails enough of them. Here is the frame I used against the Sprouts salsa set, and the order matters because the first test does most of the filtering.
| Test | The question | The threshold I used | What a fail means |
|---|---|---|---|
| Velocity floor | Is it selling fast enough per store per week? | Below the category median of $31/store/week | Prime candidate to cut, unless a later test rescues it |
| Distribution efficiency (TDP) | Is it earning the distribution it holds? | Velocity flat or falling while %ACV stays high | It is riding shelf equity it no longer earns |
| Incrementality vs cannibalization | Does it pull net-new category dollars, or steal from siblings? | New/added items only: net category lift > 0 | The add is a shell game, not growth |
| Duplication / redundancy | Does another SKU already do this job? | Two items inside 10% on velocity, flavor, and price | The weaker twin is dead weight |
| Strategic role | Does it hold a slot the shelf needs for another reason? | Opening price point, premium halo, dietary claim, one-of-a-kind flavor | Keep even at sub-median velocity |
The velocity floor is the workhorse, so it is worth being precise about it. Velocity is dollars (or units) per carrying store per week, a read on how well an item actually turns where it is stocked, not how widely it spreads. Syndicated tools also express velocity per point of distribution or per $MM of ACV; per carrying store per week is the shelf-level cut I use in a review, and the velocity read walks all three. A buyer sets a floor because shelf is finite and every slot has an opportunity cost. At Sprouts, the refrigerated salsa category median ran $31/store/week, and the buyer's working rule was blunt: an item below the median needs a reason to stay, and an item in the bottom quartile needs a very good one. That floor is not a law of physics. She set it by looking at the category's own velocity distribution and deciding where the tail stopped paying rent.
The floor alone is not a cut list, though, and this is where most rationalizations go wrong. Velocity tells you which items are weak. It does not tell you what happens if you remove them, because a shopper who came for a discontinued pico does not vanish, she buys something else, or she buys nothing. The distinction between those two outcomes is the whole game, and it is why the incrementality test sits right after the floor.
For which metric answers which part of this, the velocity, share, and TDP decision tree is the companion page. It walks the exact split between velocity, ACV, and TDP that this framework leans on.
Incrementality versus cannibalization
Adding a SKU that only steals sales from your own other items is a reshuffle. It looks like growth on the new item's line and hides the loss on the old one. This is cannibalization, and it is the single most common way an assortment change fools the person who made it.
The test is simple to state and easy to skip. When you add an item, do not look at the new item's sales. Look at the whole segment's sales, before and after, at the same stores. If the fermented salsa segment was doing $X per store per week before the new fermented SKU landed and $X plus something after, the add was incremental. If the segment total barely moved while the new SKU racked up dollars, the new SKU ate its neighbors and you gained nothing but a longer item list and a harder-to-manage shelf.
Here is the split laid out, because the difference between these two rows is the difference between a good add and a wasted slot.
| Outcome | New SKU sells | Segment total moves | Verdict |
|---|---|---|---|
| Incremental | Yes | Up by roughly the new SKU's volume | Real growth, earns the slot |
| Cannibalizing | Yes | Flat or up far less than the new SKU's volume | Reshuffle, the new SKU stole from siblings |
| Failed add | No | Down (took a slot off a working item) | Worst case, cut it fast |
The reason this matters for assortment specifically is that line extensions are almost always the tempting add, and line extensions are the most likely to cannibalize. A third pico from the same brand at the same price point is fishing in the exact pond your first two picos already own. A new segment entry, a fermented line where you had none, fishes somewhere new. That is why incrementality is not a nice-to-have check. It is the difference between adding depth and adding clutter.
A worked example on Verde Fresca at Sprouts
Verde Fresca is the brand I ran, a mid-size refrigerated salsa maker doing $1.42M at Sprouts, 7.7% dollar share, fourth in the category, five SKUs. Brand velocity was healthy at $42/store/week against the category median of $31, and ACV was 78%. But the brand-level number hid the thing that actually mattered, which is that the five SKUs were not one story. They were two.
Two of the five were the fermented line, growing +34% YoY. The other three were fresh, and they were flat. When I broke velocity out by SKU, the split got sharper: the fermented pair was carrying the brand, and two of the three fresh items were below the $31 category median. Here is the SKU-level read I brought to the review.
| SKU | Segment | Velocity ($/store/wk) | TDP status | YoY | Decision |
|---|---|---|---|---|---|
| Fresh Pico | Fresh | $47 | Full distribution, earned | Flat | Keep |
| Fresh Chunky Medium | Fresh | $28 | Full distribution, not earned | Flat | Cut |
| Fresh Restaurant-Style | Fresh | $24 | Full distribution, not earned | Down 3% | Cut |
| Fermented Verde | Fermented | $58 | Full distribution, earned | +34% | Keep, defend |
| Fermented Roja | Fermented | $51 | Full distribution, earned | +31% | Keep, defend |
The recommendation wrote itself. Cut the two slowest fresh SKUs, Chunky Medium at $28 and Restaurant-Style at $24, both sitting below the category median and both flat-to-declining. They were holding full distribution they no longer earned, which is the distribution-efficiency failure: high %ACV, weak and falling velocity. Keep Fresh Pico, which at $47 was well above median and clearly the fresh anchor. Keep and defend both fermented SKUs, which were the growth engine.
Then the interesting part: use one of the two freed slots to add a fermented line extension, a fermented verde in a hotter heat level, riding the +28% YoY the fermented segment was showing category-wide. But an add is only good if it is incremental, so I ran the test before I recommended it. The question was whether a new Fermented Verde Hot would pull net-new category dollars or just cannibalize the existing Fermented Verde at $58.
The evidence pointed to incremental. The existing Fermented Verde was a medium heat, and the shoppers reaching for it skewed toward a milder profile. Sprouts shopper data and the category's own heat-level velocity curve both suggested a hot fermented option was pulling from a different buyer, someone currently walking out with no fermented salsa because nothing on the shelf hit their heat preference. That is the incremental case: the add fills a gap that currently sends the shopper home empty, rather than swapping which Verde Fresca jar a fermented buyer picks up. If the read had gone the other way, if the hot version was just going to split the existing fermented buyers across two jars with no segment lift, I would have left the slot for the store brand or a competitor's fermented entry rather than manufacture cannibalization inside my own line.
Net effect of the whole move: two weak fresh SKUs off, one incremental fermented SKU on, one slot handed back to the category for the buyer to fill. That is a rationalization that grows the segment and reads as honest to the person on the other side of the table, which brings up her view of all this.
The buyer's view
The buyer does not grade my assortment ask on whether it helps Verde Fresca. She grades it on whether it helps her category dollars and margin, full stop, and she runs the cannibalization math herself. A supplier's ask that cannibalizes the category's existing winners gets cut the moment she pivots the segment. I have watched a captain walk in with a slate of line extensions that, pivoted honestly, would have hollowed out two strong incumbents to make room for the captain's own me-too items. That ask did not survive the meeting, and the captain lost a little credibility that took a year to earn back.
So the framing that works is the opposite of "my SKU will sell." It is "my SKU fills a gap that is currently sending shoppers somewhere else." When I pitched the fermented verde extension, I did not lead with Verde Fresca's velocity. I led with the hole: the category was leaking hot-fermented demand to no purchase or to the specialty channel, and here was the segment data showing the gap. An add framed as filling a leak the buyer can see in her own numbers is an add she can defend to her boss. An add framed as "give my brand another facing" is one she cuts first, because it reads as a land grab and land grabs are what her scorecard exists to catch.
This is also why cutting is easier to sell than adding. When I proposed cutting my own two slow fresh SKUs, the buyer trusted every other number I brought that day more, because a supplier who volunteers to cut its own weak items is obviously not just fishing for facings. Honesty on the cut buys credibility on the add.
Anti-patterns
Three ways I have watched assortment decisions go wrong, all of them avoidable.
Cutting by raw dollars instead of velocity and incrementality. The tempting move is to sort the SKU list by total dollars and lop off the bottom. But total dollars conflate velocity with distribution, so a slow item that happens to be in every store outranks a fast item that is only in half of them. Cut on raw dollars and you protect the wrong SKUs, the widely distributed slow ones, and cut the narrowly distributed fast ones that actually deserve more doors. Velocity is the honest per-store read, and incrementality tells you what the cut actually costs. Raw dollars tell you neither.
Adding line extensions that duplicate. A fourth flavor from the same brand at the same price and heat level is the assortment equivalent of clearing your throat. It rarely brings a new shopper, it splits velocity across the sibling it copies, and it makes the shelf harder to shop. Every add should be able to name the gap it fills. If the honest answer is "it is like our best seller but slightly different," it is a cannibalization risk wearing a growth costume.
Ignoring days-of-supply. A high-velocity SKU with a tight fresh shelf life can starve if its facings do not cover its turn between deliveries. On the refrigerated salsa fixture, a fast fermented item with two facings and a fourteen-day code can sell out mid-week and sit empty until the next truck, which reads as weak velocity when it is actually a supply constraint. Rationalize on velocity, but check days-of-supply before you assume a soft number means a soft item, especially on short-coded refrigerated sets.
Doing this in Scout
The grind in assortment work is the same grind as the rest of category prep: assembling the SKU-level view. You need every item's velocity, its %ACV and TDP, its YoY, and the segment total before and after any change, pulled out of raw SPINS or Circana extracts and rebuilt every time. Scout sits on that data and builds the SKU-level velocity and distribution cuts as a saved view, so the recurring rationalization pass becomes a refresh instead of a rebuild, and the segment-before-versus-after that the incrementality test needs is one read rather than four pivots.
What Scout does not do is make the call. It will show you that Fresh Chunky Medium is at $28 against a $31 median and flat, and it will show you the fermented segment total before and after a launch. It will not decide that the hot fermented add is incremental rather than cannibalizing, because that read leans on shopper heat preference and on the buyer's judgment about her own store base, which is not in the syndicated data. Scout assembles the evidence for the cut/keep/add decision. The buyer still owns the slot, the margin target, and the reset. And the assortment you land here is the input to the next tactic: the planogram turns the item list into facings and shelf position.
The short version
- Assortment is the biggest tactical lever because which items are on the shelf at all sets the ceiling on price, promotion, and planogram, so run every SKU against a velocity floor, distribution efficiency, incrementality, duplication, and strategic role before you cut or keep it.
- An add is only growth if it is incremental, so measure the whole segment before and after at the same stores, not the new SKU's sales, and treat any line extension that duplicates an existing item as a cannibalization risk.
- On the Verde Fresca salsa set that meant cutting two sub-median fresh SKUs, defending the two fermented winners, and adding one hot fermented extension only because it filled a gap the buyer could see in her own numbers rather than stealing from the existing fermented jar.
Related: Planograms and shelf space to sales · Category strategies, and when to use each