HADOOPT
TECHNOLOGIES
Schedule a Tech Consultation
Home
Services
Odoo ERP implementation Rollout, custom modules, migration and support. Web application development SaaS products, portals and internal platforms. Mobile application development Offline-first field apps and customer apps. AI development & automation LLM assistants, document processing, forecasting. Odoo version upgrades ↗ Move to a newer release, scoped and priced on its own site.
Products
OrgExp ↗ Budget, CAPEX and OPEX management.
Blog About Contact Schedule a Tech Consultation
Blog / Odoo 19: Complete Guide for Businesses
Odoo 19 7 min read

Setting up Odoo 19 CRM: leads, pipeline stages and lead scoring

Configuring Odoo 19 CRM: leads vs opportunities, pipeline stages, predictive lead scoring, lead assignment, activities, lost reasons and reports.

· ERP practice 22 Sep 2026

Odoo 19 CRM is a Community (LGPL) app that tracks every enquiry as a lead or an opportunity and moves it through a kanban pipeline of stages you define. Get three things right before go-live: whether you need a separate lead qualification step, what your stages actually mean, and which lost reasons you will insist on. Scoring, auto-assignment and dashboards are only as useful as those three decisions.

This is part 6 of our Odoo 19 guide. It assumes your company, users and access rights are already in place, as covered in part 4.

Leads vs opportunities in Odoo 19

Both are the same record underneath (the crm.lead model); a field called type is either Lead or Opportunity. Out of the box, Odoo skips leads entirely: every new enquiry lands straight in the pipeline as an opportunity.

Switching on Leads in the settings adds a qualification step. A new top-level Leads menu appears, incoming enquiries wait there, and someone converts each one into an opportunity. The conversion wizard lets you convert or merge with a duplicate, and link to an existing customer, create a new one or leave the contact unlinked.

CRM › Configuration › Settings
  CRM              Recurring Revenues
                   Leads            (qualification step)
                   Multi Teams      (one salesperson, several teams)
  Lead Generation  Predictive Lead Scoring
                   Rule-Based Assignment
                   Lead Enrichment · Lead Mining · Visits to Leads
The settings that shape the CRM, in the order we decide them.

Leads are also switched on or off per sales team (the Leads checkbox on the team), so a telesales team can qualify while a key-accounts team works straight from the pipeline. Each team can have its own email alias that creates leads from incoming mail.

Designing pipeline stages

A new database comes with four stages: New, Qualified, Proposition and Won. Only the Won stage has Is Won Stage? ticked, which sets the probability to 100%. There is deliberately no "Lost" stage. Losing an opportunity archives it and sets its probability to zero, so lost deals leave the board without cluttering a column.

Stages live under CRM › Configuration › Pipeline › Stages. Each one can be limited to specific sales teams and has a Requirements field, shown as a tooltip on the column, where you write the exit criteria. Use it. "Proposition" means nothing unless everyone agrees it means "a priced quotation has been sent".

The mistake we see most is stages that describe activities ("Call back", "Send brochure") instead of the buyer's commitment. Activities belong in the activity planner; stages should be milestones you could audit. Five to seven stages is usually plenty.

Predictive lead scoring and rule-based assignment

Predictive Lead Scoring computes an automated probability for each open lead from how similar leads were won or lost in the past. It always uses stage and sales team, plus the frequency fields you pick. The default set is phone quality, email quality, state, country, source, language and tags. You set a start date so that ancient, badly entered history does not skew it, and an Update Probabilities button recalculates on demand. A scheduled action also recomputes it regularly.

If a salesperson types their own probability, the automated value is kept separately and the two stop syncing until someone resets it. This works well once you have a few hundred closed opportunities with clean lost reasons. On a brand-new database it has little to learn from, so do not promise the sales director accurate percentages in month one.

Rule-Based Assignment distributes unassigned leads to team members. Each team and each member gets a domain (for example country = India, or a particular tag), and each member has an Average Leads Capacity (on 30 days), 30 by default, which caps how many leads they receive. Assignment can run manually or on a schedule, repeating every so many minutes, hours, days or weeks. Members can pause assignment during leave.

Lead Enrichment, Lead Mining and Visits to Leads also sit in this settings block. They rely on Odoo's paid IAP credits, so check the cost before you switch them on.

Activities, activity plans and lost reasons

Every opportunity carries scheduled activities (call, meeting, email, to-do) with due dates. Activity types and reusable Activity Plans are configured under CRM › Configuration › Activities. A plan schedules a whole sequence in one click, such as "demo booked": a prep task, the meeting and a follow-up call. My Activities under the Sales menu is the page salespeople should open every morning.

When a deal is marked lost, a wizard asks for a Lost Reason and free-text feedback. The defaults are Too expensive, We don't have people/skills, and Not enough stock. Replace them with your own list under Pipeline › Lost Reasons before go-live. Keep it short and mutually exclusive, so the lost-reason report actually means something. "Other" should be rare enough that someone asks about it.

  1. Agree stage definitions and write them into each stage's Requirements.
  2. Replace the default lost reasons with six to eight of your own.
  3. Set up sales teams, members and email aliases.
  4. Import open opportunities (the Import & Synchronize menu), including history if you want scoring later.
  5. Add activity plans for your two or three most common sequences.
  6. Only then consider scoring, assignment rules and enrichment.

CRM reporting: pipeline, forecast and activities

The Reporting menu has Forecast, Pipeline, Leads and Activities. Forecast groups open opportunities by expected closing month, using expected revenue and probability, and it is the report sales managers end up living in. Pipeline gives the graph and pivot analysis by stage, salesperson, team or source. Activities shows who is doing the follow-up work and who is not.

If you sell contracts, Recurring Revenues adds a recurring amount and plan (Monthly, Yearly and so on) to each opportunity, alongside the one-off expected revenue. Enterprise adds cohort and map views to the CRM analysis. Dates matter: Expected Closing drives the forecast, so make it a required habit rather than an optional field.

For Indian businesses moving off spreadsheets or a Tally-plus-Excel setup, import only live opportunities first. Bring in historical won and lost deals later, once your lost reasons and sources are mapped consistently.

Connecting CRM to quotations

With the Sales app installed, the Opportunity to Quotation bridge (sale_crm) is installed automatically and a New Quotation button appears on every opportunity. Quotations stay linked, so the opportunity shows how many quotations and orders it has and their untaxed total. Marking the deal Won is still a deliberate click, so make it part of your order-confirmation routine. That is where the next post picks up: quotations and sales orders in Odoo 19.

If you would like a second pair of eyes on your stage design or assignment rules before the team starts using them, get in touch.

Questions we get asked

What is the difference between a lead and an opportunity in Odoo 19?

In Odoo 19 a lead and an opportunity are the same CRM record with a different type. A lead is an unqualified enquiry waiting in the Leads menu; an opportunity sits in the pipeline with a stage, expected revenue and probability. Leads only exist if you enable the Leads setting; otherwise every new record starts as an opportunity.

Is Odoo CRM free in the Community edition?

Yes. The Odoo 19 CRM app is licensed LGPL-3 and ships with Community, including pipeline stages, leads, predictive lead scoring, rule-based assignment, activities, lost reasons and the forecast report. Enterprise adds extras such as cohort and map views. Lead enrichment and lead mining use Odoo's paid IAP credits in either edition.

How does predictive lead scoring work in Odoo 19?

Predictive lead scoring compares each open lead with won and lost leads since a start date you choose. It looks at stage, sales team and the fields you select, by default phone and email quality, state, country, source, language and tags, and computes an automated probability. It needs a reasonable history of closed deals before its numbers are reliable.

Why is there no Lost stage in the Odoo CRM pipeline?

Odoo treats lost as a status, not a stage. Marking an opportunity lost asks for a lost reason, sets its probability to zero and archives it, so it disappears from the kanban board. You can still find lost opportunities with the Lost filter and analyse them by reason in the pipeline reports.

← Previous AI in Odoo 19: agents, AI fields and AI automation explained Next → Quotations and sales orders in Odoo 19: templates, e-signature and invoicing policy
Keep reading
Odoo 19 The Odoo 19 website builder: pages, blocks, SEO, forms and leads 6 min read Odoo 19 Getting started with Odoo 19: what changed and where to begin 6 min read Odoo 19 Installing Odoo 19 from source, Docker or packages 7 min read