Price ladders across pack sizes: how to build one and where it breaks
How to build a size ladder from shelf data, read its steps with four numbers, and tell an inversion, a gap and a steep step apart.
14 min read
Shelfprice, updated · 14 min read
Unit price is the price of a pack divided by the total quantity in it, in one unit. It puts packs of different sizes, counts and formats on one scale. It is the arithmetic under every pack price ladder, every private label benchmark and every price pack architecture audit. (The phrase also appears in contracting and procurement, where it means something else. This article covers consumer-goods packs.)
The National Institute of Standards and Technology (NIST) publishes a best-practice guide to retail unit pricing. Its rule is to use one unit of measure for a product category and to take the one most commonly displayed on the packages in that category. It uses soda in 2 L bottles and 12 fl oz cans as the example of two formats that share one unit. NIST SP 1181 also says that “loads,” “uses” and “servings” are not acceptable units for the shelf tag. An analyst may still add them as a second, clearly labeled measure. They must never be mixed into the main one.
| Family | Examples | Use it when |
|---|---|---|
| Weight | oz, lb, g, kg | The packs print a weight. |
| Volume | fl oz, L, mL, gal | The packs print a volume. |
| Count | each, roll, sheet, pod | The product is sold by number. |
| Per use (second metric) | per load, per serving, per cup | Concentration or serving definitions differ between products. Label it and keep it apart. |
The UK Competition and Markets Authority (CMA) published a case that every analyst should keep. One brand of toilet roll came in packs of 4, 9 and 12 rolls. The 12-pack had 300 sheets per roll and the other two had 190.
| Pack | Price | Total sheets | Pence per roll | Pence per 100 sheets |
|---|---|---|---|---|
| 4 rolls of 190 | £3.15 | 760 | 78.8 | 41.4 |
| 9 rolls of 190 | £5.75 | 1,710 | 63.9 | 33.6 |
| 12 rolls of 300 | £11.50 | 3,600 | 95.8 | 31.9 |
UK Competition and Markets Authority, Groceries unit pricing: pricing analysis, Jan 30, 2024, paragraph 3.8. One brand at one retailer, May 9, 2023. Prices in pounds, unit prices in pence.
Per roll, the 9-pack looks cheaper than the 12-pack: 63.9p against 95.8p. Per 100 sheets, the 12-pack is cheaper: 31.9p against 33.6p, a saving of 5.0%. The CMA reports 6%, because it compared the rounded figures 32p and 34p. Compute at full precision and round only for display.
The same paragraph of the CMA report shows how a larger pack can lose. One retailer sold 16 rolls of 180 sheets for £11.75 and 4 rolls of 360 sheets for £4.70. That is 40.8p against 32.6p per 100 sheets. Two of the small packs give the same 2,880 sheets for £9.40, 20% less.
Convert every pack to total quantity in the category’s one unit before dividing. Total quantity is count times size each. The factors below come from the NIST conversion tables.
| Dimension | Factor |
|---|---|
| Weight | 1 lb = 16 oz. 1 kg = 35.274 oz. 100 g = 3.527 oz. |
| Volume | 1 gal = 128 fl oz. 1 qt = 32 fl oz. 1 pt = 16 fl oz. 1 L = 33.814 fl oz. 1 mL = 0.03381 fl oz. |
| Count | Each, roll, sheet, pod and load have no universal conversion. Use the count printed on the pack. |
| Format | Price | Total fl oz | Cents per fl oz | Cents per 100 mL |
|---|---|---|---|---|
| 12 x 12 fl oz cans | $9.00 | 144 | 6.25 | 21.13 |
| 2 L bottle | $2.40 | 67.63 | 3.55 | 12.00 |
| 6 x 7.5 fl oz minis | $3.60 | 45 | 8.00 | 27.05 |
Illustrative numbers, not data from any retailer or brand.
The 2 L bottle is 2 x 33.814 = 67.63 fl oz. The bottle is the cheapest rung at 3.55¢ per fl oz and the minis the dearest at 8.00¢. Changing the unit to mL changes every number and none of the ranks. The biggest total is not the cheapest rung: the 12-pack costs 76% more per fl oz than the bottle.
Per ounce favors a dilute product. A concentrate has fewer ounces and the same number of uses, so a per-ounce comparison between the two is misleading. Add a per-use measure, labeled as a second metric, and show both.
| Product | Price | Fluid ounces | Loads | Cents per fl oz | Cents per load |
|---|---|---|---|---|---|
| Concentrate | $12.00 | 90 | 60 | 13.3 | 20.0 |
| Standard | $15.00 | 150 | 60 | 10.0 | 25.0 |
Illustrative numbers, not data from any retailer or brand.
Per fl oz the concentrate costs 33% more. Per load it costs 20% less. Neither number is wrong. They answer different questions, and the loads figure is the manufacturer’s own claim, so keep it in its own column.
“The average price per ounce” names at least three different numbers. Each answers a different question.
Take two packs at fixed prices: the 12 oz at $4.80 (40.0¢ per oz) and the 64 oz at $16.00 (25.0¢). In one period the 12 oz sells 900 units and the 64 oz sells 100. In the next the mix shifts to 700 and 300. No price changes.
| Measure | This period | Next period |
|---|---|---|
| Units sold: 12 oz / 64 oz | 900 / 100 | 700 / 300 |
| Total dollars | $5,920 | $8,160 |
| Total ounces | 17,200 | 27,600 |
| Total dollars over total ounces | 34.4¢ | 29.6¢ |
| Mean of the two unit prices | 32.5¢ | 32.5¢ |
| Median unit sold | 40.0¢ | 40.0¢ |
Illustrative numbers, not data from any retailer or brand.
The ratio of sums moves from 34.4¢ to 29.6¢, a change of −14.1%, with no price change. Shoppers moved to the cheaper-per-ounce pack. The mean and the median do not see it. Price/volume/mix analysis exists to separate this mix effect from real price moves; net revenue management uses it.
A price list has no sales weights. From a catalog or a shelf scan you can compute the mean and the median of pack points and the median by brand. You cannot compute a ratio of sums, and any figure that looks like a market price per ounce is not one. Say “median across pack points” and give the count.
A median of pack points counts packs, not ounces or purchases. It reflects how many sizes exist at each price. Take eight pack points: 5 small packs at 40¢ per ounce and 3 large ones at 25¢. The median is 40.0¢, though the large packs hold most of the ounces. Delist two of the small packs and the median falls to 32.5¢, a move of −18.8% with no price change. Compare at matched sizes, or report medians per size band, so assortment breadth does not move the result.
No standard sets a minimum. This is our own working rule: print the count next to every median, do not report a median from fewer than five pack points, and add the range when there are fewer than ten. Here is why. Five pack points have unit prices of 22, 25, 27, 30, 41 cents per ounce, with a median of 27.
| Pack point dropped | Median of the other four |
|---|---|
| 22¢ | 28.5¢ |
| 25¢ | 28.5¢ |
| 27¢ | 27.5¢ |
| 30¢ | 26.0¢ |
| 41¢ | 26.0¢ |
Illustrative numbers, not data from any retailer or brand.
Dropping any one point moves the median anywhere from 26.0 to 28.5, which is −3.7% to +5.6%. A change in a small category median of that size can come from a single pack appearing or leaving, not from a price move.
Two prices exist for one pack. Regular price is the price without any deal. Shelf price is what a shopper pays today: the deal price when there is one, otherwise the regular price. Use regular price to judge structure, since a one-week deal should not look like a pricing mistake. Use shelf price to describe what shoppers pay now. Never put both in one average.
| Case | Pack price | Quantity (oz) | Cents per oz | Versus regular |
|---|---|---|---|---|
| Regular price | $8.96 | 64 | 14.0 | baseline |
| Deal price | $6.72 | 64 | 10.5 | −25.0% |
| Multi-buy: 2 for $12.00 | $12.00 | 128 | 9.4 | −33.0% |
Illustrative numbers, not data from any retailer or brand.
A multi-buy deal sets a unit price only for a shopper who buys the whole offer, so state its condition next to the number. The CMA found that promoted items were often, but not always, the cheapest per unit, and that a promoted larger brand pack could beat the largest store-brand pack at regular price.
Compare two brands at the same total size and format, with the same price type. The gap between them has two correct values depending on which brand is the base. Say which.
Positive: A costs more than B. Always name the base.
| Pack | Price | Cents per oz | Gap |
|---|---|---|---|
| Brand A, 64 oz | $8.96 | 14.0 | 40.0% above the store brand |
| Store brand, 64 oz | $6.40 | 10.0 | 28.6% below Brand A |
Illustrative numbers, not data from any retailer or brand.
Brand A is 40.0% above the store brand and the store brand is 28.6% below Brand A. Both are right. A report that mixes the two bases invites an argument over nothing.
Brands rarely sell the same sizes. Compare a pack with what packs of its size cost in the category by reading both from a fitted curve of unit price against size. Pack price ladders shows how to draw it.
NIST SP 1181 recommends showing unit prices at or above $1.00 to the nearest cent. Below $1.00, round to the nearest cent or to the nearest tenth of a cent, and use one method, not both. For analysis, keep full precision and round only when the number is shown, as the toilet roll example showed. Define your display rule once. In this article cents per ounce show one decimal in tables, so 6.250¢ per fl oz shows as 6.3¢.
Keep the raw quantities and derive the unit price, so every number can be audited. A column for total quantity in the base unit, then one division. The two averages differ by one line of SQL.
-- one row per pack point; flavors of a size are averaged first
SELECT brand, subsegment, total_oz,
AVG(regular_price) AS regular_price,
AVG(regular_price) / total_oz AS price_per_oz
FROM products
WHERE regular_price IS NOT NULL
GROUP BY brand, subsegment, total_oz;
-- ratio of sums (needs units sold) against a mean of ratios
SELECT SUM(units * price) / SUM(units * oz) AS dollars_over_ounces,
AVG(price / oz) AS mean_of_unit_prices
FROM sales;In a spreadsheet, the same rule is SUMPRODUCT(units, price) / SUMPRODUCT(units, ounces) for the first and AVERAGE of a unit-price column for the second. Put the unit in the column header, and put the price type (regular or shelf) in it too.
Shelfprice converts each Kroger group pack to one unit per category, rolls flavors up to brand, subsegment and total size, and keeps regular price and shelf price apart. It has shelf prices and sizes but no sales, so it reports medians and counts, not ratios of sums. The price tracking page describes the product.
Shelfprice runs these checks on Kroger shelf prices, one category at a time.
$99 a month per category, 10 days free.