Every August I add new products for Christmas. This year it was 34 of them, mostly engraved boards and a new bottle range. Each one arrived in Cin7 Core with an empty Minimum Before Reorder field and no sales history whatsoever.
Cin7 wants a number in that field. I have nothing to base one on.
Most operators handle this one of two ways. They leave the field blank, which means the SKU never flags for reorder and you find out you've run out when a customer emails asking where their order is. Or they type in a number that feels about right, usually anchored to whatever similar product they can half-remember. I've done both. Neither is a method.
New products are missing two different numbers
When you have no history for a SKU, you're missing the level and you're missing the shape.
Level is how many units move per week. Shape is how those units distribute across the twelve months of the year.
Level you can learn quickly. Three or four weeks of real sales gives you a usable run rate, and it keeps improving from there. Shape takes a full year, by definition, because you cannot observe a seasonal pattern until you've lived through one.
Most reorder math tries to learn shape from level anyway. It takes whatever sales history exists and averages it into a steady state. For an August product launch in a gift business, the system spends September and October learning that the SKU is flat, then walks into December with a reorder point sized for a flat product.
Our Christmas lines do roughly 58 percent of their annual units in November and December. A trailing eight-week average taken in late October sizes December at about a sixth of what it needs to be. The SKU stocks out in the first ten days of the peak, which is the only ten days that mattered.
Borrow the shape, own the level
So stop asking one data source for both numbers.
Pick a comparable SKU that already has two or more years of history. Same category, and bought by the same customer for the same reason. If the new product is an engraved bamboo cheese board, the comparable is your existing engraved bamboo serving tray, not your top-selling wedding favor.
Pull that comparable's monthly units for the last 24 months and express each month as a share of the annual total. That's your borrowed shape. For our Christmas gift lines it comes out roughly like this:
- January to August: 3% or less each
- September: 6%
- October: 12%
- November: 26%
- December: 32%
Now take your own run rate from the new SKU's first few weeks of trading. That's your level. It belongs to the new product.
Combine them:
Expected daily demand next month = current run rate × (borrowed index for next month ÷ borrowed index for this month)
The new cheese board has been live since early September and is selling 4 units a day. September's index is 6 percent, October's is 12. So expected October demand is 4 × (12 ÷ 6) = 8 units a day. My board supplier runs 18 calendar days door to door. With a 25-unit buffer, the reorder point I set in early October is (8 × 18) + 25 = 169 units.
The trailing average would have told me 4 units a day and a reorder point of 97.
By mid-November, when the index steps from 12 to 26, the same calculation says 17 units a day and a reorder point of 331. Nothing in a trailing average moves that number, because a trailing average is looking backwards at a month that hasn't happened yet in the seasonal sense.
Fade the borrowed shape out as your own arrives
The borrowed shape is a loan. Your comparable resembles the new product without being it, and the longer the new SKU trades the less you need a stand-in.
Weight it down on a simple schedule:
Weight on borrowed shape = (12 − months of own history) ÷ 12
Month one, you're running entirely on the borrowed pattern. At six months you're half and half, and by twelve the loan is repaid and the SKU's own history carries the whole calculation. Blend the two monthly indexes at those weights and you get a shape that improves every month without ever swinging wildly.
The launch spike is not your run rate
The first two weeks of any new product include a bump that has nothing to do with steady demand. You emailed your list and posted it, and the regulars who buy everything you release bought it.
We launched a personalized wooden coaster set last year that sold 140 units in its first ten days off a single newsletter, then settled at about 11 units a week. Annualize the launch and you order six months of stock. I know, because I did exactly that, and the remainder went out at 40 percent off the following June.
Drop the first 14 days from the run rate calculation, or tag that period as a promotion so it doesn't get read as baseline. Either works, as long as the spike doesn't end up inside the number you plan against for the next six months.
Widen the buffer while you're guessing
A reorder point built on three weeks of sales and somebody else's seasonal shape is a weaker number than one built on three years of the SKU's own data. Both are worth having, but I pad the thin one harder.
Scale the safety stock by how much history is actually underneath the calculation:
- Under 1 month of own history: safety stock × 2.0
- 1 to 6 months: × 1.5
- 6 to 12 months: × 1.2
- Over 12 months: × 1.0
That extra stock is the price of not knowing yet, and it's cheap next to stocking out of a new product in its first peak. A product that disappoints customers in week six of its life rarely gets a second run at their attention.
What I do now
I should declare the interest: Personalised Favours is Stocura's founding customer, and we run production purchasing on it every day. The method above is what I used to do by hand in a spreadsheet.
At activation each new product now gets a seasonality template picked from four shapes: Christmas, Father's Day, Mother's Day, or evergreen. That template is the borrowed shape, and it blends with the SKU's own accumulating history on a weighting that fades the template to zero by month twelve.
A nightly job also re-checks whether the real pattern still matches the template I picked. When it stops matching, the label corrects itself and the change is written to the audit log, so I can see what moved and when. SKUs too new to compute anything honor whatever manual reorder point I've set, and the reorder math carries a confidence tier on its face, so I know at a glance which numbers are well-supported.
It's the same four columns as above, run nightly across every SKU. I used to run them on a Sunday across the twenty I got around to.
Do this before your next launch
Filter your product list for SKUs created in the last six months and find the ones with a blank or invented reorder point. For each, pick the closest existing product with two or more years of trading behind it and pull its monthly share of annual units. Take the new SKU's run rate, throw out the first two weeks, multiply through to next month's index, add lead-time demand, then double the safety stock while the history is thin.
Put a re-check in the calendar for three months out, and do your seasonal lines before anything else.
New SKUs shouldn't wait a year to get a sensible reorder point
Stocura gives every new product a seasonal shape on day one, then fades it out as the SKU builds its own history. Free until September 1, 2026 during soft launch.
Start free trial