| Availability |
Odoo Online
Odoo.sh
On Premise
|
| Odoo Apps Dependencies |
•
Discuss (mail)
• Invoicing (account) |
| Lines of code | 277 |
| Technical Name |
crm_customer_churn_rfm |
| License | LGPL-3 |
| Website | https://www.twentic.com |
| Versions | 18.0 19.0 |
| Availability |
Odoo Online
Odoo.sh
On Premise
|
| Odoo Apps Dependencies |
•
Discuss (mail)
• Invoicing (account) |
| Lines of code | 277 |
| Technical Name |
crm_customer_churn_rfm |
| License | LGPL-3 |
| Website | https://www.twentic.com |
| Versions | 18.0 19.0 |
CRM Customer Churn RFM
Prevent customer churn with automatic RFM analysis â identify at-risk customers before they leave and trigger follow-up actions automatically.
1. Kanban View with Health Score Filters
The customer list gains dedicated health score filters (Healthy, At Risk, Critical) and a colour-coded kanban card showing the RFM Health Score (%) for each customer. A daily cron recomputes all scores automatically and creates a follow-up activity for the assigned salesperson when a score drops below 40 %.
How the RFM Health Score is Calculated
RFM Score (%) = 0.6 × Recency Score + 0.4 × Monetary Score
Requires at least 3 posted invoices to produce a meaningful score. Both components range from 0 to 100.
Recency Score (weight 60 %)
Measures how recently the customer last purchased, relative to their own average purchase frequency (F = average days between invoices).
- Days since last invoice ≤ F → 100
- Between F and 2×F → linear decay from 100 to 50
- Beyond 2×F → continues to decay toward 0
A customer who buys every 30 days and last bought 60 days ago scores 50 on recency.
Monetary Score (weight 40 %)
Compares the average of the last 2 invoices against the customer's overall historical average (amount_untaxed).
score = (last-2 avg / overall avg) × 100
Capped between 0 and 100. An alert flag is also logged if the last 2 orders fall ≥ 40 % below the historical average, signalling a sudden spending drop.
Health Levels
≥ 70 %
40 â 70 %
< 40 % → auto activity
Key Features
Recency & Monetary Analysis
Automatic At-Risk Activities
Daily Cron Recomputation
Please log in to comment on this module