Salesforce lead assignment with Flow: rules, territory, fallback

Choose between lead assignment rules and Flow in Salesforce, then route leads by territory with a fallback queue so nothing sits unowned.

In a lot of small Salesforce orgs, every web lead lands on whoever set up Web-to-Lead three years ago. That person then forwards leads by hand, or doesn’t. Salesforce gives you two ways to fix this: lead assignment rules, and Flow. This guide explains when each one is the right tool, then walks through a setup that routes by territory and drops anything unmatched into a queue that a real person watches.

What you need

  • An edition with lead assignment. Salesforce’s pricing page lists lead assignment and routing from Starter Suite up. Starter Suite is $25 per user per month and Pro Suite $100, billed annually, at the time of writing.
  • Enough flows. The pricing page lists Flow Builder in all editions, but with a cap of 5 flows per org on Free and Starter. If you’re on Starter and already use some, check how many are left.
  • System Administrator access, or an admin who can edit setup and flows.
  • A clean routing field on the lead, such as State/Province or Country. Turning on state and country picklists helps.
  • Sales Territories (Salesforce’s territory management) only if you want a formal territory model. The pricing page lists it from Core up. You don’t need it for the setup below.

Assignment rules or Flow: how to pick

Use lead assignment rules when your routing is a simple list of “if this, then that person or queue.” Rules are built into Salesforce, are easy for the next admin to read, and run automatically for Web-to-Lead and for imports when the option is ticked. Each rule entry has an order, criteria (or a formula that returns true), an assignee (user or queue), and an optional email template. If you leave the email template blank, Salesforce doesn’t send a notification. Salesforce evaluates entries in order and stops at the first match. Only one lead assignment rule can be active at a time, so all your entries live in that one rule.

Use Flow when you need logic rules can’t do: round robin within a region, skipping reps who are out, looking up an account owner first, or writing a note on the lead. Flow can also call your assignment rules, using the Apply Lead Assignment Rules action, so you can mix both.

My usual recommendation for teams under 20 reps: put territory logic in assignment rules (easy to maintain), and use a small Flow only for the extra bits, such as round robin inside a region or reassigning leads that were created without the assignment checkbox.

Step by step

1. Create the fallback queue first

From Setup, go to Queues and click New. Fill in:

  • Label: Lead Triage
  • Queue Name: auto-fills
  • Send Email to Members: tick it, so someone gets told
  • Available objects: Lead
  • Queue Members: your sales manager, or the office manager who cleans data

This queue is where every lead goes if nothing else matches.

2. Set the default lead owner

From Setup, search Lead Settings, click Edit, and set the default lead owner to the Lead Triage queue (or a person). Tick Notify Default Lead Owner. Salesforce sends unmatched leads to the default Web-to-Lead owner or the admin doing an import, so you want that to be a place someone checks.

3. Map your territories on paper

Keep it to what you really use:

Order Criteria Assign to
1 Country = Canada Queue: Canada Sales
2 State in WA, OR, CA, NV, AZ User: West rep
3 State in NY, NJ, PA, MA, CT User: East rep
4 Annual Revenue > 10,000,000 User: Senior AE
5 (formula: TRUE) Queue: Lead Triage

The last entry is the catch-all. Order matters. If the enterprise rule should win over geography, move it to the top.

4. Build the assignment rule

From Setup, enter Assignment Rules in Quick Find and select Lead Assignment Rules. Click New, name it “Lead routing 2026”, tick the box to make it active, and save. Open the rule and add one entry per row of your table, setting the order, criteria, assignee, and email template.

For the catch-all, choose “formula evaluates to true” and enter TRUE.

5. Make sure rules actually run

Assignment rules run for Web-to-Lead and for imports when you tick the option. For leads that reps create by hand, the page layout has an “Assign using active assignment rules” checkbox. In the lead page layout, open Layout Properties and look at the assignment checkbox options: Show on edit page and Select by default. Ticking Select by default means hand-entered leads run through your rules unless the rep unticks it.

Leads created by another flow, an integration, or the API are where things fall through. That’s what the next step fixes.

6. Add a Flow to catch leads that skip the rules

From Setup, go to Flows, click New Flow, and pick Record-Triggered Flow. Configure:

  • Object: Lead
  • Trigger: A record is created
  • Entry conditions: Owner ID equals the ID of your integration user or the default owner (whoever leads land on when rules don’t run)
  • Optimize for: Actions and Related Records

Add an asynchronous path (or a scheduled path set to 0 minutes after creation) and put the Apply Lead Assignment Rules action on it, passing the lead’s record ID.

This placement matters. Salesforce’s own help article says that when a lead is created from the UI with the assignment checkbox unticked, the action is effectively disabled on the Run Immediately path. Put it on the asynchronous or scheduled path and it works.

7. Optional: round robin inside a region

Neither assignment rules nor Flow has a built-in round robin step. Two common workarounds:

  • Counter on a custom object. Create a “Lead Rotation” record per region with a number field and a list of reps. In the flow, read the counter, use MOD(counter, number of reps) to pick the next rep, assign the lead, then add 1 to the counter. Simple, but two leads arriving in the same second can land on the same rep.
  • Assignment queue plus a picker. Send region leads to a queue with an assignment rule, and use a scheduled flow every hour that assigns queued leads to the rep with the fewest open leads.

For 2 or 3 reps and under 200 leads a month, the counter is fine.

8. Test with 6 leads

Create test leads that hit each rule entry, plus one with no state and one created through your integration user. Confirm each lands with the right owner and that the Triage queue members get the email. Delete the test leads.

Common mistakes

  • No catch-all entry. Unmatched leads go to the default owner, which is often an ex-employee.
  • Free-text states. “Calif.” won’t match “CA”. Turn on state and country picklists.
  • Running Apply Lead Assignment Rules on the Run Immediately path. It can silently do nothing. Use the async or scheduled path.
  • Two automations fighting. If a flow sets the owner and the assignment rule also runs, the last one wins. Pick one owner for each decision.
  • Nobody watching the queue. A queue with no members who check it is a slower inbox, not a fallback.

When it’s worth getting help

Rules plus a fallback queue are something an admin can set up in an afternoon. It’s worth getting help when you need round robin that respects time off, when leads come from several integrations, or when you’re deciding whether to move to Sales Territories. My Salesforce page explains how I approach these, and the B2B CRM cost calculator gives you a quick sense of the cost of slow lead response.

Sources

Founding-client pricing · 3 spots per industry

Show me the manual work. I'll show you the system.

20 minutes by phone or video. You show me the task that eats the most time. Within 24 hours you get a one-page written plan with a fixed price. Yours to keep either way.

Free · Phone or video · Written plan within 24 hrs