The form says enterprise. The record sits with a catch-all owner named Other, and the person who works that queue is an inbound bucket, not the named seller.
Routing ran. Rotation picked the next user in a pool that includes the bucket. Or the size filter never matched, and None met did.
Fix the branch order and the pool. Do not add a second round robin on top of a first-match miss.
Put unique enterprise filters first. Keep the catch-all user out of that rotate pool. Blank company size must not be treated as small.
Catch-all is the path that matched first
Most dumps are not a broken round robin. They are a workflow that already assigned someone before the enterprise rule ran, or a branch that never saw the size field. Count every workflow that sets Contact owner, Company owner, or Deal owner on create.
A welcome email dump is a different canvas, covered in how to fix welcome sequences that dump six emails in three days. This post is who owns the record, not how many emails fire.
HubSpot's workflow branch help says enrolled records are evaluated against each branch in the order the branches are stacked. The first match wins. Later branches are not checked, even if they would also match.
Branch order is first match
If the top branch is Form submitted, with no company-size filter, every inbound record takes that path. An Employees greater than 500 branch below it never runs. HubSpot recommends unique, non-overlapping criteria for that reason.
Up to 20 branches can sit in one if/then action. Order them from narrow to broad.
Enterprise, then mid-market, then None met. Reverse that stack and the bucket eats the book.
Blank company size falls through
If a record meets no branch, it follows None met. That path is where catch-all owners get created on purpose, and also by accident. A company with an empty Number of employees value will not match is greater than 500.
Filter on the associated company, not a contact field that nobody fills. HubSpot stores size on the company as Number of employees and Employee range. A contact with no associated company has nothing to match, so it falls through.
Enrollment triggers that use associated object numbers treat 0 and empty differently. A missing association is not the same as zero employees. Do not assume a blank is a small company.
Rotation only splits the pool you picked
HubSpot's Rotate record to owner help assigns paid Sales or Service seats equally among specific users or a team. It does not read deal amount. A pool that includes the catch-all user will keep giving that user a slice of enterprise inbound.
Only main team members with a paid seat are eligible when rotating to a team. Extra team members are skipped.
Users who are deactivated or lost a seat show with a red border and are not assigned. The enterprise team in the UI is not the same as everyone who can see the record.
Counts are per rotate action, not total book size in the account. Adding or removing owners after the workflow is on resets those counts. Load-balanced options in this action are for tickets, not for contact or deal rotation.
Separate rotate actions, one per branch. Enterprise branch rotates among enterprise sellers only.
None met can rotate among the inbound bucket. One shared pool cannot express both rules.
Existing owner and Salesforce can undo the assign
The rotate action can overwrite an existing owner, or leave it. Forms often stamp a default owner on create. If overwrite is off, the catch-all that landed first will stick, and rotation never runs.
If the HubSpot owner property syncs to Salesforce, HubSpot's own warning is that Salesforce may write the previous owner back after HubSpot clears it. That looks like routing failed. It is the sync fighting the workflow.
When the object is a lead, HubSpot says to turn off Sync lead owner with contact or company owner for this action. Leave that on and the lead owner and contact owner fight. This is owner sync, not offline conversion upload to Google Ads.
Rebuild enterprise as its own path
Clone is fine for a one-owner rule. HubSpot's assign-ownership help also shows cloning a workflow per owner, or using branches. For mixed inbound, branches in one workflow beat five overlapping rotate workflows that all enroll on the same form.
Set the enterprise filter on a property sales actually fills, or on enrichment that runs before the branch. If size is enriched two minutes later, the record already took None met.
Re-enrollment is required to evaluate a later branch after data changes. HubSpot does not reroute a live enrollment when the company size updates.
- List every workflow that sets Contact owner, Company owner, or Deal owner on create.
- Stack the enterprise branch first, with unique size or revenue filters that do not overlap.
- Match Number of employees on the associated company, and treat empty as unknown.
- Remove the catch-all user from the enterprise rotate pool, and use paid-seat team members only.
- Turn overwrite on only when the form's default owner should not stick.
- If Salesforce syncs owner, confirm it is not writing the previous owner back.
Unlike a full lifecycle marketing and automation engagement, this post covers only owner routing that dumps enterprise records into a catch-all. For a look at whether the first branch or the rotate pool is the leak, start with Get Free Assessment.
If this post is wrong, outdated, or you would take a different path
I write from work I have done on real sites. Search products change, and a step that was right when I published can go stale. I can also be wrong about the method.
If you disagree with the approach, the facts, or the outcome, I want the detail. Tell me what is off, what you would do instead, and where you saw it. I use that to correct the post so the next reader is not stuck.
This is not a comment thread. Use Contact me so the note is tied to this post and I can reply.
You are sending feedback for
Fix lead routing rules that assign enterprise deals to a catch-all queue
CRM & Marketing Automation