Routing by company size sends small accounts to one team and large ones to another. In HubSpot the size usually sits on the company, not the contact. Most faults start there.
Where it goes wrong
- The contact has no company. Without one, a branch on company size has nothing to test.
- The size arrives late. The contact enrols before the company is created or filled in.
- Ranges overlap. A branch for 50 to 200 staff and one for 100 to 500 both match 150. A contact goes down the first branch it matches.
- Ranges leave a gap. Nothing matches 201 to 249.
- The size is blank. A blank value matches no range.
- Nothing catches the rest. A contact that matches no branch has no owner.
Check it yourself
Build a contact report for the last 30 days with the associated company's employee count. Filter to contacts with no owner. Count how many have no company, and how many have no size.
Then add a last branch for everything else, and name who gets it. See contacts with no owner.
The free scan checks your export for:
- workflows that assign to a deactivated owner
- more than one workflow setting the owner
- owner steps with no owner chosen,
- owner Ids hard-coded in several workflows
Check it with the scan
Export your workflows with the free export script. Then scan the file. It reads in your browser. It finds owner steps that clash, repeat or point at a leaver.
Related: route HubSpot contacts by country or region and HubSpot round robin not working.
What HubSpot says about branches
Source: HubSpot knowledge base, if/then branches, read on 18 October 2026, page dated 23 September 2026.
- A record is checked against each branch in the order the branches are stacked.
- Once it matches a branch, it is not checked against the others.
- A record that meets no branch follows the None met path.
- An if/then branch action takes up to 20 branches.
- Branches are checked when the record reaches them. A later change does not reroute it.
The last point explains late company data. A contact that reaches the branch before the size is filled in is not checked again.
Ranges that do not overlap
This split is made up, to show the idea. Each size falls into one range and the last branch catches the rest.
| Branch | Employee count | Owner |
|---|---|---|
| 1 | 1 to 49 | Small team |
| 2 | 50 to 199 | Mid team |
| 3 | 200 or more | Large team |
| None met | Blank or no company | Named fallback owner |
Records enrol once by default. A contact routed before its size is set stays put unless re-enrolment is on. Source: HubSpot knowledge base, create workflows, read on 19 October 2026, dated 16 October 2026.
Questions
Why does a HubSpot company size branch miss contacts?
The size usually sits on the company. A contact with no company, or a company with no size, has nothing to test.
What goes wrong with size ranges in a workflow?
Ranges can overlap, and a contact goes down the first branch it matches. They can also leave gaps that match nothing.
Have it checked every night instead.
Routing Forensics connects as a read-only user and checks this, and the rest of your routing, against your real leads. Three design partners get a free health report on their own CRM, free for 90 days: what is leaking, where, and what it is worth. Apply for a place.
Or check it now. The free scan reads your HubSpot workflow export in your browser. Nothing is uploaded.