
MiaDonna gives customers $1 in store credit for every $20 spent, then makes that balance visible in the cart and at checkout. To identify at-risk customers, use the signals already in front of you before a customer disappears from your reporting.
The useful question is whether a customer is behaving differently from their usual rhythm, product category, and comparable customers.
Short answer: Identify at-risk customers by comparing their latest purchase and engagement with their normal buying pattern. Start with Shopify RFM and cohort data, then add loyalty activity, unused balances, and email engagement. Treat one weak signal as a reason to investigate, not proof that a customer will churn. A Shopify loyalty program adds useful behavioral context to purchase history.
How to identify at-risk customers in Shopify
| Customer state | Typical evidence | Recommended response | Common false positive |
|---|---|---|---|
| Early risk | Purchase gap is growing and engagement is weaker | Investigate and test a relevant message | Seasonal buying pattern |
| Dormant | Customer has passed a reasonable reactivation window | Run a focused reactivation campaign | High-consideration purchase cycle |
| Lost | Repeated inactivity after relevant attempts | Suppress or reduce message frequency | Unresolved service issue |
At risk is a change in behavior, not a fixed number of days
An at-risk customer is someone whose recent purchasing or engagement behavior has weakened against their own history or customers with a similar buying pattern.
A customer who buys replenishable products every month deserves attention when that pattern breaks. A jewelry customer may make one or two purchases a year. The same gap means very different things.
Separate early warning, dormant, and lost customers
Early-risk customers have only begun to shift. Dormant customers have gone beyond a reasonable purchase window. Lost customers have remained inactive after relevant attempts to bring them back.
Do not mix these groups in one win-back campaign. A customer who is slightly late needs a useful reminder. A customer who has ignored several messages may need less messaging, not more.
Step 1: Establish your normal purchase window before scoring risk
Use Shopify customer reports and cohort analysis
Start with Shopify customer reports. They include RFM groups, predicted spend tiers, order counts, average order totals, and cohort analysis.
RFM gives each customer a score for recency, frequency, and monetary value, each on a scale from 1 to 5. Use it for prioritization, not as an explanation of why someone has slowed down.
Cohort analysis shows whether customers who first bought in one period return at a weaker rate than earlier cohorts. If a whole cohort is soft, the issue may be product, acquisition quality, inventory, or post-purchase messaging.
Calculate a practical reorder window
For customers with at least two orders, look at the gap between orders. Use a median where possible, or exclude obvious outliers such as a stockout period.
A practical starting hypothesis is to flag a customer when their latest gap reaches 1.5 times their usual interval. Validate that threshold against your own false positives and purchase cadence before using it in a live campaign.
A consumables business may use a shorter window. A brand with replenishment cycles, subscriptions, or repeat wellness purchases should set timing around how customers consume the product. That is why a health and wellness loyalty program needs different timing from a high-consideration category.
Compare cohorts, products, and acquisition periods
Do not apply one store-wide purchase gap to everyone. Compare customers who bought similar products, entered through similar acquisition periods, or have similar order counts.
A second-order customer may need a post-purchase path designed to increase repeat revenue after the first purchase. An established customer has a longer history you can use.
Step 2: Combine four churn signals into a simple customer health view

| Signal | What to measure | What it may mean | What to check next |
|---|---|---|---|
| Purchase gap | Time since last order versus usual gap | Reorder rhythm is weakening | Product cycle, returns, stock availability |
| Loyalty activity | Recent earning or redemption activity | Lower engagement with the program | Reward visibility and activity history |
| Unused balance | Aging balance or unused claimed reward | Friction, weak reward fit, or low attention | Reward thresholds and redemption path |
| Email engagement | Clicks and flow activity | Message fatigue or lower interest | Frequency, content, and channel preference |
Signal 1: lengthening gaps between orders
Purchase recency is the strongest place to begin. Compare days since the last order with the customer’s normal interval and similar customers.
Frequency adds context. Someone who bought four times last year and once this year is behaving differently from a customer who made one purchase and has not yet had a reason to return.
Signal 2: falling engagement
Loyalty activity can show whether customers still interact with your brand between orders. Mage defines active members as customers who earned points or redeemed a reward.
Look for customers who previously completed earning actions, redeemed regularly, or progressed through tiers, then became inactive.
Signal 3: unredeemed balances
An unused balance is diagnostic, not proof of churn. The customer may not know what it is worth, may be below a useful threshold, or may have claimed a reward they never used.
Mage Analytics separates rewards claimed into Used and Unused categories. A points balance without a claimed reward may need clearer education. An unused issued reward may point to checkout friction or a poor-fit offer.
Signal 4: email disengagement
Use email clicks, flow activity, and recent campaign exposure as supporting evidence. Opens are less dependable because privacy settings can distort them.
Keep the interpretation simple:
- One weak signal means monitor.
- Two independent signals mean test a relevant re-engagement action.
- Three or more signals mean prioritize the customer or segment.
“I looked into so many different integrations for loyalty and referrals for our Shopify Store, but no one impressed me more than Mage on human connection, customer service, and value.”


Read the Reelie case study →
Step 3: Build an at-risk customer segment without a data team
Start with Shopify's built-in RFM groups
Shopify provides RFM filters including At risk, Needs attention, Almost lost, Dormant, and Previously loyal. Start there rather than rebuilding RFM logic in a spreadsheet.
These labels are a useful shortlist, not a forecast of intent.
Create a purchase-gap segment
Create a segment for customers with at least two orders whose latest order falls outside their normal purchase window. Keeping first-time buyers out avoids blending onboarding problems with established-customer risk.
Where Shopify fields allow it, exclude customers with a recent purchase, recent refund, open support issue, or active marketing suppression.
Shopify customer segments are dynamic, rule-based lists, so customers enter and leave as they meet or stop meeting your criteria. Record the rule date and logic in the segment name.
Layer in value and loyalty context
Historical spend, predicted spend tier, order count, and VIP tier can determine whether a customer receives a personal intervention or an automated flow.
For Mage merchants, the Klaviyo loyalty integration can sync points balance, lifetime points, redeemed points, VIP tier, and enrollment date to customer profiles.
Use those properties to find high-value customers with a growing purchase gap and an unused balance. First check whether they can see the value, understand the available rewards, and have a relevant reason to return.
Step 4: Prioritize customers by urgency, value, and recovery potential
| Risk level | Customer value | Action | Do not do this |
|---|---|---|---|
| Early risk | High | Personalized reminder, VIP recognition, relevant reward | Send a broad discount immediately |
| Severe risk | High | Diagnose returns, service issues, inventory, and message volume | Keep increasing campaign frequency |
| Early risk | Lower | Automated replenishment or loyalty nudge | Spend manual outreach time |
| Unclear context | Any | Suppress and investigate | Assume churn |
High-value customers with emerging risk
Use product recommendations based on a previous order, show VIP progress, or make an existing reward easier to understand. Their relationship with the brand justifies a more relevant message.
Customers with severe disengagement
Check for returns, unresolved support problems, stock availability, and recent campaign exposure before sending another offer.
Mage’s member CLV and purchase frequency use a rolling 12-month window, which can help compare behavior over a consistent period.
Lower-value customers with recovery potential
A customer who buys a replenishable item on a predictable cycle can be a good fit for an automated reminder. Keep the cost of intervention proportionate to likely margin.
Step 5: Match the intervention to the churn signal
| Signal pattern | First intervention | Escalation option | Success metric |
|---|---|---|---|
| Lengthening purchase gap | Replenishment or product-use reminder | Relevant controlled offer | Next purchase rate |
| Declining loyalty activity | Show reward progress or VIP benefits | Invite a relevant earning action | Activity and redemption |
| Unused points or credit | Explain value and available rewards | Flexible redemption or expiry reminder | Reward use |
| Email disengagement | Test content, frequency, or channel | Reduce frequency or change flow | Purchases and unsubscribes |
For a lengthening purchase gap
Send a reminder tied to the customer’s last product and expected use cycle. Product education, replenishment prompts, and complementary products usually make more sense than a generic “we miss you” message.
For declining loyalty engagement
Show progress toward a reward, explain tier benefits, or invite the customer to complete a relevant earning action. Tell them what they have, what they can do next, and why it is useful.
For unredeemed points or store credit
Make the balance visible and explain available rewards. Check whether the redemption threshold is realistic and whether the reward fits what customers buy.
Points expiry is off by default. If you enable it, match the expiry window to normal buying behavior and give customers a fair warning. Mage can send expiry reminders through Mage email or connected platforms, as explained in its points expiry guidance.
For email disengagement
Test a different subject line, content angle, channel, or sending frequency before increasing discounts. Loyalty events such as Reward Redeemed, VIP Tier Changed, Points Awarded, and Points Expiry Soon can make flows more relevant than another generic campaign.
Use loyalty email templates as a starting point, then tailor the message to the actual risk signal.
Step 6: Test, measure, and improve your at-risk segments
Choose a holdout group
Keep a small holdout group that receives normal marketing but not your new intervention. Without one, you cannot separate campaign impact from customers who would have returned anyway.
Track reactivation rather than clicks alone
Measure next purchase rate, revenue per recipient, margin after rewards, time to next purchase, reward redemption, and unsubscribe rate. Clicks may show interest, but a reactivation program exists to produce profitable repeat behavior.
Mage Analytics can help compare returning customer rate, member purchase frequency, points earned, points redeemed, and claimed-versus-used rewards.
Review false positives and refresh thresholds
Review the segment monthly for seasonal shoppers, gift buyers, customers waiting for a product launch, and people with naturally long purchase cycles. Change one rule at a time.
Mage’s Retention Revenue counts orders placed within seven days of a customer clicking a loyalty email. Use it as one input when reviewing loyalty re-engagement flows, alongside margin and customer movement back into active segments.
The simplest at-risk customer segment to launch this week
Segment recipe
Start with customers who have at least two orders, have exceeded their normal purchase gap, have no recent refund or unresolved service issue, and show either lower engagement or an unused loyalty balance.
Message sequence
Message one should remind the customer about a relevant product, use case, or replenishment need. Do not lead with a discount.
Message two can show their points balance, available reward, VIP progress, or a useful way to earn. Message three should offer a controlled incentive only to customers who remain at risk and are worth recovering.
For customers who have already gone quiet beyond a reasonable reactivation period, use a separate process to reactivate lapsed loyalty members.
What to review after 30 days
Review conversion, margin, redemption, unsubscribes, and the share of customers who return to an active state. Keep the version that creates profitable repeat orders, not simply the version that produces the most clicks.
FAQ
What is an at-risk customer?
An at-risk customer is a customer whose purchase or engagement behavior has weakened compared with their usual pattern or a comparable customer group. They have not necessarily churned, but a growing purchase gap, lower loyalty activity, or declining message engagement may justify investigation and a relevant re-engagement action.
How do you identify at-risk customers in Shopify?
You identify at-risk customers in Shopify by reviewing customer reports, cohort analysis, RFM groups, order history, and dynamic segments. Shopify includes labels such as At risk, Needs attention, Almost lost, and Dormant, which provide a useful starting point before you add purchase cadence, customer value, and loyalty context.
What is an at-risk customer segment?
An at-risk customer segment is a dynamic group of customers who meet selected warning conditions, such as a purchase gap beyond their usual interval plus weaker engagement. The segment should exclude customers with recent orders, refunds, service problems, or other context that makes a churn message inappropriate.
How does RFM segmentation help predict churn?
RFM segmentation helps predict churn by organizing customers around recency, frequency, and monetary value. It helps identify who has bought recently, who buys often, and who contributes more value, but it is a prioritization framework rather than a guaranteed prediction of customer intent or future purchasing.
Can unredeemed loyalty points indicate churn risk?
Unredeemed loyalty points can indicate churn risk when they appear alongside a longer purchase gap or falling engagement. They can also indicate poor reward visibility, difficult redemption thresholds, or a customer who has not reached a useful reward, so investigate the program experience before offering more value.
How do you re-engage at-risk customers without over-discounting?
You re-engage at-risk customers without over-discounting by matching the message to the signal behind the risk. Use replenishment reminders, product education, VIP recognition, visible reward progress, and relevant earning actions first, then measure purchase rate and margin against a holdout group before expanding incentives.
Start with one transparent segment, one relevant message sequence, and one holdout group. Once you can see which customers return profitably and which signals produce false positives, you can tighten the rules without building a complicated scoring model.
Kris is the co-founder of Mage Loyalty. I spend most days talking to merchants, shipping features, and making sure our customers get real results. If you run a Shopify store or Agency we should chat!
















