The complaint arrives as a feeling before it arrives as a report. One SDR has had a quiet month. Another keeps getting leads from companies his colleague already works. A third comes back from two weeks of leave and gets nine leads in a morning. Nobody changed the routing rules. The rotation is doing what it was configured to do, just not for the team, data and timing it actually meets.
Most lead routing rules examples online show the happy path: a form comes in, the next rep gets it. That case rarely breaks. The edges do: the rep who is away, the lead from a customer, the Gmail address, the 3 a.m. submission, the list import that eats a week of rotation in a minute. Here are 15 edge cases in five classes, with what should happen and how to prove it does.
Rebuilding inbound assignment and tired of patching round-robin? Forms Routing is the routing layer VANDFORT installs in engagements: inbound submissions scored, owned and assigned by rule, written into your CRM.
Those three numbers are why round-robin drifts. The Bridge Group's 2025 SDR Metrics Report, covering 351 B2B companies, put median SDR attrition at 40 percent for 2024, with a ramp of 3.0 months, so a pool built in January is a different pool by June. A NetLine analysis of more than 7 million form completions, published by MarketingSherpa in 2017, estimated that 55 percent of professionals use a personal address for long-form content, and each of those leads is harder to match to an account. Salesforce's lead administration guide notes that Web-to-Lead captures up to 500 leads per day; per a 2025 Salesforce Ben guide, the excess waits in a pending queue for the next day.
Round-robin is a reasonable fairness rule. The problem is that it is usually the only rule, so every case it was never meant to handle falls through it. The fix is a short list of cases checked before the rotation, each with an expected result and a test.
Diagnosis: the five classes of edge case that break round-robin
Each class fails for a different reason, so each needs a different test.
1. Team state: the pool is not the team
Case 1, the rep who is away. HubSpot's knowledge base, updated October 2026, says users set to Away will not be assigned records when the "Assign to available users only" option is enabled. That works only if reps set the status; a rep who forgets stays in rotation and leads wait. Case 2, the catch-up flood. A HubSpot Community idea from October 2018 describes rotations that balance counts over time: "a rep that goes on vacation will then get MORE leads when they get added back into rotation." Case 3, the departed rep. Salesforce does not allow inactive users in an assignment rule entry, and HubSpot excludes deactivated users from routing; leads meant for that rep go to a fallback owner nobody watches.
2. Pool changes: the rotation resets or drifts
Case 4, adding or removing a rep. HubSpot's documentation says that when owners are added to or removed from a rotation, "the assignment counts for that action will reset." Case 5, the ramping or part-time rep. A rep in week three of a ramp should not get a tenured rep's share. Weighted distribution is the usual answer, and a 2026 guide from Default, a routing vendor, lists weighted distribution among the things HubSpot workflows do not support natively. Case 6, the empty pool. When every rep in a team is away, HubSpot sets the owner to unassigned. Without an alert, they sit.
3. Existing relationships: the lead already has an owner
Case 7, a lead from a current customer. A new contact from an account you already serve should go to the account owner or CSM, not to the next SDR. Case 8, a lead from a company with an open opportunity. Rotation hands it to a second rep, and two people now call the same buying committee. Case 9, the repeat submitter. The same person fills in a second form a month later, and the rotation treats them as new, sending them to a different rep than the one who already spoke to them. HubSpot's rotate action has a setting that decides whether to overwrite an existing owner; whichever way it is set, it should be a decision, not a default.
4. Dirty inputs: the rule cannot see what it needs
Case 10, personal email domains. A Gmail address cannot be matched by domain, so a customer's VP looks like a stranger and lands in the pool. Case 11, missing or variant geography. "US", "USA", "United States" and blank all appear in real form data, and a territory rule that checks one spelling misses the rest. Case 12, enrichment that arrives late. If enrichment fills company size seconds after creation and routing runs on creation, the rule reads a blank and sends an enterprise lead to the general queue.
5. Timing and volume: the lead arrives at the wrong moment
Case 13, off-hours and time zones. A demo request at 11 p.m. goes to whoever is next, who is asleep, while a colleague in another time zone is online. Case 14, bulk imports. 400 event scans enter the same rotation as demo requests and consume a week of fair distribution in a minute. In Salesforce, the 500-per-day Web-to-Lead limit means a spike can also push form leads into the next day's queue. Case 15, the rule set that was never retested. A new rule placed after a broader one never fires, because Salesforce, per its help documentation, "evaluates each entry in order" and stops at the first match.
Framework: lead routing rules examples, with the expected result and a test for each
The table is a suggested starting point, not a standard: reasonable defaults for a $3M to $30M ARR B2B SaaS team. Change any that conflict with how you sell, but write each down before you test it.
| # | Edge case | Expected behavior | How to test it |
|---|---|---|---|
| 1 | Rep away, status not set | Away status set from the leave calendar, not by memory | Book a test absence; submit a lead; confirm the rep is skipped |
| 2 | Returning rep catch-up | Rotation resumes in order, no backlog owed | Return a rep from away; submit five leads; check the split |
| 3 | Departed rep still in rules | Offboarding removes the rep from every pool the same day | Deactivate a test user; submit a lead; confirm no fallback owner |
| 4 | Rep added mid-month | Counts reset is accepted or overridden on purpose | Add a user; run ten leads; compare shares to the plan |
| 5 | Ramping or part-time rep | Reduced share by weight or by a separate pool | Run 20 leads; check the share against the weight |
| 6 | Whole pool away | Overflow queue plus an alert within minutes | Set every test user away; submit; confirm alert and queue |
| 7 | Lead from a current customer | Account owner or CSM, never the pool | Submit with a customer's domain; check the owner |
| 8 | Company with an open opportunity | Opportunity owner, with a notification | Submit with that domain; confirm owner and alert |
| 9 | Repeat submitter | Existing owner kept unless they left or the lead is stale | Resubmit a known email; confirm the owner did not change |
| 10 | Personal email domain | Matched on name and company, or routed to a review queue | Submit a Gmail lead for a customer's employee |
| 11 | Variant or blank country | Normalized before routing; blank goes to a default region | Submit "USA", "U.S." and blank; check each owner |
| 12 | Enrichment arrives late | Routing waits for enrichment or a timeout | Delay the enrichment step; confirm routing waits |
| 13 | Off-hours submission | Online rep in a covered time zone, or first in queue at start of day | Submit at night and on a weekend; check owner and alert |
| 14 | Bulk import | Separate import pool; never consumes inbound rotation | Import 50 records; confirm inbound rotation did not move |
| 15 | Rule order after a change | Every rule can fire; none is shadowed | Run the full deck after every rule edit |
Read the table as an order of operations. Ownership checks (cases 7 to 9) run first, because a lead that already belongs to someone should never reach the rotation. Data checks (10 to 12) run next, because a rule cannot route what it cannot read. Cases 13 and 14 pick the queue. Only then does round-robin choose a rep, and cases 1 to 6 decide who is eligible.
Implementation: six steps to put the edge cases under test
This works for native CRM rules, workflow tools or a dedicated router. Plan for about two weeks. Our companion lead routing test plan shows how to turn these edge cases into a repeatable regression deck.
Pull the last 90 days of routing outcomes. Export each new lead with first owner, current owner, time to assignment and any manual reassignment. Manual reassignments map the edge cases you already have.
Write the expected behavior for all 15 cases. Start from the table and change anything that conflicts with how you sell. Have the sales leader sign off on cases 7 to 9 and 13, which are business decisions.
Build one test lead per case, plus variants. Copy realistic, messy values from anonymized real leads; cases 10 and 11 need several variants.
Run the deck in a sandbox through every entry point. Forms, imports, integrations and the API do not always trigger the same logic. Record actual against expected owner, queue and alert, and fix until they match.
Shadow the new logic in production for a week. Write the owner the new logic would choose into a separate field while the current rules keep assigning. Every disagreement is either a bug or a case you had not written down; add it to the deck.
Cut over and watch three numbers. For the first two weeks, review leads without an owner after an hour, leads that hit any fallback, and leads reassigned by hand. Agree before go-live which of those triggers a rollback.
Workflow: who keeps each class of edge case covered
Edge cases come back when nobody owns them. Give each class an owner and a trigger.
Leave calendars feed away status, and offboarding removes a departing rep from every pool on their last day. At 40 percent attrition, this is routine.
The existing-account and open-opportunity checks, the import pool, the overflow queue and its alert. RevOps also owns the test deck and adds a case for every reported misroute.
Form fields with picklists instead of free text for country and size, normalization before routing runs, and an enrichment step that finishes before the routing step starts.
Rerun all 15 cases after any change to rules, pools, forms or integrations, and once a quarter regardless. Connected tools change without telling you.
Board narrative: explaining routing reliability in three sentences
Boards ask why one segment's pipeline is thin or why a customer got two calls. Three statements answer that.
"Our routing handled the hard leads by accident. We now check ownership, data and availability before any lead enters rotation."
"We keep a fixed set of 15 test cases and run them after every change. We also track leads without an owner, leads that hit a fallback and leads reassigned by hand, every week."
"Speed. Workato's 2026 study of 114 B2B companies found those using a routing tool replied in about three and a half hours on average, against nearly 13 hours without one. A lead in the wrong queue loses that advantage."
Cross-domain: where routing edge cases connect to the rest of the engine
Most of the 15 cases are identity, ownership and data problems that routing exposes. Cases 7 to 10 depend on matching a lead to the right account, covered in our guide to deterministic vs probabilistic matching. The ownership rules behind cases 1 to 6 are covered in our piece on territory assignment automation.
Downstream, routing is the first half of response time. A Speed-to-Lead system can only reply in minutes if the lead reached an eligible owner in seconds; our speed-to-lead benchmarks by ARR band show what fast means at your stage. If your cases have outgrown native CRM rules, our comparison of lead routing software by routing complexity covers when a dedicated router earns its cost.
VANDFORT tests systems against around 20 of the client's own past cases before go-live, with an 85 percent acceptance bar in its methodology. Deterministic routing rules deserve a higher bar: all 15 cases should pass.
Frequently asked questions
Why is HubSpot round robin not distributing leads evenly?
Usually because the pool changed or reps were skipped. HubSpot's documentation says assignment counts reset when owners are added to or removed from the rotation, and users set to Away are skipped when availability filtering is enabled. Uneven totals over a month often trace back to a new hire, a departure or leave. Check those events first, then check whether some leads bypass the workflow through imports or integrations.
What happens to round robin leads when a rep is on vacation?
It depends on the tool and on whether the rep's status is set. In HubSpot, users set to Away are skipped when availability filtering is enabled, and if the whole pool is away the record is left unassigned. If the rep never sets the status, leads keep arriving and wait. The safest setup connects away status to the leave calendar and alerts on any unassigned lead within minutes.
How should lead routing handle existing accounts?
Check ownership before rotation. A new lead whose company is already a customer should go to the account owner or CSM, and a lead from a company with an open opportunity should go to the opportunity owner with a notification. Only leads with no existing relationship should enter round-robin. Matching on email domain alone misses contacts using personal addresses, so add name and company matching or a review queue.
How do you route leads that come in after business hours?
Decide whether speed or continuity matters more for that lead type. For high-intent requests like demos, route to a rep who is online in another time zone if you have coverage. Without coverage, place the lead first in the queue for the start of the next working day and send an immediate confirmation to the buyer, so the wait is visible rather than silent.
Sources: The Bridge Group, 2025 SDR Metrics Report (n = 351), February 2025. MarketingSherpa, "Lead gen: business vs. personal email" (NetLine analysis of 7M+ form completions), July 2017. Salesforce, Tips for Lead Administrators, and Salesforce Help, "Create Assignment Rules," accessed October 2026. Salesforce Ben, "A Step-by-Step Guide to Creating Web-to-Lead Forms in Salesforce," April 2025. HubSpot Knowledge Base, "Assign and rotate record owners using workflows," updated October 2026. HubSpot Community, "Workflow Round Robin: rotate leads evenly and in set order," October 2018. Default, "HubSpot Round Robin: Setup, Types and Limitations," updated October 2026. Workato, "B2B Lead Response Times: What We Learned from 114 Companies," March 2026. VANDFORT, Forms Routing page, accessed October 2026.




