In a lot of marketing and sales leadership meetings, the same argument comes up sooner or later. Marketing says the leads are good. Sales says the leads are junk. Somebody searches “MQL to SQL conversion rate,” finds a number, and both sides use it to prove they were right.

That number can’t settle the argument. Published MQL to SQL benchmarks define MQL, SQL and the time window differently, so they don’t compare with each other or with yours. The rate worth managing is your own, measured as a cohort from the CRM against a definition you wrote down. A benchmark is context, not a target.

What is a good MQL to SQL conversion rate?

There is no single good rate, because the published ones disagree. MarketerHire’s page, published June 17, 2026, states an industry average of 13% to 31% and names its sources without linking the data (MarketerHire, June 2026). First Page Sage, an SEO agency, puts B2B SaaS at 13% from its own client data, under a strict SQL definition (First Page Sage, October 2024). Your own cohort rate is the one to manage.

Look closer at both. MarketerHire gives B2B SaaS a range of 13% to 20% and lists its sources as “HubSpot State of Marketing, Salesforce State of Sales, Demand Gen Report,” with no link to any dataset, so you can’t check how any of those numbers was counted (MarketerHire, June 2026). First Page Sage tells you exactly how it counted. It also doesn’t state a sample size, and the data comes from its own clients, not from a market survey (First Page Sage, October 2024). If you’ve seen 13% quoted without a source, that table is one place it comes from.

Why do MQL to SQL benchmarks disagree?

They measure different events. First Page Sage, using client data gathered from 2019 to 2025, counts an MQL only when a contact has shown intent to buy and can afford the product, and an SQL only once a salesperson has vetted the lead as a good fit and a meeting is booked (First Page Sage, October 2024). If your MQL is a lead score crossing a threshold, your rate and theirs describe different people.

Four choices move the number before a single buyer does anything:

  • The MQL definition. A score threshold lets in more contacts than “intent to buy plus able to pay.” More contacts at the top means a lower rate.
  • The SQL definition. “Sales accepted it” is a lower bar than “vetted by a salesperson and a meeting booked.” A lower bar means a higher rate.
  • The denominator. Some reports divide the SQLs created in a month by the MQLs created in that month, even when they are different people.
  • The time window. A lead that becomes an SQL on day 75 counts in a 90-day window and disappears from a 30-day one.

Even inside one dataset with one definition, the number moves. First Page Sage’s MQL to SQL Conversion Rate By Industry report, first published October 2024 and built on its client data from 2019 to 2025, puts Legal Services at 10%, Fintech at 11%, B2B SaaS at 13%, Cybersecurity at 15%, Manufacturing at 16% and Business Insurance at 26% (First Page Sage, October 2024). One source and one definition still give a spread that wide, so a blended “average” says little about your funnel.

Exhibit 01

Even inside one dataset with one definition, the number moves.

MQL to SQL conversion rate by industry, First Page Sage client data

0%10%20%30%40%MQL to SQL conversion rateBusiness Insurance26%Manufacturing16%Cybersecurity15%B2B SaaS13%Fintech11%Legal Services10%
0%10%20%30%40%MQL to SQL conversion rateBusiness Insurance26%Manufacturing16%Cybersecurity15%B2B SaaS13%Fintech11%Legal Services10%

Source: First Page Sage, 2024 · client data from 2019 to 2025 · SQL = vetted by a salesperson and a meeting booked

Even inside one dataset with one definition, the number moves. (source: First Page Sage, 2024)
ItemMQL to SQL conversion rate
Business Insurance26%
Manufacturing16%
Cybersecurity15%
B2B SaaS13%
Fintech11%
Legal Services10%

Then line the two B2B SaaS figures up. MarketerHire says 13% to 20% (MarketerHire, June 2026). First Page Sage says 13% (First Page Sage, October 2024). Same label, different definitions behind it, and only one of the two pages tells you what its definition is.

What HubSpot does and does not define for you

HubSpot’s default lifecycle stages describe a Marketing Qualified Lead as “a contact or company that your marketing team has qualified as ready for the sales team” and a Sales Qualified Lead as “a contact or company that your sales team has qualified as a potential customer” (HubSpot Knowledge Base, October 20, 2026). Neither definition sets any criteria. The rule is yours to write, and until someone writes it, reps and marketers each run their own.

HubSpot gives you room to build it. You can create custom lifecycle stages beyond the defaults, and Super Admin permissions are required to create and edit them (HubSpot Knowledge Base, March 30, 2026). The Lead Status property holds the sub-stages inside Sales Qualified Lead. Its defaults are New, Open, In Progress, Open Deal, Unqualified, Attempted to Contact, Connected and Bad Timing, and you can customize it (HubSpot Knowledge Base, October 20, 2026). Unqualified and Bad Timing are the only two defaults that say no, and neither says why.

The part that bites is direction. HubSpot says default automatic updates to the lifecycle stage only move it forward, and its tools, including import, form submission, the API, the Salesforce integration and workflows, can only move the default stage forward (HubSpot Knowledge Base, October 20, 2026). So when sales turns a lead down, the lifecycle stage won’t fall back by itself. Unless someone changes it by hand or records the rejection somewhere, your CRM can’t tell a rejected SQL from one still being worked.

How do you measure your own MQL to SQL rate from the CRM?

Take the contacts that entered MQL in one month, using the Date entered property HubSpot sets automatically for each lifecycle stage (HubSpot Knowledge Base, September 21, 2026). Count how many of that same group entered SQL within a window you set in advance, and divide. Don’t divide this month’s SQLs by this month’s MQLs; those are often different people.

Two checks before you build on it. HubSpot’s default contact properties page says a Professional or Enterprise subscription is required to use some of the properties it lists, without naming which, so confirm the Date entered and Date exited properties show up in your own portal first (HubSpot Knowledge Base, September 21, 2026). And keep both stages in the built-in Lifecycle stage property. HubSpot calculates funnel stages from those automatic Date entered timestamps, and custom properties don’t generate them and can’t be used as funnel steps (HubSpot Knowledge Base, May 30, 2026). An SQL flag in a custom field is invisible to the funnel.

If you use a legacy funnel report, pick the type on purpose. An “All” funnel reports on contacts that moved through every selected stage and is the option HubSpot names for conversion rates between stages. An “Any” funnel counts every record that entered one of the selected stages in the date range, regardless of create date. Both need Marketing Hub or Sales Hub Professional or Enterprise (HubSpot Knowledge Base, November 19, 2025).

The setup, in order:

  1. Write the MQL rule and the SQL rule down. One sentence each, agreed by marketing and sales on the same page, with the date you adopted them.
  2. Map each rule to a lifecycle stage. That way Date entered MQL and Date entered SQL record when each event happened, and the funnel report can read them.
  3. Require a rejection reason when sales declines a lead. Lead Status gives you Unqualified and Bad Timing. A separate, required reason property is our recommendation, not a HubSpot default.
  4. Report by MQL-entry cohort with a fixed window. Take the MQLs that entered in March and count how many of those reached SQL within the window. Rerun it the same way every month.

Speed matters inside that window too. If leads wait in a queue before anyone owns them, the clock runs on a lead routing problem, not a lead quality problem. And the step after SQL needs its own written rule: when a rep should create a deal in HubSpot.

A worked cohort example

Run one month both ways and the gap shows up fast.

Same data, three numbers. The same-month figure isn’t a conversion rate at all. It’s two counts that happen to share a calendar. The cohort figures are honest, and they still disagree until you write the window into the definition.

What should you check when the MQL to SQL rate drops?

Read the rejection reasons before you blame lead quality or sales follow-up. A pile of Bad Timing says marketing is passing buyers early. A pile of Unqualified says the MQL rule lets in the wrong people. A pile of blanks says you don’t have a rate problem yet. You have a recording problem, and conclusions drawn from that rate are guesses.

Then check whether the definition changed. A new scoring model, a new form, a new SDR team that accepts leads more freely, or a cleanup that rewrote lifecycle stages in bulk can all move the rate without one buyer behaving differently. Compare cohorts from before and after the change, and say on the slide which definition each one used. If your HubSpot reports don’t look accurate, definitions are one of the first places to look, and the same drag shows up when board numbers don’t match the CRM.

Pick your own number

You have a choice. Keep arguing with a benchmark someone found online, measured on someone else’s definition, or write two sentences, put them in the CRM and measure your own cohort. The first is easier right up until the board asks why the rate fell and nobody can say what it measured.

It gets harder when the definitions drifted over years, imports and workflows set the lifecycle stage on their own, and nobody can say which leads sales rejected or why. AeolusGTM is CRM, RevOps and GTM advisory, with Atlas connecting to your CRM to find gaps the CRM can’t show natively. Start with the CRM Diagnostic.

This week, pull last quarter’s MQL-entry cohort, count how many reached SQL within your window, and count how many rejected leads have no reason recorded.