Appearance
Repurchase Signals: find customers who are due to reorder
Repurchase Signals lists customers who are due to buy a product again. Use it to time a reorder reminder. Open it at Insights > Customers, then select the Repurchase Signals tab.
Problem and intended user
A retention marketer (the person who runs email and repeat-purchase campaigns) needs to know when to remind a customer about a product that customer has already bought. A media buyer (the person who runs your paid ads) can use the same list as an ad audience.
The problem arises with products that customers buy again and again, such as consumables. A reminder sent too early is noise. One sent too late can reach a customer who has already bought elsewhere. The cost is a missed repeat sale.
Current workflow
Most merchants work this out by hand. They export orders from the Shopify admin into a spreadsheet and group them by customer and product. They compare the usual gap between orders with each customer's last order date. Then they copy the list into an email tool or an ad platform such as Meta Ads Manager.
Prerequisites
- Data: your order history has synced to Nexus, your RFM segments are built, and the history is long enough for Nexus to learn how often each product is reordered.
- To sync an audience: a connected Meta Ads, Google Ads or Blueshift account.
How Nexus works
Nexus reads your order history and applies fixed rules. It compares the usual gap between repeat orders of a product with the days since a customer's last order of it. AI writes none of it. Nexus builds the signals ahead of time, so a new order can take time to show. On a live store, Updated under the table shows when Nexus last built them.
What a signal is
A signal is one customer plus one product that the customer bought before and is due to buy again. It follows the cadence of that product. It is a reorder reminder, not a cross-sell or a new-product suggestion.
Filter the list
Use the filter bar above the table. Every filter works with the status tiles.
- Search customers: type a name or an email.
- Products: opens Filter by product. Search for products, select one or more, then select Apply. Clear drops your selection before you apply. The X next to Products removes an applied filter.
- Last purchase: set a from date and a to date.
- Interval (d): set a minimum and a maximum for the expected interval, in days.
- Days since: set a minimum and a maximum for days since the last purchase.
- All, Approaching, Open, Overdue, Lost: the status buttons on the same row as Export to CSV.
Export to CSV
- Set the filters you want.
- Select Export to CSV.
Nexus exports the signals that match your filters. The button is disabled when no signal matches. The file has the columns Customer, Email, Product, Last purchase, Expected interval (days), Days since (days) and Status.
Build an audience
You can turn the filtered list into an audience for your ads. Nexus builds nothing until you name the audience and select Build audience in the dialog. The page button is disabled when no signal matches.
- Set the filters. For example, select Overdue and pick one product.
- Select Build audience.
- Read the count in the dialog. It counts matching signals. The audience holds the distinct customers among them.
- Enter an Audience name. The dialog button stays disabled until you do.
- Optional: enter a Description.
- Select Build audience.
Nexus saves the audience in your Audiences as a Customer Match audience, not yet synced. It sends nothing to Meta or Google. You sync it from Performance > Audiences, which needs a connected ad account. The audience is a fixed list of customers at the moment you build it. A customer with no email address is left out.
Exact output
The tab shows five status tiles, a filter bar and a table. Each table row is one signal.
Read the status tiles
Each tile counts the signals that match your filters. The tiles ignore the status filter, so selecting a status does not change their counts.
| Tile | Meaning |
|---|---|
| Total Signals | Products that customers bought before and are due to reorder, across every status. |
| Approaching | 70 to 95 percent of the expected interval has passed. The reorder window is about to open. |
| Open Windows | 95 to 120 percent has passed. The customer is inside the expected reorder window. |
| Overdue | 120 to 300 percent has passed. The customer is past the expected reorder date with no order. |
| Lost | 300 percent or more has passed. The customer has effectively churned on this product. |
Select a tile to filter the table by that status. Select Total Signals to clear it.
Understand the table
| Column | What it shows |
|---|---|
| Customer | The customer name and email. |
| Product | The product the customer is due to reorder. |
| Last Purchase | This customer's latest order date for this product. |
| Expected Interval | The usual number of days between orders of this product. |
| Days Since | Days since this customer last bought this product. |
| Status | Approaching, Open, Overdue or Lost. |
Expected Interval is the median of each repeat buyer's own average gap for the product. Nexus uses the product's typical gap. When the product has too few repeat buyers, it falls back to the customer's own average gap between orders.
The table starts with the signals that have the most days since the last purchase. Select a column header to sort by that column. It shows 50 signals per page. Under it, Nexus shows Showing 1–50 of N signals. On a live store, the footer also shows Updated with a relative time, so you see when Nexus last updated the signals. Use Previous and Next to move between pages.
The audience
After you build an audience, the dialog confirms how many customers it holds. Select Go to Audiences to open it, or Done to close.
What to do with it
| What you see | Decision or action | Owner |
|---|---|---|
| Approaching or Open Windows customers | Send a reorder reminder before their window closes. Select Export to CSV and use the file in your email tool, outside Nexus. | retention marketer |
| Overdue customers | Send a win-back message. | retention marketer |
| Lost customers | Treat them as churned on that product. Leave them out of reminders. | retention marketer |
| A filtered list worth showing in ads | Select Build audience. | retention marketer |
| An audience that is not yet synced | Open it in Performance > Audiences and select Sync to Meta or Sync to Google. | media buyer |
Expected value and measurement
The tab can help you time a reorder reminder to each customer's own buying rhythm.
To check the effect, write down the Overdue and Lost tile counts on Insights > Customers > Repurchase Signals, then compare them later. For an audience, read Customers in Performance > Audiences. Nexus does not calculate revenue or margin for an audience built here, so those columns show zero. The tab does not track whom you contacted, so use your email tool's reports and your Shopify orders.
Warning: a reminder is not the only thing that moves these counts. Other campaigns, sales and seasons run at the same time, so you cannot isolate the effect of one reminder.
Limitations and exceptions
- Estimates. Expected Interval is a typical gap, not a forecast. It can be wrong for a customer who orders at a different pace, or for a product with few repeat buyers.
- Purchases that do not count. A free gift line creates no signal. A customer whose last order of the product is long ago does not appear.
- Data not imported yet. If your data has not been imported, or Nexus is still building your segments, the Customers page shows Still preparing this view instead of the tab. Wait for the import to finish, or contact support.
- No signals. If the tab shows No repurchase signals yet, Nexus has no signals for your store yet. They appear after Nexus builds them from your order history.
- No match. If nothing matches your filters, the table shows No signals match. Widen a range or clear a filter.
- Export failed. If the export fails, Nexus shows Export failed. Try again.
- Audience too large. If too many customers match, Nexus builds nothing. The dialog shows this error: "This filter matches more than 100,000 customers. Narrow the filters (product, date, or status) before building an audience."
- No email addresses. If no matching customer has one, the dialog shows Your filters matched no customers — adjust and retry.
- Demo Mode. Demo Mode shows sample signals and no update time under the table. Build audience saves no audience, and the dialog can show "Audience created with 0 customers." That message is not real.
