Skip to content

How to Set Up CRM Lead Assignment Rules in Odoo 19

DeployMonkey Team · March 24, 2026 8 min read

Overview

Lead assignment in Odoo 19 automates the distribution of incoming leads to sales reps based on configurable rules. Instead of manually assigning every lead, you define territories, specializations, and capacity limits — then the assignment engine handles routing. This ensures even workload distribution and faster lead response times.

Prerequisites

  • Odoo 19 with CRM module installed
  • Sales teams configured with members
  • Sales Manager or Administrator access

Step 1: Enable Rule-Based Assignment

Navigate to CRM > Configuration > Settings. Under the CRM section, enable Rule-Based Assignment. This activates the assignment engine and a scheduled action. Click Save.

Step 2: Configure Assignment Frequency

After enabling rule-based assignment, configure how often the engine runs:

  • Manually — Trigger assignment on demand from the pipeline view
  • Repeatedly — Set an interval (every X minutes, hours, days, or weeks) for automatic assignment via the crm.lead.auto.assignment scheduled action

For high-volume lead generation, run assignment every 15-30 minutes. For lower volumes, hourly or daily is sufficient.

Step 3: Define Assignment Domains per Member

Go to CRM > Configuration > Sales Teams, select a team, and open the Members tab. For each member, click to edit and set:

Assignment Domain

This is a filter (domain expression) that defines which leads this member should receive. Common assignment criteria:

  • Geographic territory — Country, State, or City fields
  • Industry/Tags — Leads tagged with specific industries
  • Lead source — Website form, trade show, referral
  • Language — Match rep language skills to lead language
  • Revenue range — Route high-value leads to senior reps

Preferred Assignment Domain

A secondary filter for ideal matches. The engine first tries to match leads to members' preferred domains. If no preferred match exists, it falls back to the general assignment domain.

Step 4: Set Capacity Limits

For each team member, configure:

  • Maximum Leads (30 days) — The assignment_max field caps lead volume per member over a rolling 30-day window
  • The system computes a daily quota from this monthly maximum
  • Current assignment counts are tracked via lead_day_count and lead_month_count computed fields

When a member reaches their capacity, the engine skips them and assigns to the next available member.

Step 5: Handle Assignment Pauses

When a rep is on vacation or overloaded, toggle the Skip Assignment (assignment_optout) checkbox on their team member record. This temporarily removes them from the assignment pool without losing their configuration.

Step 6: Test Assignment Rules

Before relying on auto-assignment:

  1. Create several test leads with different attributes (countries, tags, sources)
  2. Run the assignment manually from the pipeline view using the assignment action button
  3. Verify each lead was assigned to the expected team member
  4. Check that capacity limits are respected

Step 7: Monitor and Adjust

After activating auto-assignment, monitor the results:

  • Check the CRM > Reporting > Pipeline Analysis report, grouped by Salesperson, to verify even distribution
  • Review unassigned leads — they indicate gaps in your domain rules where no member matches
  • Adjust capacity limits based on actual rep performance and lead response times

Common Assignment Patterns

PatternDomain Rule Example
Territory-basedCountry = United States AND State in [California, Oregon, Washington]
Product-basedTags contains "Enterprise" or Source = "Enterprise Demo Request"
Language-basedLanguage = Spanish
Round-robinNo domain filter — all members receive leads equally based on capacity

Tips

  • Start with broad assignment domains and narrow them as you learn your lead patterns
  • Use overlapping domains carefully — when multiple members match, Odoo assigns to the member with the most remaining capacity
  • Combine assignment rules with Predictive Lead Scoring to route high-probability leads to your best closers