Overview
Odoo 19 CRM includes built-in recurring revenue tracking for businesses with subscription or recurring billing models. Each opportunity can carry both one-time expected revenue and recurring revenue components, with automatic Monthly Recurring Revenue (MRR) calculations. This lets you forecast both immediate deal value and long-term recurring income from your pipeline.
Prerequisites
- Odoo 19 with CRM module installed
- Sales Manager or Administrator access
Step 1: Enable Recurring Revenue
Navigate to CRM > Configuration > Settings. Enable Recurring Revenues under the CRM section. This activates recurring revenue fields on opportunities and makes recurring plans available. Click Save.
Step 2: Configure Recurring Plans
Go to CRM > Configuration > Recurring Plans. Each plan defines a billing frequency. Create plans matching your billing cycles:
| Plan Name | Number of Months |
|---|---|
| Monthly | 1 |
| Quarterly | 3 |
| Semi-Annual | 6 |
| Annual | 12 |
Each plan has a Name, Number of Months, Active toggle, and Sequence for ordering. The number of months determines how Odoo normalizes the recurring amount to a monthly figure.
Step 3: Track Recurring Revenue on Opportunities
When editing an opportunity, you will now see additional revenue fields:
- Expected Revenue — One-time deal value (unchanged from standard CRM)
- Recurring Revenue — The recurring amount per billing period
- Recurring Plan — Select the billing frequency (Monthly, Quarterly, Annual, etc.)
Odoo automatically computes:
- Monthly Recurring Revenue (MRR) — The recurring revenue normalized to a monthly amount. For example, an Annual plan with $12,000 recurring revenue shows $1,000 MRR
- Prorated MRR — MRR multiplied by the opportunity's win probability
Step 4: Use MRR in Pipeline Views
Customize your pipeline Kanban view to display recurring revenue metrics:
- The Kanban column progress bars can show expected revenue and MRR subtotals
- Use the Pivot View to analyze MRR by stage, salesperson, or time period
- Create filtered views for opportunities with recurring revenue greater than 0 to focus on subscription deals
Step 5: Forecast Recurring Revenue
Combine recurring revenue with probability scoring for accurate forecasts:
- Weighted Pipeline — Filter by Prorated MRR to see probability-adjusted recurring revenue across stages
- Revenue by Month — Use Pivot or Graph views with date grouping to project future MRR growth
- Team Dashboards — Group by Sales Team to compare recurring revenue performance
Step 6: Integrate with Subscriptions
If you use the Odoo Subscriptions module (sale_subscription), CRM recurring revenue connects to actual subscription management:
- Won opportunities with recurring plans can be converted to subscription orders
- The Subscriptions module handles invoicing, renewals, and churn tracking
- CRM provides the top-of-funnel view while Subscriptions manages the ongoing revenue
Reporting Tips
- Use CRM > Reporting > Pipeline Analysis with measures set to "Recurring Revenue Monthly" for MRR reports
- Compare Expected Revenue vs. Recurring Revenue to understand your mix of one-time and recurring deals
- Track MRR growth month-over-month by adding date filters to pivot reports
Best Practices
- Always select a Recurring Plan when entering recurring revenue — without it, the MRR calculation defaults to zero
- Use consistent naming for recurring plans across the organization
- Train reps to enter both expected (one-time) and recurring revenue for accurate forecasting
- Review the MRR pipeline weekly to identify subscription deals at risk of stalling