Email and retention
Replenishment flows for consumable products
A replenishment flow predicts when a consumable runs out and lands the reorder prompt a few days before. The data model, the timing arithmetic and the message.
By CartKernel · Published
A replenishment flow is a timer that starts when a consumable is delivered and fires shortly before it runs out. It works for anything used up at a predictable rate and fails when the timer is set by guesswork instead of by the product. What follows is the data model that makes the timing honest, the arithmetic, the trigger logic, and the message, in the order you would build them.
Which products qualify
A product qualifies when you can state its days of supply per unit with a straight face. Coffee and tea, pet food and litter, supplements and protein powder, skincare and haircare, razors, contact lenses, water and air filters, printer ink, diapers, detergent and other household goods all pass. Candles and fragrance pass loosely. Apparel, gifts and durables do not, and putting them in a replenishment flow produces messages that make no sense to the recipient. Several industry hubs on this site cover categories where the flow is central: pets, health and wellness, beauty and skincare, food and beverage and household goods.
The data model: days of supply on every variant
Store one integer on each variant, days_of_supply, and derive it from the product rather than from a hunch.
- Supplements. Servings per container divided by servings per day, both from the label directions.
- Coffee. Bag weight divided by grams per cup, divided by cups per day. The cups-per-day figure is an assumption; state it and let the customer adjust it.
- Pet food. Bag weight divided by the daily feeding amount for the pet’s size, which you can ask for at checkout or in the first post-purchase message.
- Skincare. Volume divided by the amount per application, times applications per day. Manufacturers often know this in days already.
- Filters and cartridges. The replacement interval on the packaging.
Quantity multiplies the figure: three bags is three times the days. Where a customer has reordered before, their own interval between orders overrides the product default, because their usage is a fact and the label is an estimate. Subscribers are excluded altogether, since the subscription is already doing the job.
The timing arithmetic
Two dates decide everything.
- Run-out date equals the delivered date plus days of supply times quantity, or plus the customer’s personal interval where one exists.
- First prompt equals the run-out date minus the typical shipping days minus a small buffer, so the reorder arrives before the last dose.
Say a sixty-serving supplement taken once a day is delivered on the first of the month, and shipping usually takes three days. Run-out falls around day sixty. With a three-day buffer, the first prompt goes on day fifty-four, a second on day fifty-nine if no order has been placed, and a final one on day sixty-six for the customer who has already run out. The figures are illustrative; a store’s own shipping times and label directions replace them.
Use the delivered event from carrier tracking as the start of the clock. Fall back to the shipped date plus typical transit only when the carrier reports nothing.
Triggers and branches
Trigger. An order is fulfilled, or delivered, and at least one line item carries a days_of_supply value.
Delay. Computed per line from the arithmetic above. Where the email platform supports a delay drawn from a profile or event property, use it. Where it does not, bucket products into tiers such as thirty, forty-five, sixty and ninety days and run one flow per tier.
Orders with several consumables. One flow per order, keyed to the earliest run-out, listing every item with its own expected date. Three separate flows for one order is three separate annoyances.
Exits, checked before every send. The customer has reordered the item on any channel. The customer has subscribed since. The item is out of stock, in which case send the closest alternative or a back-in-stock notice instead. The customer bought a larger size in the meantime, which recomputes the clock rather than exiting.
Snooze. A “not yet” link in the second message that pushes the customer’s clock out by two weeks and, over time, corrects their personal interval. Snooze rate by product is also the signal that a days_of_supply value is wrong.
The message
The subject names the product and the fact that it is running low. The body is short: the product, the expected run-out, and three ways to act. A one-click reorder link that adds the exact variant and quantity to the cart. The option to subscribe, with the saving stated plainly if there is one. The option to size up, if a larger pack exists. No discount by default; the customer needs the product, and a discount on every replenishment prompt teaches them to wait for it.
A second message, if no order followed, adds the snooze link and a line about what happens when they run out, which for skincare and supplements is a routine interrupted and for pet food is an unhappy animal. For cycles under thirty days, an SMS at the first prompt, where consent exists, reaches people who do not open email daily; SMS marketing covers consent and pacing.
Replenishment as the road to subscription
Every replenishment message offers the subscription, so the flow is also the main on-ramp for it. Track how many subscriptions begin from a replenishment prompt, and then track subscription churn for that cohort against subscribers who signed up at first purchase. Customers who subscribe after two or three manual reorders usually know what they are committing to.
What to measure
- Reorder rate within the prompt window, compared with a holdout of eligible customers who received no prompt.
- The trend in days between orders for prompted customers, which should tighten toward the product’s true cycle.
- Share of reorders that come through the flow’s links.
- Subscription conversions from the flow.
- Snooze rate by product, reviewed monthly to correct
days_of_supply.
The flow’s contribution shows up over time as repeat purchase rate and lifetime value, and how do you increase repeat purchase rate places it among the other levers.
Two notes on compliance
For supplements and anything health-related, the message repeats the directions on the label and makes no claim beyond them; the flow is about timing, not benefits. And a replenishment prompt is a commercial message, not a transactional one, so consent under CASL in Canada and the CAN-SPAM requirements in the United States apply in full, along with Gmail’s authentication and unsubscribe requirements for bulk senders. The government and Gmail pages in the sources set out the specifics.
The flow takes a week to build once the days_of_supply values exist, and the values are the real work. Which email flows should every ecommerce store have places replenishment among the rest, and the email marketing service builds the data model and the flow together.