4. One Configuration for Territory Matching and Round Robin State
Plauti is a Salesforce-native way to handle routing and assignment, built for exactly this kind of problem: it combines territory filtering and round robin distribution in a single configuration, and it works on Leads, Cases, Contacts, Opportunities, or any custom object.
How it works: Create a MatchGroup for each territory. Define match criteria using record fields, for example "Country equals United States AND State equals California." Add the reps who should receive records in that territory as Assignees. Plauti tracks rotation state automatically and supports round robin, weighted round robin, and load-balancing distribution.
Team changes go through Dynamic Assignees: you bulk-add users to a MatchGroup by role, division, country, or skill, so a new rep joining a territory doesn't mean rebuilding your rules.
Capacity Models control workload. A Capacity Model defines exactly what counts toward a rep's load, for example only Leads received today, or only open Cases in a specific status, so one rep doesn't get buried while another sits idle.
If every rep in a territory MatchGroup is unavailable or at capacity, Overflow Logic moves the record to the next suitable MatchGroup automatically. Nothing goes unassigned and nobody has to intervene by hand.
Beyond field-based matching, Distance Mode routes a lead to the nearest available rep by geographic location. That matters for field sales teams, where proximity counts as much as territory lines.
When a lead is assigned, the rep gets a real-time email or SMS notification. If they don't act inside the SLA window you set, the record is reassigned automatically, so no lead goes cold.
All of this runs inside your Salesforce environment. Nothing is sent to an external system.
When to use it: Best for a team that needs round robin to hold up over time with minimal admin upkeep — multiple territories, a headcount that changes, or a routing decision that should depend on clean, accurate lead data.
Watch out for: It requires a license and some setup time. In exchange, you're not building and maintaining custom formulas, Flows, or Apex.
5. An Apex Trigger With Custom Round Robin State
For a team with developers on staff and requirements native tools can't cover, an Apex trigger gives full control over both territory filtering and round robin logic.
How it works: Write an Apex trigger on Lead (before insert). Query a custom object that stores the last-assigned user ID per territory. Use SOQL to identify the correct territory, increment the rotation index, assign the lead, and write the new state back to the custom object.
When to use it: Best when native tools and apps can't meet your requirements — complex territory hierarchies, dynamic weighting from external data sources, or integration with a third-party scoring system.
Watch out for: Custom code needs ongoing maintenance, testing, and documentation. Governor limits on SOQL queries and DML statements can become a bottleneck at high lead volume or with inefficient logic. Exhaust Flow and app-based options first.