Lead Routing and MQL→SQL Handoff Across HubSpot and Salesforce: A RevOps Playbook
Published by Bles Software, a custom software and AI company based in Yehud-Monoson, Israel, building web apps, AI agents and API integrations for clients in Israel, the US, the UK and the EU.
The Stakes: Speed‑to‑Lead and Accountability
Routing is where revenue acceleration either happens or dies. Prospects don’t wait, and neither should your workflow. Your routing model must deliver a named owner quickly, document why that person received the record, and enforce SLAs that guarantee human follow‑up. This playbook lays out a deterministic approach that scales, audits well, and preserves trust between Marketing and Sales.
Outcomes to Target
- Median speed‑to‑first‑touch under 15 minutes for hand‑raiser forms
- Clear state transitions from MQL to SQL with reason codes
- Deterministic assignment with verifiable decision logs
- SLA alarms with escalation paths that actually fire
- Weekly health dashboards showing volume, velocity, conversion, and exceptions
Routing Inputs You Should Standardize
- ICP fit: employee count, industry, region, tech stack signals, and your negative filters
- Intent: content consumed, form type (demo vs content), UTM source/medium/campaign, pricing page views
- Capacity: daily lead caps, vacation schedules, ramping reps, territories, and “named account” overrides
Where Routing Logic Should Live
Choose one primary engine. If HubSpot drives inbound, centralize intake there. If Salesforce already handles territories, assignments, and queues, perform final ownership there. Many high‑growth teams ingest and pre‑qualify in HubSpot, then call a controlled handoff to Salesforce for final assignment and audit.
Decision Logs and Why They Matter
Every routed record should carry a “decision log” field or related object that captures: rule used, inputs, timestamp, and the assigning engine. This makes audits, SLA triage, and rep escalations factual, not emotional. Include a “reassign_reason” picklist and require it for any manual reassignment.
The Handoff: MQL to SQL Without Whiplash
Treat MQL and SQL as formal states with explicit transitions. An MQL becomes SQL only after Sales confirms qualification; Marketing can propose but not force. If Sales rejects (Disqualified or Nurture), require reason codes and feed those back into targeting and creative.
A Deterministic Routing Framework
1) Pre‑Qualification in HubSpot
Normalize and score. Use a single “mql_ready” boolean instead of brittle thresholds. Validate email, enrich company by domain, and suppress contra‑ICP segments. Attach UTM metadata and content classification to the record.
2) Handoff Event to Salesforce
On mql_ready = true, create/update Lead/Contact in Salesforce with normalized fields and a “ready_for_assignment” flag. Trigger a flow that owns assignment, not ten independent workflows.
3) Assignment and Capacity Rules
Evaluate named accounts and partner rules first, then territory, then round‑robin. Enforce per‑rep daily caps and vacation schedules. Write assignment outcome and inputs into the decision log.
4) SLA Timers and Alerts
Start an SLA stopwatch when assignment is made. If not accepted in X minutes, alert rep (Slack + email); if not touched by Y minutes, alert manager; if not touched by Z minutes, auto‑reassign to a catch‑all queue.
5) Feedback Loop
Capture outcomes (meeting set, no‑show, disqualified with reason). Send weekly analytics to RevOps and functional leaders. Tune inputs and caps based on evidence, not opinions.
Exceptions You Must Handle Early
- Duplicates with different owners: assign to current owner’s queue and notify both owners
- Named accounts with inbound hand‑raisers: prioritize named‑account AE over territory
- High‑intent reactivation of previously disqualified leads: require a human review or an override guard
- Partner‑sourced leads: route to partner team with cooperative attribution rules
SLA Design that Drives Behavior
SLAs fail when nobody feels them. Make them visible, noisy, and tied to coaching.
- Rep‑level: daily Slack digest of accepted vs assigned; alerts for breaches
- Manager‑level: weekly roll‑ups of breach counts with drill‑downs by reason
- Leadership: trends over time with action plans, not blame
Data Hygiene for Trustworthy Routing
- Email validation and normalization at ingest
- Domain enrichment and company merge policy
- Required fields for territory logic (state/country) with validation rules
- Reason codes for every disqualification and reassignment
Demo vs Content Leads: Different Paths, Same Discipline
Demo and pricing leads should bypass nurture and route immediately with the tightest SLAs and the highest priority. Content leads still deserve clear ownership, but automation should stage them for sequences and nurture automatically without creating false urgency.
Runbooks and On‑Call
Create short runbooks for the top error classes: failed assignments, missing territories, duplicate conflicts, UTM parsing errors. Each runbook should document: symptoms, probable causes, how to fix now, and how to prevent next time.
Pilot, then Scale
Pilot your routing refactor with one region or segment. Measure speed‑to‑lead, acceptance rate, and conversion for two weeks. Share results, fix issues, and then expand. Publish a one‑page “What changed and why” for the field.
FAQ
Should SDRs or AEs own inbound demo requests?
There is no universal answer. Pick one model and optimize it. If AEs own, set stricter SLAs and ensure coverage during off hours. If SDRs own, define a fast warm handoff path to the AE with context and next steps.
How do we avoid punishing reps during reassignment?
Log reassignments with reasons, exclude reassignments from rep conversion metrics, and coach on root causes (coverage, territory mismatches, capacity). Reward proactive coverage swaps, not hoarding.
Can we use AI scoring for routing?
Yes, but only as an input to deterministic rules. Keep the decision log human‑readable and stable. If AI changes a score, log it and cap its influence until you verify lift.
What’s an acceptable SLA for first touch?
For hand‑raisers, target 5–15 minutes during business hours. For content leads, same day is reasonable. The point is consistency and recovery paths when you miss.
Where do we store the decision log?
As a text field on Lead/Contact or, better, a related custom object (Assignment Log) with structured fields: timestamp, rule, inputs, assigned_to, and reassign_reason.
More RevOps Playbooks from Bles Software
- Attribution & Pipeline Reporting Setup | Bles Software
- Data Mapping Checklist (Leads/Contacts/Opportunities) | Bles Software
- Field Governance & Picklists | Bles Software
- Sync Rules: Deduping, Owners, Lifecycle | Bles Software
- HubSpot ↔ QuickBooks Integration Playbook | Bles Software
- Errors & Retries: Top Fixes | Bles Software
- HubSpot ↔ Salesforce Integration: Executive Guide | Bles Software
- HubSpot ↔ Salesforce: Cost & Timeline Drivers | Bles Software
- Daily AI Roundup: AI agent, model and enterprise AI news