A brand can look healthy on shipments and be in trouble at shelf. Here is the weekly view that closes that gap, and the metric a category buyer is actually using.
A consumer brand can look healthy on shipments and be in trouble at shelf, and the gap between those two facts is where most unpleasant surprises live.
The metric that matters and the one everyone quotes
Total units shipped is the number brands report to themselves. It flatters anyone who has gained distribution, because more stores mean more units even if each store is selling less.
Units per store per week is what the buyer looks at. It is the number that decides whether an item is performing, and it is the one most emerging brands cannot produce on demand.
If you cannot state your rate of sale per store per week by item, you are going into a category review with less information than the person across the table.
How to build it
1. Decide the grain before touching any data
Item by retailer by week. Everything else is an aggregation of that. Getting this wrong at the start means rebuilding, because you cannot disaggregate data you already summed.
2. Land each source raw and untouched
Retailer point-of-sale exports, distributor depletion reports, your own shipment records, and syndicated data if you buy it. One tab or table per source, unmodified, so you can always trace a number back to what arrived.
3. Solve the item mapping problem first, because it is the whole project
Every retailer uses a different identifier for the same item, and your internal code matches none of them. Build one mapping table from your item code to each retailer identifier and treat it as a maintained asset. This is genuinely most of the work and it is why these dashboards do not exist.
4. Calculate rate of sale, not just totals
Units divided by stores selling, per week. Stores selling is the difficult denominator, because a store that stocked nothing that week is not the same as a store that does not carry the item, and conflating them understates you.
5. Flag the exceptions rather than displaying everything
Items below a rate-of-sale threshold, stores that sold zero for two consecutive weeks, and any item with sales falling while distribution rises. Those three flags are more useful than any chart on the page.
6. Refresh weekly and push a summary
Retail data moves weekly. A monthly view is too slow to act on a stock-out, which is a problem measured in days rather than months.
Tools and what they cost
| Option | What it costs | Honest trade-off |
|---|---|---|
| Retailer portals plus Sheets and Apps Script | Free with Google Workspace. | Where every brand should start. Handles the mapping table and weekly refresh. Portal exports change format without notice, so validate the shape on ingest. |
| Syndicated data (Circana, NielsenIQ, SPINS) | Substantial annual contracts. | Category and competitor context you genuinely cannot get elsewhere. Priced for established brands, and it does not remove the mapping work. |
| Retail analytics platforms | Monthly, scaling with retailers and items. | Pre-built retailer connectors, which is the expensive part solved. Verify the specific retailers you sell into are supported before committing. |
| Looker Studio over your own sheet | Free. | Good visual layer on data you already assembled. It is a viewer, so the weekly push still needs building. |
What it is actually worth
Three concrete uses, and none of them requires a borrowed statistic.
Catching stock-outs while they are still fixable. A store selling zero for two consecutive weeks is either out of stock or delisted, and both need action this week rather than next quarter.
Walking into a category review with your own numbers. A buyer will present their view of your performance. Arriving able to discuss rate of sale by store, and to explain the outliers, changes the nature of that conversation.
Knowing which items to defend and which to let go. Every brand carries items that consume attention and do not earn it. The data usually says so long before anyone acts.
For wider context on how poorly measured this part of the business tends to be: Nielsen analysis of 212 million promotional events across 5 million products in seven countries between 2012 and 2014 found 59 percent of trade promotions globally did not break even, and 72 percent in the United States. That is about promotional effectiveness rather than velocity reporting, it is over a decade old, and it establishes that decisions in this area are frequently made without adequate measurement.
How it breaks
Item mapping drifts. New items, retailer code changes, and pack changes all break the join silently. Validate that every item in the source data maps to something, and alert on unmapped rows rather than dropping them.
The denominator is wrong. Counting all stores rather than stores actually carrying the item understates rate of sale, sometimes dramatically. This is the most common error in home-built velocity reporting.
A portal export changes format. Validate the shape and fail loudly. A silent partial load produces a dashboard showing a collapse that did not happen.
It becomes a chart nobody reads. Push the three exception flags weekly. The dashboard is for investigating; the flags are what get acted on.
How to tell whether it worked
Days from a stock-out occurring to somebody acting on it, which is the operational measure. Then the share of items with a known rate of sale, target all of them, and items delisted without warning, which should reach zero because the data warned you.