Native Salesforce assignment rules route leads by criteria, but they don't handle round robin, availability, or overflow without extra Flow logic. This guide covers the native setup, where it falls short, and how to automate lead routing without custom code.
How do you assign leads to users in Salesforce?
Four steps, using standard Salesforce tools:
- Go to Setup > Lead Assignment Rules and create rule entries by criteria, assigning each to a user or a queue.
- Confirm Web-to-Lead submissions and imports evaluate the same rules, and check "Do Not Reassign Owner" where you need it.
- Build round robin yourself with a Record-Triggered Flow that uses a counter and modulo logic.
- Test with sample leads and monitor a "Leads by Owner" report for fairness.
If you also need availability-aware routing, overflow, and skills-based matching, Plauti adds all three without custom Flow work.
Before you start
- Salesforce admin permissions.
- Lead object access: fields, queues, and assignment rules.
- A sandbox for testing (optional, but recommended).
- Input from stakeholders on territories, skills, coverage, and out-of-office policy.
Assign leads with native Salesforce tools
Step 1: define who gets which leads
- Go to Setup and search for "Lead Assignment Rules."
- Click New, name the rule (for example, "US enterprise leads"), and set it active.
- Add rule entries. Priority matters: the first match wins.
- Example criteria: Country = US AND AnnualRevenue ≥ 1,000,000.
- Assign each entry to a user or a queue. Queues help when a team shares leads.
Incoming leads that match the criteria go to the chosen user or queue.
Step 2: handle Web-to-Lead and imports
- Web-to-Lead submissions always evaluate active Lead Assignment Rules.
- In each rule entry, set "Do Not Reassign Owner" where you need to stop overrides.
- For imports and API-created leads, route into queues first and reassign with a Flow afterward.
Leads from every entry point follow the same rules.
Step 3: build round robin yourself (optional)
- Add a custom number field, Round_Robin_Counter__c, on Lead.
- Build a Record-Triggered Flow on Lead Create that reads the current counter (from a custom setting or the Lead field), increments it, and assigns the owner based on counter modulo team size.
- Reset the counter once it exceeds team size.
This works, but it needs upkeep every time the team changes. Salesforce has no built-in round robin.
Step 4: test and monitor
- Create test leads that both match and miss your criteria.
- Confirm assignments in list views and activity history.
- Build a "Leads by Owner (Last 7 Days)" report to check distribution.
Run this before every rollout. It catches a misconfigured rule before it reaches production.
Where native lead assignment falls short
- No true round robin without a custom Flow to build and maintain.
- No availability-aware routing: out-of-office, working hours, and a busy calendar don't factor in.
- No built-in overflow to a backup team when the primary team is unavailable.
- Skills-based routing gets brittle fast as criteria multiply.
- Every territory or role change means rule rework.
- No easy way to see fairness or throughput at a glance.