โ˜…free guideโ˜…

When Do Your Customers Reorder? And When to Send the Reminder

If you sell something people run out of (skincare, supplements, coffee, dog food), a lot of the customers who'd happily buy from you again just get busy, run out, and nothing reminds them. ๐Ÿซ 

A reorder reminder email catches them, and it all comes down to TIMING. Too early and it's annoying. Too late and they've already bought something else.

20%
of repeat customers are on a subscription, for most brands selling something people use upSource: Bold

That's only about 1 in 5! The rest come back whenever they run out. In this guide you'll work out your own timing from your own Shopify orders (there's a prompt that does the math for you!), then set up your reminder emails around it.

(Sell something that doesn't run out? This still works! Some customers just come back and reorder anyway, and this shows you how long they take to come back on average, so you know when to nudge them.)

How long your product lasts

Your reminder timing comes from comparing how long your product actually lasts with how often people actually reorder it. They're often different! The pack might say 30 days, and your customers might come back every 45.

Start with how long it lasts. Work it out per product (and per size), in days:

  • By days' worth: 60 capsules at 2 a day is 30 days.
  • By uses: a bottle with 200 pumps at 2 pumps a day is 100 days.

Jot it down for each of your main products. You'll need it for the prompt below.

How often people reorder

This one you can work out yourself! All you need is an export of your Shopify orders and an AI tool like Claude or ChatGPT.

Export your orders from Shopify

Where to clickShopify adminOrdersExportOrders by dateExport orders

Set the start and end dates to go back at least 12 months, so there's been time for people to come back, and under Export as select a CSV file. An export by date gets emailed to you (and to the store owner), so check your inbox for the file.

No need to clean it up first. The prompt tells the AI how to read the file exactly as Shopify sends it. (It does have your customers' details in it, so use an AI tool you're happy to share that with.)

Copy and paste this prompt in with the file

Fill in the parts in [square brackets] first.

I've uploaded a raw orders export from my Shopify store (CSV), exactly as Shopify sent it to me. I haven't cleaned it up or removed anything. I want to know how long my customers typically wait before they reorder each product.

The file has a lot of columns you won't need. Only work from these, spelled the way Shopify exports them: "Name", "Email", "Financial Status", "Created at", "Lineitem quantity", "Lineitem name", "Lineitem SKU", "Tags" and the canceled date. Ignore every other column, and never show me customer names, phone numbers or addresses in your answer.

How the file works:
- Each row is one line item, so an order with several products has several rows. The "Name" column is the order number (like #1001) and ties those rows together. It is not the customer's name.
- Some order-level columns are only filled in on the first row of an order. If "Email", "Created at", "Financial Status", "Tags" or the canceled date is blank on a row, fill it from the first row with the same "Name".
- Use "Email" as the customer (lowercase it and trim spaces first), "Created at" as the order date and "Lineitem name" as the product.
- "Lineitem name" is the product title, then " - ", then the variant (for example "Face Wash - 200ml"). A product title can have its own dash in it, so if you're unsure where the title ends, show me the list of unique "Lineitem name" values and ask me before you group them. Keep sizes separate, because a bigger size lasts longer.
- The canceled date column is called "Canceled at". In some files it's spelled "Cancelled at". Use whichever is there.

What to do:
1. Leave out canceled orders (any order with a canceled date), orders where "Financial Status" is "refunded" or "voided", and rows that still have no email after the fill.
2. [DELETE THIS STEP IF YOU DON'T SELL SUBSCRIPTIONS] Subscription renewal orders in my store carry this tag in the "Tags" column: [YOUR TAG]. Leave those orders out, so automatic renewals don't get counted as someone choosing to reorder.
3. For each customer and each product, find the date of their first order with that product in it and the date of their second order with that product in it. Treat two orders on the same day as one order.
4. Work out the number of days between those two dates.
5. Look at "Lineitem quantity" on the first order. If the customer bought more than one of that product, put them in a separate group, because two units last twice as long.
6. Give me a table with one row per product, for customers who bought one unit the first time: customers who bought it at least once, customers who bought it a second time, the percentage who came back, the median days between first and second order, and the 25th and 75th percentile of those days. Add the median days between second and third order if at least 20 customers got that far.
7. Sort the table by number of repeat customers, highest first. Mark any product with fewer than 30 repeat customers as "not enough data yet".
8. Then do it once for the whole store: days between a customer's first order and second order, whatever they bought.

[DELETE THIS PART IF YOUR PRODUCT DOESN'T RUN OUT] Here is how long each product is meant to last:
[PRODUCT NAME]: [for example 30 days' worth, or 200 pumps at 2 pumps a day]
[PRODUCT NAME]: [...]

Then tell me in plain English:
- The typical reorder gap in days for each product with enough data.
- Where the real reorder gap is very different from how long the product is meant to last (skip this one if I haven't told you how long anything lasts).
- Which products most customers reorder like clockwork, and which they don't.

Use the median, not the average, so a few very late reorders don't throw it off. Customers who only ordered recently haven't had time to come back yet, so tell me how that affects the percentages. Don't guess: if a column is missing or something looks wrong, stop and tell me what you found. Show me the first 10 rows of your working so I can check it.

How to read what comes back: the median is your typical reorder gap (half your repeat customers came back sooner, half later). The 25th and 75th percentile show the spread. If they're close together, people reorder like clockwork. If they're far apart, there's no single "right day" and a couple of reminders spaced out will do a better job than one.

Compare the two numbers

Put how long each product lasts next to what your orders said, for each of your main products. Your first reminder goes out a few days before the reorder gap.

Here's an EXAMPLE with made-up numbers, to show how to read it:

Product How long it lasts What the orders said (typical gap) What that tells you First reminder (example)
Daily supplement, 60 capsules 30 days 34 days People reorder right as they run out A few days before day 34
Face wash, 200 pumps 100 days 120 days It lasts longer than the label math (people use less, or skip days) A few days before day 120, well after day 100
Coffee, one bag 14 days 30 days Lots of people aren't buying every bag from you Test one around day 12 and one before day 30
Dog food, large bag 40 days 41 days Clockwork A few days before day 41

When the two numbers match, timing is easy. When they don't, trust what your customers actually DO over what the label says, and test from there.

Set up your reminder emails

This reminder is for everyone who's bought the product, and it stops the moment they reorder. It can be its own flow or part of your post-purchase flow.

  1. Order dayThe countdown starts
  2. A few days before your reorder gapReminder one goes out
  3. A little laterReminder two, for the people who run out slower
  4. The moment they reorderThe reminders stop

In Klaviyo:

Where to clickKlaviyoFlowsCreate FlowBrowse by goalEncourage repeat purchasesUse template
  1. Pick the template for Shopify (you can also search "replenishment").
  2. Check the trigger is the Placed Order metric.
  3. Add a trigger filter: Items contains and your product name. One product per flow, because each product has its own timing.
  4. Check the flow filter is there: Placed Order zero times since starting this flow. That's what stops the reminders once someone reorders.
  5. Set the time delay before the first email to your first reminder day.
  6. Add a second email a little later.
  7. Click Review and turn on, choose Live, and save.

Then repeat it for your next product with its own timing.

Here's a short email you can start from. Put your own brand voice on it before it goes anywhere!

Subject: Running low on your [Product]?

Hi [First name],

By our count, your [Product] should be getting close to the bottom about now.

Want the next one on its way before you run out?

[Button: Reorder my [Product]]

Still got plenty left? All good, we'll check back in soon.

[Your name] at [Brand]

After a month or two, look at which email the orders come from. If most come from the second one, your first reminder is going out too early. ๐Ÿ“ˆ

When to offer a subscription

Now for the customers who KEEP coming back.

If someone's ordered a second time, or especially a third time, that's when I give them a reason to jump onto a subscription. I do it in the post-purchase emails, with offers and incentives to make the switch.

Every person you can get onto a subscription matters.

Nearly 3x
as many orders from subscribers as from one-time shoppers, across 20,000 brands on RechargeSource: Recharge

How to set it up in Klaviyo: in your post-purchase flow, add a conditional split after the thank-you email: What someone has done > Placed Order > at least 2 > over all time. The YES path gets your subscription email. Everyone else carries on with the normal flow.

What the incentive could be: I like free gifts and discounts for this. A free gift with the first subscription order, a subscriber discount, free shipping on every subscription order or a subscriber-only extra can all do the job. Whatever you offer, run the numbers first so the subscription order is still profitable. ๐Ÿ’ธ

Make the subscription clear on your product page

The emails are only half of it. Make sure the subscription is SUPER clear on your product page as well, so someone on their third order can see the option without hunting for it.

Your next move

If you'd love help building this for YOUR brand, with tailored strategies and support along the way, that's what my Growth Lab is for. Jump on a call to learn more. โœจ