At-Risk Customers & One-Click Win-Backs
See customers at risk of churning on your dashboard and send a one-click win-back email — template on Growth, AI-personalised on Scale.
Why This Feature Exists
Retaining an existing customer costs roughly 5× less than acquiring a new one. But bakers don't notice a customer has stopped ordering until weeks later. This feature surfaces customers predicted to churn before they're gone.
How Detection Works
BakeOnyx's Customer Insights (Spec 095) computes a churn risk score for every customer by analysing their order history:
- Days since their last order, compared to their normal order frequency
- A customer who usually orders every 2 weeks but hasn't ordered in 6 weeks is flagged
- A customer who's always been occasional isn't flagged for the same 6-week gap
Customers flagged as segment = at_risk or churnRisk = high appear on this feature's surfaces.
Three Places You'll See Them
1. Dashboard Card
An amber-accented card on your dashboard with up to 5 at-risk customers. Each row shows:
- Customer name
- Days since their last order
- Total orders and lifetime spend
- Their favourite item (if we can detect a pattern)
- A "Send win-back" button
2. Weekly Digest Section
Your Monday digest includes a compact "N customers at risk of churning" section with the top 3. Click through to the dashboard to send win-backs.
3. Morning Briefing Badge
Bake Buddy's morning briefing shows an amber "N customers at risk" badge that links to your dashboard. You see it the moment you open the app in the morning.
The One-Click Win-Back
Click "Send win-back" and BakeOnyx sends an email to the customer. The content depends on your tier:
Growth Tier — Friendly Template
A simple template: "Hi {firstName}, it's been a while since your last order at {bakeryName}, and we just wanted to say we miss you. If there's anything we can make for you — a favourite, something new, a special occasion — just reply and let us know."
Short, warm, no hard sell. Works well for small bakeries where the personal relationship is the product.
Scale Tier — AI-Personalised
Claude (Haiku 4.5) generates a personalised message using the customer's order history — their favourite items, their usual order day, the length of time they've been a customer. The AI includes an optional call-to-action tuned to their pattern.
If the AI is unavailable or decides re-engagement isn't needed (the customer's activity is actually normal for them), we fall back to the Growth-tier template so you always get a send outcome.
The 7-Day Lockout
Once you've sent a win-back to a customer, we don't let you send another one to them for 7 days. This protects against:
- Accidentally double-clicking the Send button
- Mashing the button because it looked like nothing happened
- Having two browser tabs open and clicking on each
- Refreshing the dashboard and forgetting you already sent
- Clicking through from the weekly digest and sending again
If you try to send within the lockout window, you'll see an error: "Already sent a win-back to this customer within the last 7 days".
What Stops a Send (Besides Lockout)
BakeOnyx won't send a win-back if:
- Your bakery isn't on Growth or higher
- The master at-risk toggle is off in Settings → Growth Emails
- The customer has no email on file
- The customer is inactive (
status ≠ active) - The customer has opted out of emails (either growthEmailOptOut or the broader emailOptOut)
- A win-back was sent to this customer within the last 7 days
In every case, you'll see a clear error explaining which gate blocked the send.
Turning the Whole Feature Off
In Settings → Post-Order Growth Emails, the "Show at-risk customers + enable win-back emails" toggle silences:
- The dashboard card
- The digest section
- The morning briefing badge
- The Send button (server-side enforced — not just hidden)
Preview Before Using
The Preview button on the settings page sends a rendered sample to your owner email. On Scale tier we use a real at-risk customer for maximum realism; if none exist we show a clearly-marked sample. Subject prefixed [Preview].