
SKU analysis is the practice of reviewing inventory performance one SKU at a time, so you can see what each unit sells, what it actually earns after fulfillment costs, and how much storage it eats while it waits to sell. The output is a decision for every unit in your catalog: reorder, reprice, bundle, or stop buying it.
Most brands run some version of this once, usually after a bad quarter, and then never again. This guide covers what to measure, how to work through it, where the numbers usually mislead people, and what changes when a fulfillment partner handles the reporting.
The raw material is already sitting in your systems. Your cart, your marketplace dashboards, and your SKU numbers hold the sales history. The catch is that it lives in four places with four different definitions of "on hand," which is why multichannel inventory management has to be squared away first. Plenty of brands skip the spreadsheet rebuild entirely and lean on a 3PL logistics partner for the reporting layer.
SKU analysis is the review of inventory at the individual unit level: how much stock is available, how fast each unit turns, what it costs to hold, and how much of it you should buy next.

Run it properly and you can:
The results reflect what customers are actually doing across every channel you sell on. That is usually the part that surprises people, since a unit can be dead on your own site and moving well on a marketplace.
A SKU is your internal identifier for one sellable unit: size, color, flavor, pack count. It belongs to you, which is the practical difference in any SKU vs UPC comparison. Where this bites is consistency. Bulk uploads to Amazon and Shopify have a habit of generating their own variant codes, and if the same jar of magnesium carries three identifiers across three systems, your analysis will treat it as three products with a third of the velocity each.
It takes real work, which is why plenty of brands skip it. The ones who keep at it tend to find money that was already theirs.
A profitable business can still be carrying units that lose money. When a handful of SKUs sell at a strong margin, the weak ones hide in the aggregate and nobody goes looking.
Brands that are not tracking at this level also keep reordering things they already hold in volume. SKU analysis surfaces them so you can wind them down and put the space toward something that moves. It is the same discipline as good stock control, applied per unit rather than per category.
Growth means variants. New flavors, new sizes, a second colorway because a customer asked. Left unchecked for a few quarters, the catalog outruns both the storage budget and the margin. SKU analysis is how you find your genuine high demand products and concentrate buying there.

One rough signal worth checking: if the newest third of your catalog is producing single digit revenue while sitting on a quarter of your pallet positions, proliferation is already expensive.
Storage bills on space and time. A pallet holding a unit that turns twice a year is a pallet that is not holding one that turns monthly, and since most fulfillment pricing is volume based, trimming the catalog lowers the invoice directly. If you need to make that case to a founder who is attached to a product, put your slowest units next to your fulfillment center pricing and the conversation gets short.
Reorder points built on category averages overstock the weak units and stock out the strong ones. SKU level history is what makes demand forecasting worth doing at all. This matters most going into Q4, when a stockout on a top seller costs more in three weeks than a slow unit costs in storage all year.
Units sold is not enough on its own. These are the figures that actually change a buying decision, and they sit alongside your broader supply chain KPIs rather than replacing them.
Sell through rate. Units sold divided by units received in a period. On a mature SKU, low sell through is usually your first retirement flag.
Inventory turnover. How many times the unit cycles through stock in a year. Compare it within a category, since apparel and supplements turn at completely different rates and a blended average tells you nothing.
Days of inventory on hand. How long current stock lasts at current velocity.
Contribution margin per SKU. Revenue minus landed cost, pick and pack, packaging, storage, and outbound shipping. Getting this right depends on an accurate cost per unit. A unit that looks healthy at the product level frequently is not once fulfillment goes in, and oversized items are where that gap opens widest.
Storage cost per SKU. Space occupied multiplied by time held. Bulky slow movers are the worst offenders here and they almost never show up in a standard sales report, which is why they survive so long.

Return rate per SKU. A 60% margin unit coming back at 30% is not a 60% margin unit. Pull your reverse logistics data into the same view. Returns also lag the sale by 30 to 60 days, so a snapshot taken in September is judging August sales against July returns.
Stockout frequency. Lost sales never appear in sales data, so this one has to be tracked deliberately or it gets ignored by default.
Close the period with a clean ending inventory formula so the numbers you are analyzing match the numbers your accountant is working from.
Merge the duplicates, retire orphaned identifiers, and confirm the same unit carries the same code everywhere. This is the least interesting step and the one that quietly ruins the most projects.
Twelve months where you have it: units sold by channel, receiving dates, current on hand, returns, and cost inputs. Whether your books run perpetual or periodic changes how much you can trust a mid month snapshot, so it is worth knowing which side of the perpetual vs periodic inventory line you are on before you start drawing conclusions from a Tuesday count.
Software that updates in real time removes most of the friction. Manual exports go stale the moment they download, and reconciling four of them by hand is where these projects usually die around week two.
Sort by contribution to revenue or margin:
Then run the same ranking by storage consumption and look at the overlap. Anything sitting in C for revenue and A for space is costing you twice
Product cost alone will mislead you. Add inbound freight, duties, storage, pick and pack, packaging, and outbound shipping. Some units flip negative the moment shipping is included. Oversized and fragile goods are the usual culprits, and pricing on those is genuinely case by case, so get the real figures from your fulfillment partner instead of estimating.
Rationalization is the decision layer: continue, reprice, bundle, or discontinue. It means putting procurement costs, fulfillment costs, sales history, and carrying costs side by side for each unit.
Two constraints belong in that call. Supplier minimum order quantity terms matter, because a unit that only works at 5,000 pieces is a different decision than one you can buy 200 of. So does exit cost. Discontinuing stock you already own may mean discounting it, bundling it, or choosing to write off inventory and take the space back.
Adjust the reorder points, cut the confirmed losers, bundle or promote the borderline units, and put a review date on the calendar. Then check whether turnover and margin actually moved, because sometimes they do not and the reason is worth knowing.
Say you sell 240 SKUs and your top 30 bring in 68% of revenue. One of them is a four pack refill with a 62% margin that turns eleven times a year. Nothing to think about there.
Now take a gift set launched last spring. It moves 40 units a month at a 45% product margin, which puts it in everyone's mental list of good performers. But it ships in an oversized box, holds six pallet positions year round, and comes back at a 22% return rate.
Add storage, oversize shipping, and returns processing and that 45% lands closer to 4%.
Nobody was hiding anything. The sales report was accurate. It just was not measuring the three things that were eating the margin, and none of them are visible until you look at the unit on its own.

Quarterly works for most ecommerce brands, with a lighter monthly look at the A units and a deeper pass before peak season. If you are adding variants quickly, tighten that up, since proliferation compounds fastest right after a launch goes well.
Stable catalog, healthy turnover, no new SKUs in six months? Twice a year is defensible. The version that fails is the one where somebody runs it once, feels good about the findings, and never opens the file again.
We built our reporting around the question operators actually ask, which is what each unit is doing for them right now.
Inventory records update in real time, so you can track stock levels precisely, reorder before you run out, and pull slow movers off the procurement list before they turn into dead stock. Receiving and putaway happen within 48 hours, which means the counts you are analyzing reflect what is on the shelf today rather than what was on it last week.
The dashboard surfaces SKU level performance across every channel in one place. Paired with our order fulfillment services, you get velocity, on hand counts, and receiving history without exporting four reports and reconciling them by hand on a Friday afternoon.
Once you know what is stalling, bundling usually beats discounting. Our kitting and assembly services let you pair a slow SKU with a strong one, create a new sellable unit, and then track that unit from the same dashboard to see whether the pairing worked.
We run at a 99.999% accuracy rate with 99.9% of orders shipping same day, across more than 3 million orders a year and 100,000+ SKUs under management. Accuracy matters here for a specific reason: pick errors and miscounts corrupt exactly the data you are trying to make decisions from, and you tend not to notice until the analysis is already built on it.
Your dedicated account manager sits inside the warehouse. So when a count looks wrong, somebody can walk over and look at the pallet.
Ecommerce keeps taking share of total US retail, which you can track in the quarterly retail figures published by the U.S. Census Bureau, and returns remain a stubborn margin problem across the industry per research published by the National Retail Federation. More channels and more returns mean more noise in the numbers, and more reason to look at inventory one unit at a time.
The brands that stay ahead of this treat it as a standing quarterly review rather than a rescue mission, and their storage invoices tend to reflect that.
If you would rather not build the reporting layer yourself, we already run it. No long term contracts, volume based pricing, and a team earning your business every month on performance. Get an instant quote and we will show you what your SKU data looks like on our dashboard.
SKU analysis means looking at your inventory one product unit at a time to see what it sells, what it earns, and what it costs to store. You end up with a decision for each unit rather than a report about the catalog as a whole.
Analysis is the measurement and rationalization is the decision that follows it. The analysis tells you how each unit performs on velocity, margin, and storage. Rationalization is where you commit to continuing, repricing, bundling, or discontinuing it.
Sales history by channel, current on hand quantities, receiving dates, return rates, and full landed cost including fulfillment. Twelve months is ideal so seasonality does not distort the read. Cost inputs matter most, since every margin conclusion depends on them.
There is no universal number. Look at proportion instead: if a large share of the catalog produces a small share of revenue while occupying significant storage, you have proliferation regardless of the count. The ABC ranking will tell you faster than a target number will.
Yes. A 3PL with real time inventory software gives you SKU level performance across channels without manual exports, and can act on the findings through kitting, bundling, or adjusted storage. At ShipBots that reporting comes standard with fulfillment, and your account manager goes through the trends with you rather than emailing a PDF.
Yes, often more than brands expect. Storage bills on space and time, so retiring slow units frees pallet positions you are already paying for every month. Putting your slowest movers next to your storage costs is usually the clearest financial argument for doing the work