Short answer
HubSpot routes leads through three different tools: the rotate record to owner workflow action, lead and ticket distribution modes, and round robin meetings links. Build one workflow per routing rule, keep a fallback for unmatched records, and watch for deactivated users, pool edits that reset counts, and Salesforce owner sync pushing old owners back.
Where routing actually happens in HubSpot
HubSpot has three separate mechanisms that people call "round robin", and they don't share settings. Pick the one that matches the handoff you're automating before you build anything.
- Workflow owner rotation. The rotate record to owner action sets the owner property (or any custom user property) on contacts, companies, deals, tickets and leads from inside a workflow. It needs Sales Hub or Service Hub Professional or Enterprise, and the people in the pool need paid Sales or Service seats.
- Lead and ticket distribution. For leads (in beta at the time of writing) and tickets, the same action adds distribution modes: load balanced, round robin and random, plus an option to skip users who are set to Away.
- Round robin meetings links. A round robin scheduling page books whichever included user is free, and when several are free it picks the one who has gone longest without a booking. This is available from Starter upward and has nothing to do with the owner property unless you turn on "Prioritize contact owner".
Set it up in this order
- Define the pool on paper first. List who should receive new leads, by segment or territory if that applies. Only main team members with a paid seat are eligible when you rotate by team, and a team needs at least one paid-seat user before you can select it.
- Agree the trigger. Common triggers are a form submission, a lifecycle stage change to Lead or MQL, or a property such as state, AUM band or product interest. Write the enrollment criteria down before touching the workflow editor.
- Build one workflow per routing rule. Put the segmentation in branches (for example, by state or by firm size), then add a rotate action in each branch with its own pool. One workflow with clear branches is easier to audit than six overlapping ones.
- Decide what to do with existing owners. The action has an overwrite setting. For inbound re-engagement you usually want to keep the existing owner; for net-new records you want to assign. Test both paths.
- Add a fallback. If no eligible user exists in the pool, HubSpot assigns no owner. Add a branch that notifies a manager or sets a review flag so nothing sits unowned.
- Test with internal records. Enroll a handful of test contacts and read the owner property history on each one. Confirm the rotation order and that the right branch fired.
- Turn it on and watch the first week. Build a report of records created in the last seven days grouped by owner and compare it to the pool.
What breaks, and why
- Deactivated or unseated users. They appear with a red border in the action and are skipped by the rotation. If you don't replace them, the remaining people absorb the volume silently.
- Editing the pool resets the count. When you change the users in an active rotate action, assignment counts start again from zero across the current pool. Expect a short period of uneven distribution.
- Throughput. Only one record passes through the rotate action at a time; others wait and retry. A large import or a webinar spike will queue, so don't assume instant assignment after bulk events.
- Salesforce owner sync. If the HubSpot owner property syncs to Salesforce, Salesforce can push the previous owner back after HubSpot changes it. Decide which system owns the owner field (see our system of record standard) and route in that system only.
- Lead object prerequisites. Lead assignment needs the "Sync lead owner with contact or company owner" setting turned off.
- Meetings links with disconnected calendars. A member whose calendar is disconnected is treated as always available, so they can soak up bookings they never see. Scheduling pages are also deleted automatically if no active team members remain.
Workflow rotation vs round robin meetings
| Question | Workflow rotation | Round robin meetings link |
|---|---|---|
| What it assigns | Owner or custom user property | A booked meeting on one person's calendar |
| Minimum tier | Sales or Service Hub Professional | Sales or Service Hub Starter |
| Who is eligible | Paid Sales or Service seats | Included users with connected calendars |
| Respects existing owner | Optional overwrite setting | Only with "Prioritize contact owner" |
| Good for | Inbound lead handoff, territory rules | Self-serve booking from a web page or email |
What we recommend for regulated firms
- Route by eligibility first, then by load. For wealth and lending firms, a lead in a given state should only reach someone licensed or registered there. Model that as a property on the user or team and branch on it before the rotate action.
- Keep the audit trail readable. Owner property history and workflow enrollment history are your evidence that a lead went to the right person. Don't let a second workflow or an integration overwrite owner without a reason you can show a reviewer.
- Tie pool changes to your offboarding checklist. The day someone leaves, they come out of every rotation and meetings page, and their open leads are reassigned.
- Never leave a lead unowned. A fallback queue reviewed daily is a supervisory control, not an inconvenience.
- Review quarterly. Pool membership, branch criteria and the distribution report should be reviewed together, and the review noted somewhere a compliance reader can find it.
Official documentation
Frequently asked questions
Do I need Sales Hub Enterprise to use round robin lead routing in HubSpot?
No. The rotate record to owner workflow action is available on Sales Hub or Service Hub Professional as well as Enterprise, and the people receiving records need paid Sales or Service seats. Round robin meetings links are available from Starter upward. Enterprise adds things like more teams and permission options, which matter for larger firms, but the core rotation works on Professional.
Why did one rep suddenly start receiving most of the leads?
The usual causes are a teammate who was deactivated or lost a paid seat and is now skipped by the rotation, a recent edit to the pool that reset the assignment counts, or a Salesforce owner sync that is pushing an old owner back onto records. Check the action for users with a red border, review the workflow's edit history, and confirm which system owns the owner field.
Salesforce, HubSpot, Anthropic and OpenAI change their products often. Check the official documentation before you rely on a specific setting, limit or price.
