Magicianly

Analytics & Testing

Average Time Between Orders: How to Calculate It and Use It to Time Your Emails

Average time between orders is the average number of days between one order and the next from the same customer. To calculate it, take every customer with at least two orders, count the days between each pair of consecutive orders, and divide the total by the number of gaps. Then look past the average: check how many repeat buyers come back within 30 days, and look at the gap between the first and second order on its own. Those numbers should set the timing of your cross-sell, replenishment and winback emails.

Most post-purchase and winback flows run on someone else's timing.

Day 14 because the template said so. Day 90 because everyone uses day 90.

Your customers don't shop on a template schedule. They shop on their own. Average time between orders is how you find out what that schedule actually is.

By Emiel Dingemans, Founder of Magicianly

Updated

This Exact Ecommerce Funnel Generated $300M for My Clients (Breakdown)

What Is Average Time Between Orders?

Average time between orders is the typical number of days a customer waits before placing their next order. You'll also see it called days between orders, time between purchases or purchase interval.

Klaviyo uses the same idea for the value it shows on customer profiles: "the average number of days between each of a customer's orders" (Klaviyo Help Center).

It only exists for customers who have ordered at least twice. Someone with one order doesn't have a gap yet.

How Do You Calculate Average Time Between Orders?

Add up the days between every pair of consecutive orders from the same customer, then divide by the number of gaps.

Average time between orders = total days between consecutive orders ÷ number of gaps

For one customer: say someone ordered on June 1, July 6 and August 20. That's two gaps, 35 days and 45 days, so their average time between orders is 40 days.

For your whole store, do the same across every customer with two or more orders:

  1. Export your orders with the customer's email or customer ID and the order date. Leave out canceled and fully refunded orders.
  2. Sort by customer, then by order date.
  3. For each customer, count the days between each order and the one before it. Their first order has no gap, so skip it.
  4. Average all the gaps. While you're there, also take the median and the share of gaps that are 30 days or shorter.
  5. Then do it again for the first-to-second order gap only.

Why Can the Average Be Misleading?

Because a long tail of slow reorders pulls the average later than when most customers actually come back. If you time your emails to the average alone, you'll often be late.

Here's what time between orders looked like at three brands we work with:

BrandAverage time between ordersRepeat buyers who reordered within 30 days
Brand A42.8 days57%
Brand B33 days72%
Brand C28.4 days75%

Look at Brand A. The average says about 43 days. But 57% of its repeat buyers came back within 30 days. An email timed to the average would land after most of them had already made their next move.

So read three numbers together:

  • The average, to get a feel for the cycle.
  • The median, which doesn't get dragged around by a few very late reorders.
  • The share of repeat buyers who reorder within a set window, like 30 days. This tells you when most of them actually come back.

Which Gap Matters Most for Email Timing?

The gap between the first and second order. That's the one your post-purchase, cross-sell and winback flows are trying to close, and it usually looks different from the gaps between later orders.

A customer on their fifth order has a habit. A first-time buyer doesn't yet. Blend them together and the number tells you less about the people you most need to bring back.

It sits right next to repeat purchase rate as one of the retention numbers we watch most closely.

Where Can You Find Your Average Time Between Orders?

You probably have it already. A few places to look:

  • Klaviyo predictive analytics. Klaviyo shows an Average Time Between Orders value in the predictive analytics section of each customer profile. It only appears once your account qualifies, which Klaviyo lists as at least 500 customers who have placed an order, an ecommerce integration or orders sent through the API, at least 180 days of order history with orders in the last 30 days, and some customers with three or more orders. It's a per-customer value, not one number for your store. We cover what else it shows in Klaviyo predictive analytics.
  • Klaviyo Marketing Analytics. If you pay for Klaviyo's Marketing Analytics or Advanced KDP, the Repeat purchase timing card shows the days between buying a specific product or category and the customer's next order, up to 90 days. That's useful for product-level timing.
  • Your analytics tool. We use Hiro for this, but any analytics tool that reports time between orders will do.
  • A spreadsheet. An order export and the five steps above get you a usable answer.

How Should You Use Time Between Orders in Your Flows?

Use it to set the delays in four places: cross-sell, replenishment, winback and the gaps between your flows.

Cross-Sell

Send the cross-sell once customers have had time to use the product and love it, and before most of them would reorder anyway. In most of our accounts, people rebuy somewhere in the first 20 to 40 days. For some brands it's 50 to 60 days.

A lot of brands hold back because 20 to 40 days feels too soon after the first order. The data usually says it isn't. Our cross-sell flow guide covers what to recommend.

Replenishment

If people finish your product, time the reminder to when they actually run out, based on how fast customers really reorder that product. More in replenishment emails.

Winback

Don't fire your winback on a default 90-day timer. Trigger it around your average first-to-second order gap. If a replenishment reminder already covers that window, wait closer to twice the gap. So if customers usually rebuy around day 30, day 60 is when they're truly lapsed. Here's how to build a Klaviyo winback flow.

The Gaps Between Your Flows

Put every flow on one timeline. If your post-purchase flow is still running when the winback starts, the same customer gets "thanks for your order" and "it's been a while" in the same week. Flow filters and exclusions keep them apart.

Is There a Good Average Time Between Orders?

There's no universal number. It depends on what you sell, how long it lasts and how often people need it. A monthly supplement and a sofa will never share a benchmark.

The useful comparison is against your own history. Is the gap getting shorter as your post-purchase and cross-sell flows improve? Good sign. Is it stretching? Look at what changed.

Can You Shorten the Time Between Orders?

Often, yes. Not by sending more discounts, but by giving people a reason to come back sooner:

  • Post-purchase emails that help them get results with what they bought, so they feel the value.
  • A cross-sell for the product that goes with it, at the right moment.
  • Replenishment reminders before they run out.
  • A subscription option for consumables, which we see as the single biggest lever on lifetime value.

Then judge the result on repeat purchase rate and lifetime value by cohort, not on what a dashboard attributes to email. Here are the retention metrics we actually track, and how all of this fits into the full email marketing funnel.

So How Should You Use Average Time Between Orders?

Calculate it. Then look past it.

  • Find the average, the median and the share of repeat buyers who reorder within 30 days.
  • Pull the first-to-second order gap on its own.
  • Set your cross-sell, replenishment and winback delays from those numbers, not from a template.
  • Check them again every few months, because they move as your flows get better.

The right delay isn't in a template. It's in your order data.

Frequently Asked Questions

What is average time between orders?

It's the average number of days between one order and the next from the same customer. It only applies to customers who have ordered at least twice.

What is the formula for average time between orders?

Add up the days between every pair of consecutive orders from the same customer, then divide by the number of gaps. Do this across all customers with two or more orders to get one number for your store.

Should I use the average or the median time between orders?

Look at both, plus the share of repeat buyers who reorder within 30 days. A few very late reorders can pull the average later than when most customers actually come back.

Where can I find average time between orders in Klaviyo?

In the predictive analytics section of each customer profile, once your account meets Klaviyo's data requirements. It's a per-customer value, so for one store-wide number use your analytics tool or an order export.

How should time between orders affect my winback flow?

Trigger the winback around your average first-to-second order gap, or around twice that gap if a replenishment reminder already covers the first window. Avoid a default 90-day trigger.

Want Us to Build and Manage This for You?

Magicianly helps established ecommerce brands turn email, SMS and retention into a system that moves customers toward the next purchase.

Related Reading