The short version: the replenishment architecture we documented for supplements (trigger at 70 to 80% of the consumption cycle, three emails, subscription bridge, hard suppression rules) ports to beauty and CPG intact, with one complication the supplement version does not have: usage-rate variance. A 60-capsule two-a-day bottle is a 30-day clock for everyone; a 30ml serum lasts one customer a month and another a quarter. The engagement prize is the same across all consumable categories: Ometria's data puts replenishment emails at 50 to 60% opens, 40 to 50% clicks, and 10 to 15% conversion, with Listrak measuring the highest click-to-open rate of any email type at 53.6%. And the stakes of missing the window are quantified: 62% of consumers have switched brands at least once because of a stockout, and 45% buy from a different retailer when they hit one. The customer's own empty jar is a personal stockout, and every one is a switching opportunity you either intercept or donate.
The starting clock: label math, honestly ranged
Klaviyo's consumables guidance (a 20-to-25-day delay on a 30-day supply product) anchors the method: estimate days of supply per SKU, trigger at roughly 70 to 80% of it. For beauty and CPG the estimate is a range, so build it per SKU from what you know:
- Beauty: usage per application times typical frequency. A daily moisturizer in a 50ml jar runs 6 to 10 weeks; a treatment used twice weekly runs a quarter. Start at the short end of the honest range: an early reminder to someone with product left reads as a useful heads-up, a late one reads as a missed train.
- CPG and food-bev: servings per package against the use-case property from the welcome flow: the daily-coffee customer and the weekend-coffee customer burn the same bag at triple-difference rates, which is exactly why the use-case question was worth a popup step. And the category's deadline is real: 45% of F&B repeat purchases happen inside 90 days, so a replenishment clock that overshoots is handing the reorder to the grocery store.
- Quantity-aware entry, everywhere: the two-bag order doubles the clock, the same most-common-bug rule as the supplement build.
The upgrade that matters most here: observed behavior beats label math faster
Because label math is fuzzier in these categories, the switch to per-customer observed reorder gaps pays off sooner: after the second purchase of the same SKU, the customer's own median gap is the clock, full stop. In Klaviyo terms: trigger the flow off the customer's predicted-next-order window where the data exists (Klaviyo's predictive analytics expected-next-order date does this natively once order history supports it), and fall back to the per-SKU label estimate for first-cycle customers. The flow that re-times itself per customer is the difference between service and spam in a category where usage varies threefold.
The build: the same three emails, category-tuned
Email 1: at 70 to 80% of the estimated cycle. The useful reminder
Running-low framing, one-click reorder to a prefilled cart, no discount, subscription option beside the one-time reorder in every send: all inherited from the supplement build. The category touch: beauty reminders land better framed on the routine (your routine's step two is running low) and CPG on the ritual (the Sunday pancakes are about to lose their syrup); the product is a means, the habit is the thing being protected.
Email 2: at estimated empty. The don't-break-the-ritual email
The streak framing, tuned by category: skincare consistency is a results argument (the skin-cycle logic extends naturally: stopping resets the four-week clock), CPG consistency is a household-logistics argument (out of coffee is a bad Monday, not a philosophical crisis; the copy should be as light as the stakes). Still no discount. This is also the send doing the anti-switching work: the customer standing at an empty jar with no reorder in motion is exactly the shopper the stockout research shows drifting to whoever is closest, and the one-click reorder is the interception.
Email 3: 7 to 10 days past empty. The recovery nudge
The small value-add incentive if any (free shipping, loyalty points, a sample of the cross-sell product), then exit to the behavioral flows and eventually winback. One addition for fuzzy-clock categories: this email carries the calibration question, one tap: too early, just right, or already reordered elsewhere? The answers re-time the customer's clock better than any model, and asking reads as attentive rather than lost.
Suppression and routing, inherited and extended
- Active subscribers never enter, per-product; the multi-product digest rule and the new-purchase clock reset both carry over from the supplement build unchanged.
- Multi-size SKUs get separate clocks: the 30ml and 100ml serum are different products to this flow. Collapse them and every trigger is wrong for someone.
- Routine-completion rides along, gently: the beauty reminder can carry one line for the paired step (the routine build's map), and the CPG reminder the pantry adjacency, but the reorder button stays the star; a replenishment email that becomes a catalog forfeits the service framing that earns its numbers.
What to measure
- The benchmark bands: 50 to 60% opens, 40 to 50% clicks, 10 to 15% conversion; materially below usually means the clock, not the copy, and the first suspect is quantity-blind or size-blind entry
- Timing accuracy: the calibration-tap distribution and the share of reorders that happen before the flow fires (your clock is late) versus long after (early, or the customer churned silently)
- Already-reordered-elsewhere taps specifically: the flow's direct read on the switching leak the stockout data warns about, and the single best argument for tightening the clock
- Subscription conversions from the flow, counted as wins equal to reorders, and for F&B the flow's coverage of the 90-day repeat window specifically
- Per-SKU clock drift: observed median gaps versus the label estimate, reviewed quarterly, which is the flow slowly replacing assumptions with data
Frequently asked questions
How do you time replenishment when usage varies by customer?
Start with per-SKU label math triggered at 70 to 80% of the estimated cycle, then switch each customer to their own observed reorder gap after their second purchase, using predicted-next-order dates where the account's data supports them.
Why does replenishment timing matter so much?
Because running out is a switching event: 62% of consumers have switched brands at least once over a stockout, and 45% buy from a different retailer when one happens. The reminder that lands before empty is switching-prevention wearing a service costume.
Does replenishment work for skincare?
Yes: skincare is consumable on 30-to-90-day cycles and the routine framing makes the reminder feel like service. The complication is estimate fuzziness, which the observed-behavior upgrade and the calibration question solve over time.
Should the reminder include a discount?
Not the first two sends; they convert on usefulness at full margin per the category-wide rule. The final past-empty nudge can carry a small value-add as the cheaper alternative to winback discounts later.
What about multi-size products?
Separate clocks per size, always. A shared clock for a 30ml and 100ml SKU guarantees wrong timing for one of them, and wrong timing is the one unforgivable error in a flow whose whole value is timing.