Cross-selling should be driven by observed purchase behavior.
If customers who buy one category consistently go on to buy another, there is a relationship worth using. If that relationship becomes stronger at the product level, and the second purchase happens within a predictable window, campaigns become much easier to define.
The problem is that most cross-selling stops much earlier. Brands rely on broad product associations, static recommendations, or merchandising logic that says two products belong together.
That may be useful to run more campaigns, but not ideal to make the most out of them.
The better approach is to understand three things: what customers buy next, which customers are showing the strongest signal, and when the next purchase tends to happen.
Start with category affinity
The first layer is category-level purchase behavior.
Take customers who bought from one category and look at the categories they purchase from next.
A footwear brand may find that customers who buy running shoes frequently move into running apparel. A home-appliance brand may find that buyers of one appliance category often move into accessories or an adjacent category.
This gives the marketer a broad cross-sell relationship:
Category A → Category B
It is more useful than choosing products based purely on merchandising judgment because the relationship is grounded in actual customer behavior.
Shopify recommends using purchase history, browsing behavior, customer segmentation, and the behavior of similar customers when building product recommendations.
Although category affinity gives you the first useful signal, it does not yet tell you which customers should receive the campaign.
Add current customer interest
While purchase history may describe what customers have done, current behavior helps show where their interest may be moving.
Assume customers who buy Category A frequently move into Category B. Within that group, some customers are now browsing Category B, viewing specific products, or engaging with content related to it.
That group presents a stronger opportunity than the full set of Category A buyers.
The relationship now has two signals behind it:
- Past purchase: Category A
- Current interest: Category B
This is where segmentation becomes useful for cross-selling. The purpose is not simply to create smaller audiences, it’s to separate customers with stronger interest from customers who only share the same purchase history.
Shopify’s segmentation guidance similarly treats purchase history, browsing behavior, engagement, category affinity, and lifecycle data as inputs that can be combined to create more useful customer groups.
Go to the product level only if your catalogue supports it
If the catalogue is relatively focused, the same analysis can be taken down to individual products.
You may find that customers who buy Product X frequently go on to buy Product Y and that gives the marketer a more precise cross-sell than a broad category relationship.
But this does not always make sense.
If the catalogue is very large or diverse, product-level relationships can become noisy very quickly. In that case, category or subcategory affinity may give you a more reliable signal and a much more manageable way to build campaigns.
Look at when customers usually make the next purchase
Knowing that Product X buyers often purchase Product Y is not enough.
The timing of that second purchase matters.
If the relationship usually appears within seven days, a campaign sent after 30 days misses the opportunity. If customers typically move into Product Y after six weeks, contacting them immediately may be premature.
The useful pattern is therefore:
Product X → Product Y → typical purchase window
For example:
Product X buyers tend to purchase Product Y between days 25 and 35.
That changes the cross-sell from a generic recommendation into a timed marketing opportunity.
Timing also helps separate real purchase patterns from simple product affinity. Two products may frequently be bought by the same customers over a year without there being a useful moment to actively cross-sell one after the other.
The sequence matters.
Use cohorts to check whether the pattern holds
Cross-sell analysis works better when customers are studied in comparable groups.
Take a cohort of customers who bought Product X during a defined period, then look at what happened afterwards:
- Which product did they buy next?
- What percentage of Product X buyers went on to buy Product Y?
- How long did it take them to buy Product Y?
- Does the same Product X → Product Y pattern appear in later customer cohorts?
- Does the next purchase change across different customer segments?
This gives the marketer a better basis for deciding whether a relationship is meaningful.
This also helps you avoid relying on broad averages. High-value customers, discount buyers, or customers with a different purchase history may not follow the same path.
The data you need can stay fairly simple:
| What to look at | What it tells you |
|---|---|
| What categories customers buy next | Which categories are worth cross-selling |
| What customers are browsing now | Who is showing interest in another category |
| What products customers buy next | Which specific product may be worth recommending |
| How long the next purchase takes | When to send the campaign |
| Whether the same pattern appears across different customer groups | Whether the campaign should change by segment |
You do not need every level of analysis for every campaign. If a clear category-level pattern already exists, that may be enough. Go more granular only when the data gives you a clearer decision.
Turn the pattern into a campaign
Once the relationship is clear, the campaign logic should be simple:
- Assume the data shows that customers who buy Product X frequently purchase Product Y around 30 days later.
- The audience becomes customers who bought Product X roughly 30 days ago and have not yet purchased Product Y.
- If some of those customers are also showing current interest in Product Y or its category, that signal can strengthen the audience further.
The marketer now has the core campaign decision:
- Who: Product X buyers entering the relevant window
- What: Product Y
- When: Around the observed second-purchase period
- Why: The pattern is supported by previous customer behavior
The data tells you who to target and what to recommend.
That is better than choosing Product Y first and then looking for an audience to send it to.
The operating problem is scale
None of this analysis is difficult in isolation.
A marketer can manually identify obvious category relationships. They can inspect orders and find products that tend to be purchased together, and also build segments around one relationship and schedule a campaign around it.
The limitation is maintaining this across the entire catalogue.
For every product or category, the team would need to keep analyzing new cohorts, track what customers purchase next, measure the timing, update the relevant segments, remove customers who have already converted, and act when each cohort reaches the right window.
This is exactly where a system becomes useful.
It can continuously analyze purchase cohorts, identify repeatable product relationships, monitor when customers enter the relevant window, and surface the campaign opportunity for the marketer.
The system does not need to invent the cross-sell, its job is to find the pattern consistently and make it usable.
Cross-selling should follow the customer
Most cross-selling starts with the catalogue: these products belong together, so they should be promoted together.
A data-driven approach starts somewhere else: with the sequence of decisions customers are already making.
- Which categories follow one another?
- Which products follow one another?
- Which customers are showing interest now?
- How long does the next purchase normally take?
Once those relationships are understood, the campaign becomes much easier to decide.
Good cross-selling is not about finding more products to recommend, it’s about understanding what customers are likely to need next and reaching them when that relationship becomes relevant.
Nexie is a retention marketing agent for e-commerce brands. It reads your customer data across engagement, recency, category interest and lifetime value together, surfaces the audiences worth campaigning to, and builds those campaigns for your team to review and approve, inside the guardrails and marketing policies you set. See how it works →

