This article documents the HubSpot automation logic for advancing contacts from Marketing Qualified Lead (MQL) to Sales Qualified Lead (SQL), including the correct trigger field, BANT scoring thresholds, and lifecycle stage bidirectionality. See also: [1] and [2].
The MQL → SQL transition is driven by a HubSpot workflow that evaluates contact field values against BANT criteria. When all conditions are met, the contact's lifecycle stage advances from Marketing Qualified Lead to Sales Qualified Lead automatically.
A field naming mismatch was identified in March 2026 that caused the automation to silently fail. The fix and correct configuration are documented below.
The workflow was configured to trigger on the field Are you juicing currently? — a display-facing field that is not the canonical property used by the automation.
The trigger must reference the field Are you already juicing? This field carries the qualifying answer options that drive the MQL → SQL transition:
| Answer Value | Qualifies? |
|---|---|
| Yes | Yes |
| No, but interested | Yes |
| No, not interested | No |
Data migration required: Any existing data stored in Are you juicing currently? must be mapped to Are you already juicing? before the old field is hidden, to preserve historical qualification state.
The BANT model was simplified in March 2026 for easier team adoption. A point-based system may be introduced later, but the current configuration uses fixed score requirements:
| BANT Dimension | Required Score |
|---|---|
| Budget | 3 |
| Authority | 3 |
| Need | 3 |
| Timing | 3 or 4 |
All four dimensions must meet their threshold simultaneously for the SQL transition to trigger. The Timing dimension intentionally allows a score of 4 to accommodate contacts who are ready to purchase imminently.
Future consideration: The team discussed moving to a cumulative point threshold model to allow more nuanced qualification. This can be layered in without rebuilding the workflow.
The lifecycle stage system is configured to work in both directions between the Contact object and the Deal object:
Path 1 — Contact-first:
Setting a contact's lifecycle stage to Opportunity automatically creates an associated Deal.
Path 2 — Deal-first:
Creating a Deal directly from the Deal object automatically updates the associated contact's lifecycle stage to Opportunity.
This bidirectionality means sales reps can enter the pipeline from either direction without breaking the contact's stage history.
Verification task (assigned to Mark Hope): Confirm that both paths are functioning correctly in the live environment, using the "Jasmine" contact as a test case (deal created directly → lifecycle stage updated to Opportunity without manual intervention).
The MQL qualification view was also affected by a redundant field issue. The correct field structure is:
| Field | Purpose |
|---|---|
Lead Source |
High-level category (e.g., Trade Show, Website, Sales Rep, List Upload, Other) |
Lead Source Detail |
Granular value (e.g., specific trade show name + year) |
Inbound Lead |
Deprecated — hide and migrate data |
The Inbound Lead field must be hidden from the contact card and create-contact form, and its data mapped to the new Lead Source / Lead Source Detail fields. Website and HubSpot create-contact forms must also be updated to write to the correct fields.
Are you juicing currently? to Are you already juicing?Inbound Lead field; map its data to Lead Source / Lead Source DetailDiscussed and decided in the HubSpot Sales Setup & Contact Database Cleanup meeting (2026-03-19). Attendees: Miriam Framson, Melissa Cusumano, Karly Oykhman, Mark Hope.