Storekeeper

ABC Analysis in Inventory Management: Formula, Classes and a Worked Example

Metrics · 8 min read

Nothing you paste is stored.

SKU On hand Cover Status

A live preview of Storekeeper's forecasting engine on fictional sample dataon the rows you pasted. The full product connects to your POS and store and runs this continuously.

ABC analysis ranks your inventory by annual consumption value and splits it into three classes: A items, the roughly 20 percent of SKUs that carry about 80 percent of the value; B items, the middle 30 percent carrying about 15 percent; and C items, the long tail of half your catalog that carries the last 5 percent. The point is unequal attention on purpose: tight control, frequent counts and careful forecasting for A items, and cheap, low-touch autopilot for C items.

It works because inventory value is always lopsided. Nobody's catalog is uniform; a handful of SKUs dominate the money in every business we have ever seen. Treating all SKUs identically means your best seller gets the same attention as a box of shelf pegs, which shortchanges one and gold-plates the other.

What is ABC analysis in inventory management?

It is an application of the Pareto principle (the 80/20 rule) to stock control. Vilfredo Pareto noticed in the 1890s that a small share of causes produces most of the effect; inventory obeys the same law. ABC analysis formalizes it: compute each SKU's annual consumption value, sort descending, and draw two lines through the cumulative total. Everything above the 80 percent line is class A, everything between 80 and 95 percent is class B, and the rest is class C. The thresholds are conventions, not physics; some operations use 70/90, others add a D class for items with no movement at all.

How do you calculate ABC analysis?

The formula is one multiplication:

Annual consumption value = annual demand (units) × unit cost

Then five steps:

  1. Pull 12 months of demand per SKU from your sales or usage history.
  2. Multiply each SKU's demand by its unit cost to get consumption value.
  3. Sort all SKUs by consumption value, highest first.
  4. Compute the running cumulative percentage of total value.
  5. Cut at 80 percent (A/B line) and 95 percent (B/C line).

Use demand, not on-hand stock. Ranking by what sits on the shelf rewards your worst purchasing mistakes: the pile of slow movers looks valuable precisely because it never leaves.

A worked example

A ten-SKU shop, sorted by consumption value:

SKU Annual units Unit cost Consumption value Cumulative % Class
Espresso machine X1420$310$130,20044%A
Grinder Pro610$140$85,40073%A
Roasted beans 1kg2,900$11$31,90084%B
Milk pitcher steel1,150$16$18,40090%B
Filter papers 100pk2,400$6$14,40095%B
Tamper 58mm380$19$7,22097%C
Cleaning tablets900$5$4,50099%C
Cup set of 6210$14$2,94099.7%C
Descaler bottle150$4$60099.9%C
Spare gaskets90$3$270100%C

Two SKUs out of ten carry 73 percent of the money. That is the whole argument for the method, in one table. If your history lives in a database rather than a tidy export, you can get this ranking by querying it in plain English instead of writing the SQL yourself; in a spreadsheet it is one SORT and one running SUM.

What to actually do with each class

Classification without consequences is a coloring exercise. The classes earn their keep in the policies:

Policy A items B items C items
Forecasting Per-SKU, reviewed by a human Automated, reviewed on exception Simple rules (min/max)
Service level target High: 97 to 99% Middle: 92 to 95% Modest: ~90%, accept occasional gaps
Safety stock Calculated from real variability Calculated, cruder inputs are fine Flat buffer or none
Count frequency Monthly to quarterly Quarterly to twice a year Once or twice a year
Ordering Frequent, smaller orders; supplier terms negotiated hard Standard reorder points Big, infrequent orders; minimize admin per order

The service-level row is where the money moves. Holding 99 percent service on everything is ruinously expensive because safety stock grows steeply with the service target. ABC lets you buy 99 percent where it pays for itself and 90 percent where nobody will notice. Count frequency flows straight into your cycle counting schedule, which is the other place this classification does daily work.

What are the disadvantages of ABC analysis?

Four real ones, and they all have the same shape: consumption value is not the only thing that matters.

  • It ignores criticality. A $3 gasket is a C item until the espresso machines you sell cannot be demonstrated without it. Items whose absence stops revenue or production deserve an override class regardless of value.
  • It ignores margin. Consumption value is computed on cost. A cheap SKU with a fat margin and a loss-leader with a huge cost rank in the wrong order relative to what they earn you.
  • It ignores volatility. Two SKUs with identical value can need completely different handling if one sells steadily and the other in unpredictable spikes. Pairing ABC with an XYZ volatility classification fixes this: an AZ item (high value, wild demand) is your hardest problem and a plain ABC run will not flag it.
  • It goes stale. Products trend, seasons turn, a C item goes viral. A classification from last January is a photograph, not a feed. Re-run it at least quarterly, and watch the borders: the interesting SKUs are the ones that just crossed a line. A B item drifting downward on velocity is also your earliest dead stock warning.

Where software takes over

A spreadsheet ABC run is a fine first pass, and for a static catalog it may be enough. It stops being enough when the classification needs to drive things automatically: reorder points that tighten when an item crosses into class A, count lists that regenerate as classes shift, safety stock that recomputes per class policy. That is mechanical work, and it is exactly the kind of arithmetic forecast-driven inventory software should do for every SKU, every day, without being asked. The classification is the easy hour; living by it is the part worth automating.

See this math run itself

The free stock scan computes cover, safety stock and verdicts per SKU on sample data or rows you paste. No signup.

Run the stock scan

More from the stockroom

Early access · launching soon

Reading about it is step one

Step two is a system that does this arithmetic for every SKU, every day. Join the early-access list.

One confirmation email, no spam, no card.