Case Study: A Reactivation Agent for Existing Customers – Automated Upselling That Frees Up Your People
How an AI reactivation agent identifies dormant customers, prioritises upselling and cross-selling potential and prepares tailored outreach – more revenue from existing customers, no extra sales hours.
The most valuable revenue often already sits in the customer database. For a client with a large customer base, we built a reactivation agent that automatically identifies customers who have gone dormant, assesses their upselling and cross-selling potential and prepares tailored outreach. The team gains additional revenue from existing customers – without any extra sales hours.
The problem: dormant potential
Most companies know the situation: a long list of existing customers, but barely the capacity to look after them systematically. Anyone whose last purchase was months ago slips through the cracks – not out of disinterest, but because no one has the time to review and contact hundreds of accounts one by one.
The solution: an agent that prepares the groundwork
The reactivation agent takes on exactly this review – continuously and with clear priorities:
// Who is ready for which offer? The agent prepares, the human approves.
async function reactivate(customer: Customer) {
if (!isDormant(customer)) return; // dormant customers only
const signals = analyzeHistory(customer); // purchase cycles, products, behaviour
const offer = await matchUpsell(signals); // fitting up-/cross-sell
const draft = await draftMessage(customer, offer); // personal draft
return queueForApproval({ customer, offer, draft, priority: offer.score });
}
Based on purchase cycles and behaviour, the agent identifies who is ready, determines the right offer and drafts a personal message. All that reaches the sales team is a prioritised list with a finished draft – approval with a single click.
| Step | Who handles it | Result |
|---|---|---|
| Detect inactivity | Agent | filtered, relevant contacts |
| Assess potential | Agent | score for up-/cross-selling |
| Match the offer | Agent | fitting product for the customer profile |
| Write the draft | Agent | personal message draft |
| Approve & send | Human | final polish, relationship, the close |
The results
- Additional revenue from existing customers that had previously been left on the table – with no new acquisition budget.
- Sales now works only on warm, prioritised contacts instead of sifting through cold lists.
- Personal despite scale: every piece of outreach is based on real purchase history, not on a mass newsletter.
In brief
Reactivation is the cheapest growth source that most companies leave untapped. The agent makes it systematically usable – fully in line with growth through systems instead of manual work and in the same spirit as our automated lead generation for B2B.
Want to unlock the revenue potential in your existing customer base? Book an intro call.
Frequently asked questions
- What is a reactivation agent?
- A reactivation agent is an AI system that automatically identifies existing customers who have gone dormant, assesses their potential for up- and cross-selling and prepares tailored outreach. The final contact – or its approval – stays with a human.
- Why is upselling to existing customers worth more than acquiring new ones?
- Existing customers already know the product, trust the brand and are demonstrably cheaper to activate than new prospects. Even modest reactivation rates across a large customer base generate noticeable additional revenue – at a fraction of the acquisition cost.
- How does the agent identify the right timing?
- The agent analyses purchase and usage data: time since the last purchase, typical repurchase cycles, product combinations and behavioural signals. From this it infers who is ready for which offer and when the outreach makes sense.
- Does the outreach stay personal?
- Yes. The agent handles analysis, prioritisation and a draft message – approval and the personal finishing touch stay with the sales team. That way the preparation scales without the outreach feeling generic.