Andrew Lauchner

The Second-Order Counter

How many of your customers ever bought twice?

Export your orders from Shopify and drop the file here. You get the count almost nobody runs: your one-and-done rate, the days between a customer’s first order and their second, and a cohort table that says whether it is getting better or worse. It all happens in your browser. The file never leaves your machine, nothing is uploaded, and there is no email gate.

Your order export

Where it comes from. In Shopify admin, open Orders, click Export, choose All orders and CSV for Excel, Numbers, or other spreadsheet programs. Shopify emails you the file for larger stores. Any date range works; a full history gives the cohort table something to say. The export from any other platform works too if it has an order date and a customer email column.

Drop the CSV here.

or

No file to hand?

An invented candle brand, about 1,100 orders over two years, made up on this page. It shows the shape of the count, never a benchmark.

The one-and-done rate only counts customers whose first order is at least this old, so a customer from last week isn’t called lost. 180 days is a fair default for most consumer brands.

Shopify’s export identifies people by email. If your file has a Customer ID column, that is stricter.

No file handy? Paste the CSV text instead

Nothing is stored. Reloading the page forgets the file.

Your count

Paid orders only. Cancelled, voided and pending orders are left out, refunds are netted out where the export has them, and orders with no customer email are counted separately.

Drop in the export, or try the sample. The math is at the bottom of the page, so you can check my work.

The file is read by your browser and stays there. Nothing is uploaded, no script phones home, and there is no version of this page where the count costs an email address. If you want to check, open your browser’s network tab while it runs: you will see nothing leave. Close the tab and the file is gone.

What to do with it

Three things the count tells you to go and look at

The numbers above are a diagnosis, not a plan. These are the three places I would take them next, in this order.

The cluster is your calendar

Most repeat customers come back inside a window that is specific to your product, and it is almost never the window your flows assume. If the cluster sits at forty days and your first follow-up fires at day seven, you are talking to people who were never going to be ready. Move the second-order flow to the cluster, and put the reminder before it, not after.

A falling column is the real trend

Revenue can rise while the cohort table falls, because acquisition is filling the top faster than retention is leaking the bottom. If “back in 90” is lower for this year’s cohorts than for last year’s at the same age, the second order is getting harder to earn, and no campaign calendar fixes that. Something about the first order changed: the offer, the product mix, or who the ads are finding.

The step from two to three is what the second order is worth

If most customers who reach a second order go on to a third, the second order is the gate and everything after it is cheap. That is the case for spending on it. If they don’t, you have a two-and-done problem behind the one-and-done problem, and the answer is usually the product or the catalog, not the email. Either way, put the rate next to your leak number and you have the size of the prize and the odds of collecting it.

The math, so you can poke at it

A paid orderAn order with a date, no cancellation date, and a financial status that is not voided, pending, authorized or expired. Refunded and partially refunded orders count as orders; the refund is subtracted from revenue when the export has a refund column.
A customerOne email address, lowercased, or one Customer ID if you chose that. Orders with neither are counted and set aside, not guessed at.
One-and-done rateAmong customers whose first order is at least the window old (measured from the newest order in the file), the share with no second order inside the window.
Days to the second orderThe exact time between a customer’s first and second paid order, in days. The median is the middle customer; the quartiles are the 25th and 75th.
Second order to thirdCustomers with three or more orders, divided by customers with two or more.
Revenue from repeat ordersNet revenue from every order after each customer’s first, divided by net revenue from all orders. Net means the order total minus its refunded amount.
Average net orderNet revenue from all paid orders, divided by the number of paid orders.
Revenue sitting in one-and-done customersCustomers old enough to have come back who never did, times the average net order. One order each, not a lifetime.
Worth of +5 points of repeat rateFive percent of the customers old enough to count, times the average net order. It assumes one additional order from each of those people.
The cohort tableCustomers grouped by the calendar month of their first order. A window column is only shown once the whole month has had that many days, so it is never right-censored.

There is no benchmark on this page, no industry average, and nothing of mine in the arithmetic. If you think a definition is wrong, the code is in the page and you can read it. The one thing this cannot tell you is why. That is what the cohort tables in the book are for, and what the Sprint does on your account.

Built by Andrew Lauchner, a growth and retention operator for consumer brands and the author of sixteen free books on the method. If your one-and-done rate is the problem it usually is, the Second-Purchase Sprint is ninety days on your own account, measured against a holdout.