Interactive sample: hover or tab to dotted phrases to see what FunnelLedger analyzed and why that section exists.
FunnelLedger
Synthetic sample · no real customer data

HubSpot Lifecycle Spine Audit · Demo B2B SaaS Portal

Sample HubSpot Lifecycle Spine Audit

See the kind of evidence FunnelLedger delivers before you buy a report. This sample uses fictional data to show report depth. No real portal, names, emails, or records are shown.

Generated from a portal scan in under an hour. The equivalent manual audit: two to three RevOps days.
What we found
562 labels

of 1,880 advanced-stage labels (30%) need review — evidence missing, stale, or conflicting.

What distorts the trend
17.5%

of recorded lifecycle changes were bulk/admin operations — including a Q1 2025 cleanup that placed 120 contacts into advanced stages. All excluded before any conversion math.

First move
212 MQLs

carry zero supporting evidence. Review them before the next pipeline meeting relies on the MQL count.

Verdict mix: 1,318 evidence-backed 312 missing 178 stale 72 conflicting
4,200
contacts examined
5
advanced-stage labels evaluated
562
labels needing review (30%)
17.5%
of recorded lifecycle changes excluded as bulk/admin
Executive thesis

2 in 5 MQLs carry no supporting evidence — and a hidden cleanup quarter inflates the raw history.

212 of 520 MQLs entered with no conversion or sales activity in the evidence window, and a Q1 2025 bulk cleanup placed 120 contacts into advanced stages. Marketing reporting built on the raw numbers would not see either.

What this demo proves

Specific cohorts, not vague health scores

The sample keeps findings at aggregate level: count, criteria, and receipt. It shows what to inspect first without exposing any individual person.

Forensic Spine

Every stage movement becomes an evidence anchor.

FunnelLedger rebuilds Lifecycle Stage history from timestamped changes, then checks what evidence existed around each movement. That creates a historical view of what happened before a stage, between stages, and immediately before the next move — timing and context, not causation.

Question answered: what did we know when the stage changed?
t₀
t₁
t₂
t₃
Source
Conversion
Activity
Deal / company
Source of change

Filled markers show the evidence layer most associated with each stage change — timing and context, not causation.

Evidence packet → Each conclusion in this report traces back to one of these packets — aggregate and stage-level, never a single person.
What makes the paid report valuable

It does not just grade the funnel. It tells you where to act.

These are the three moments a RevOps buyer should remember after seeing the sample: breakdown by ICP/market, list creation in HubSpot, and the touchpoint most associated with each stage move.

Breakdown
Where labels break down by ICP and market
blocker · UK · Canada

The report surfaces the exact segments and markets where labels need review, with stage mix and evidence-backed vs missing counts.

blocker
2
UK
1
Canada
1
Action
Create HubSpot lists from approved cohorts
212 + 121 + 327

Connected reports preview review cohorts, ask for explicit approval, then create static HubSpot lists for follow-up.

Create list in HubSpot
Influence
Most influential touchpoint per stage move
+39pp

Lead → MQL movement is most associated with product demo requests in this synthetic portal; other moves show meeting and call influence.

Open touchpoint read
What this report tells you

A FunnelLedger report answers five questions about your HubSpot lifecycle.

1
Lifecycle history
Lifecycle Stage values, timestamps, and transitions.
2
Change source
Workflow, import, user, integration, or sync attribution.
3
Touchpoints
Forms, meetings, calls, emails, activity, and web signals.
4
Deals
Opportunity timing and sales evidence.
5
Companies
Account context used to explain stage labels.
6
Workflow context
Automation clues behind movement.

Full metric coverage

Every report metric is represented in this sample.

Buyers should be able to see the breadth of the deliverable before paying. This page is the inventory: trust scoring, verdict mix, movement integrity, stage performance, evidence attribution, context cuts, cohorts, exports, and Segment Actions.

Trust and verdicts
Lifecycle trust score
64 / 100
Portal-level read across evidence-backed, stale, missing, and conflicting labels.
Verdict mix
70% backed
Supported, stale, missing, and conflicting labels shown as counts and share.
Evidence packet completeness
5 layers
Lifecycle history, change source, touchpoints, deal/company context, and workflow clues.
Labels needing review
562
Aggregate labels where evidence is missing, stale, or contradictory.
Movement and source
Lifecycle Trust Over Time
10 quarters
Raw movement split into trusted, lower-confidence, and excluded periods.
Raw vs adjusted spine
4 transitions
Bulk and admin changes removed before conversion and velocity reads.
Who changed Lifecycle Stage
4 sources
Workflow, user, form, and import/source-of-change mix.
Detected lifecycle paths
1 path
Single confirmed lifecycle, validated before movement is scored.
Stage performance
Stage counts
5 stages
Current distribution across Lead, MQL, SQL, Opportunity, and Customer.
Conversion by stage
4 steps
Adjusted conversion rates for Lead to MQL through Opportunity to Customer.
Median time-in-stage
by stage
Age and velocity metrics after excluding bulk/admin movement.
Lifecycle Decay
327
Contacts in eligible stages past threshold with no touchpoint since entering.
Evidence and attribution
Live touchpoints
forms / meetings / calls / email
Connected evidence around each stage label.
Form and conversion evidence
source mix
Which conversion events appear before stage movement.
Deal, ticket, and company context
where available
Associated commercial evidence used to support advanced-stage labels.
Boosters
3 shown
Signals more common before progression, presented carefully as correlation.
Handoff and exports
Cohorts to inspect
3 priority groups
Counts, criteria, and evidence receipts for review-first cohorts.
Segment Actions
approval required
Connected reports can create static HubSpot lists only after explicit approval.
CSV bundle
included
Exportable summaries for portal health, transitions, cohorts, and evidence properties.
Context cuts
ICP / region / industry / tier
Report findings sliced by safe business context fields.
Basic Upload Report

Rebuilds lifecycle history, Trust Over Time, source-of-change, raw-vs-adjusted movement, detected paths, and uploaded evidence from HubSpot CSVs.

Connected Report

Adds live touchpoints, deal/ticket/company context, workflow clues, Lifecycle Decay, Segment Actions, and richer evidence receipts.

Public sample boundary

Shows aggregate and cohort-level proof only. Private report handoff stays read-only and PII-minimized.

Diagnosis and evidence model

Executive diagnosis

Lifecycle labels are mostly evidence-backed. The issue is Lead → MQL movement.

1
Review · MQLs missing support evidence · 212

These labels drive marketing reporting but have no conversion or sales touchpoint in the evidence window.

receipt: entered MQL, 0 supporting signals in 30d
2
Tighten · Lead → MQL routing · cohort-level

Lead → MQL is where adjusted movement diverges most from raw CRM changes.

receipt: raw 1,880 vs adjusted 1,494
3
Inspect · SQLs missing the strongest Booster · 121

These SQLs lack the discovery-meeting signal most present before SQL progression.

receipt: Booster present in 24% vs 61% of progressors

Evidence model

Verdicts are deterministic. Each label is judged against explicit evidence layers - source, conversion, activity, deal/ticket, workflow context - inside defined evidence windows, not by an AI guess.

Evidence-backedRecent support exists for the stage label.
Missing evidenceThe label exists but the expected support signal is absent.
Stale evidenceSupport exists, but outside the freshness window.
Conflicting evidenceSignals contradict the current label.

Lifecycle operating model

FunnelLedger confirms the lifecycle model before it scores movement, rather than assuming HubSpot defaults. This demo portal runs a single confirmed lifecycle: Lead → MQL → SQL → Opportunity → Customer. When a portal runs branching motions, the report detects and confirms each path the same way before judging the funnel.

Confirmed lifecycle path

confirmed
Lead
2,320
funnel entry
MQL
520
212 review
SQL
360
121 review
Opportunity
180
deal context
Customer
820
closed-won support

The model is confirmed before scoring, so conversion and velocity are read against the lifecycle this portal actually uses.

This diagnosis took one scan.Run the same audit on your portal — $99 uploaded files, $199 connected HubSpot. Per delivered report, no subscription.

When history can be trusted

Lifecycle Trust Over Time

FunnelLedger separates buyer progressionA lifecycle transition that looks like individual movement through the funnel, not a bulk administrative operation. from workflow/import cleanupA source-of-change pattern that indicates the label moved because of automation, import, sync, or cleanup activity.. Each bar is one quarter of lifecycle-stage changes; red is excluded admin/bulk movement.

Q1
2024
Q2
2024
Q3
2024
Q4
2024
Q1 2025 · 120 placed
Q1
2025
Q2
2025
Q3
2025
Q4
2025
Q1
2026
Q2
2026
Evidence-backed movement Lower-confidence movement Excluded bulk/admin change
Check your portal: if you can't name the quarter of your last bulk lifecycle edit, your funnel reporting can't either.
Open quarterly detail
QuarterRaw changesAdjustedLower confidenceExcluded
Q1 2024464132
Q2 2024544842
Q3 2024686053
Q4 2024746653
Q1 2025178499120
Q2 2025928075
Q3 2025817254
Q4 2025887774
Q1 2026968664
Q2 2026847644
Who changed Lifecycle Stage

Automation-governed, with a heavy cleanup import

Lifecycle automation accounts for most routine stage changes. A historical import cleanup is isolated and excluded from movement and velocity math.

Workflow automation58%
Import cleanup17%
Manual user action14%
Forms / submissions11%
The signal that changes the QBR

Raw vs adjusted spine

A funnel that looks like it improved can be an admin sweep. The adjusted spine removes bulk and import changes so conversion and timing reflect real movement.

The QBR moment

What your QBR would have reported — vs what actually happened

45%Raw Lead → MQL conversion 36%Adjusted — buyers only

The 9-point gap is movement that was never buyer progression: 386 of 1,880 raw Lead → MQL changes came from the cleanup import and routing sweeps. A funnel review built on the raw number celebrates admin work.

Lead → MQL
1,880 raw
1,494 adjusted · 386 excluded
cleanup quarter + routing sweeps removed
MQL → SQL
1,360 raw
1,205 adjusted · 155 excluded
workflow churn removed
SQL → Opp
1,000 raw
924 adjusted · 76 excluded
admin sweep removed
Opp → Customer
820 raw
798 adjusted · 22 excluded
mostly buyer movement
Movement shape

What the funnel's shape says

Deterministic patterns read from the recorded movement — how contacts moved, never why.

placed, not progressed
120 contacts were placed into advanced stages by the Q1 2025 import

They entered MQL and beyond inside a bulk window, without passing the earlier stages as buyer movement. Counting them as progression would flatter every downstream conversion rate — the adjusted spine excludes them.

evidence-gap concentration
The MQL evidence gap is concentrated, not spread

212 of 520 MQLs carry no supporting signal — and they cluster in the cohort that entered without a conversion event. That points at routing criteria, not at marketing performance.

Operator context

What FunnelLedger asked this operator

When the scan finds something only a human can classify, it pauses and asks — then records the answer in the report. Answers refine how history is read; they never change the raw numbers.

Q
In Q1 2025, an import changed Lifecycle Stage for 120 contacts in one window. Was this a cleanup / backfill, or real lifecycle movement?
Operator answered: CRM migration / data import. The window is excluded from movement and velocity so it cannot inflate conversion.
Q
380 Leads sit beyond the stage median with no recent touchpoint. Are aged Leads recycled deliberately, or should they be treated as decayed?AI-composed · governed
Operator clarified: aged Leads are recycled by a quarterly re-nurture motion. Recorded as operator context — Lead time-in-stage is read with that in mind.
Open source-of-change breakdown

This is the full source summary behind the visible "Who changed Lifecycle Stage" receipt. It stays collapsed by default so the buyer can skim the report first.

Cohorts and actionability

Cohorts to inspect

Cohorts are shown as counts and criteria. The report identifies the cohort; you decide what to do with it.

212

MQL contacts missing support evidence

Criteria: entered MQL with no conversion or sales touchpoint in the 30-day window.

evidence receipt: stage changed to MQL, 0 supporting signals
121

SQL contacts missing the strongest Booster

Criteria: current SQL, no discovery-meeting signal before or after transition.

evidence receipt: Booster present in 24% vs 61% of progressors
380

Lead contacts stuck beyond median time

Criteria: current Lead, age above the stage median, no recent touchpoint.

evidence receipt: Lead age exceeds median by 18d
Lifecycle Decay

327 contacts are in the conservative decay review cohort

Lifecycle Decay means a contact stayed in an eligible stage past the threshold with zero touchpoints since entering. It is a review cohort, not proof the contact is lost.

Lead 30dMQL 60dSQL 90dOpportunity 365d
Segment Actions teaser

Push an approved cohort to a HubSpot static list

Segment Actions are available on the Connected Report and only ever create a static list from a cohort you approve.

Creates static listExplicit approvalHubSpot Contact IDs onlyNot automaticNo property writes
Check your portal: how many of your current MQLs would survive an evidence check like this? Most teams have never been able to ask.

These cohorts exist in your portal too — you just can't see them yet.Basic Upload Report $99 · Connected Report $199 · per delivered report.

Context intelligence

Cut the audit by the business context already in your portal to decide where to look first.

ICP persona
42%
Country / region
31%
Industry
28%
Account tier
38%
Company size band
24%

ICP and market breakdown

Where labels break down by ICP and market

This is the buyer-facing view that turns the audit into action: which ICP segments and markets have evidence-backed labels, which have missing evidence, and which cohorts are ready for HubSpot list creation.

ICP persona

blocker

82 contacts
33 need review · 40%
Evidence-backed 49 Missing evidence 33
Lead 53Subscriber 25MQL 4
Create blocker list in HubSpot

unknown

102 contacts
31 need review · 30%
Evidence-backed 71 Missing evidence 31
Lead 45MQL 31Subscriber 21SQL 5
Create unknown-ICP list in HubSpot

champion

207 contacts
10 need review · 5%
Evidence-backed 197 Missing evidence 10
Customer 75Lead 42Opportunity 37MQL 27
Save champion segment in HubSpot
Market / country

United Kingdom

56 contacts
17 need review · 30%
Evidence-backed 39 Missing evidence 17
Lead 18MQL 12Customer 12Subscriber 8
Create UK list in HubSpot

Canada

59 contacts
12 need review · 20%
Evidence-backed 47 Missing evidence 12
Lead 17Customer 15Opportunity 10Subscriber 10
Create Canada list in HubSpot

United States

132 contacts
27 need review · 20%
Evidence-backed 105 Missing evidence 27
Customer 46Lead 38Opportunity 22MQL 18
Create US list in HubSpot

HubSpot list creation

Create lists in HubSpot from the cohorts that need action

Connected reports turn review cohorts into approval-based Segment Actions. Each action previews the cohort, names the static list, and sends only the object IDs needed to create that list.

1

Preview cohort

Review the count, criteria, stage mix, and evidence receipt before anything goes to HubSpot.

2

Approve list creation

Confirm the exact cohort and list name. Approval is one action at a time.

3

Create static list

FunnelLedger creates the HubSpot static list for sales or RevOps follow-up. No lifecycle-stage fields are changed.

Example Segment Action previews

These are the lists the report can create after approval

Each preview is a review cohort with count, criteria, destination, and guardrail before the action is sent to HubSpot.

MQL missing support evidence
212
Ready after approval
Entered MQL + no conversion or sales touchpoint within 30d
Destination: HubSpot static list · approval required · no lifecycle-stage writes
Create list in HubSpot
SQL missing discovery meeting
121
Ready after approval
Current SQL + no discovery meeting around transition
Destination: HubSpot static list · approval required · no lifecycle-stage writes
Create list in HubSpot
Lifecycle Decay review cohort
327
Ready after approval
Past stage threshold + zero touchpoints since entering
Destination: HubSpot static list · approval required · no lifecycle-stage writes
Create list in HubSpot
Static HubSpot listApproval requiredObject IDs onlyNo stage writesNo cleanup writes

Forms, touchpoints, and receipts

Connected adds live evidence around the stage labels.

Connected reports can read live touchpoints, deal context, company context, and source history so the report can explain why a stage is trusted or needs review. Boosters show which signals were present before progression - timing and context, not proof of causation.

Most influential touchpoint

The report shows which touchpoint is most associated with each stage move

For each transition, FunnelLedger compares progressed cohorts against stuck cohorts, then shows the support signal most present before movement. It is a practical RevOps clue, not a causation claim.

Lead → MQL

1,494 progressed · avg 3.2 touchpoints · median 18d to move

Most influentialProduct demo request+39pp vs stuck leads
Median move time18d
Touchpoints in stage window3.2
Marketing & web64%
Team-led22%

Fastest ICP persona: champion. Review pressure is highest on blocker and unknown ICP cohorts.

Create MQL list in HubSpot

MQL → SQL

1,205 progressed · avg 4.6 touchpoints · median 27d to move

Most influentialDiscovery meeting booked+33pp vs stuck MQL
Median move time27d
Touchpoints in stage window4.6
Team-led61%
Marketing & web28%

Fastest market: United States. Review pressure is highest where meetings are missing after MQL.

Create SQL list in HubSpot

SQL → Opportunity

924 progressed · avg 6.1 touchpoints · median 32d to move

Most influentialQualified sales call+28pp vs stuck SQL
Median move time32d
Touchpoints in stage window6.1
Team-led58%
Deal context36%

Fastest account tier: enterprise. Review pressure is highest where call evidence is stale.

Create Opportunity list in HubSpot
Stage performance

Conversion, velocity, touchpoint density, and evidence quality by stage

The public sample shows the stage-performance metrics a paid report can surface. A real report swaps in your adjusted portal numbers and any portal-specific benchmark overlays available.

TransitionAdjusted conversionMedian timeTouchpoints / progressorEvidence-backedRead
Lead → MQL 36% 18d 3.2 76% Raw history said 45% — a fifth of that movement was admin, not buyers.
MQL → SQL 38% 27d 4.6 69% Meetings and owner assignment explain most trusted SQL movement.
SQL → Opportunity 27% 32d 6.1 62% A material subset lacks recent sales follow-up and needs review.
Opportunity → Customer 31% 49d 8.7 84% Closed-won evidence supports most Customer labels.
Lead → MQL
Product demo requestFunnelLedger compares progressors vs non-progressors and surfaces this as the signal most present before Lead → MQL movement.
+39pp

64% of progressors had a demo request during the Lead stay, compared with 25% of stuck leads.

Marketing/web1,494 adjusted movements
MQL → SQL
Discovery meeting bookedMeeting evidence is read from connected HubSpot engagement activity and joined to the lifecycle period by timestamp.
+33pp

Team-led engagement is the strongest bridge from MQL to SQL in this example portal.

Team-led1,205 adjusted movements
SQL → Opportunity
Qualified sales callThe report checks whether a sales touchpoint was present before movement; it does not claim the call caused the Opportunity.
+28pp

Qualified calls are much more common among contacts that reach Opportunity.

Team-led924 adjusted movements
Attribution and conversion evidence

Source mix, form context, deal context, and timing around movement

These rows show the kind of evidence used to support movement claims. FunnelLedger reports presence and timing; it does not turn correlation into a causation claim.

Evidence signalFamilySample sizeStage windowReport read
Demo request form Marketing/web 1,120 Lead → MQL High-intent form present before 64% of adjusted progressions.
Discovery meeting booked Team-led 780 MQL → SQL Meeting activity is the strongest team-led SQL support signal.
Qualified sales call Team-led 420 SQL → Opportunity Call evidence is common before Opportunity creation.
Closed-won deal association Deal context 820 Opportunity → Customer Commercial outcome supports Customer labels where deals exist.
SQL evidence receipt

SQL stage needs follow-up review

needs review

Verdict: the SQL motion is plausible overall, but a subset of SQL labels is aging past the evidence-freshness window. Those contacts should be reviewed before sales forecasts rely on them.

Open example evidence receipt
Signal
Lifecycle Stage changed to SQL
Change source: workflow. Meeting and owner-assignment evidence are present around the transition.
Signal
Discovery meetings support progression
Team-led engagement is present before most MQL → SQL movements.
Gap
Some SQLs lack recent follow-up
The report flags the aggregate cohort whose latest sales touchpoint is stale.
Action
Review before relying on the label
Export the cohort or, on Connected, create a HubSpot static list with explicit approval.
What the receipt proves

Receipts, not guesses

FunnelLedger shows the lifecycle change pattern, source of change, touchpoints around transitions, and what is missing after the transition.

Lifecycle historyChange sourceMeetingsOwner contextStale follow-up
Stage performance appendix

Full tables are still there

The public sample keeps the page readable by collapsing dense transition and stage-performance detail behind appendix controls.

Privacy, boundaries, and buying path

What this sample is - and isn't

Every conclusion traces back to an evidence packet. The sample uses fictional data, and the product keeps public proof at aggregate/report-safe level.

Synthetic sample · no real customer data
Contact ID first
No names, emails, or phone numbers
No notes, email bodies, or call transcripts
No lifecycle-stage writes
Segment Actions require explicit approval
Basic Upload Report

No HubSpot connection required

Upload HubSpot property-history CSVs to rebuild Lifecycle Stage movement, source-of-change, Trust Over Time, raw-vs-adjusted movement, detected paths, and uploaded source/conversion/activity evidence.

No OAuthCSV bundleHistory integrity
Connected Report

The full live HubSpot evidence layer

Connected reports add live touchpoints, deal/company context, Lifecycle Decay, and Segment Actions with explicit approval.

Live evidenceSegment ActionsOAuth

Read the full Privacy Policy →

Choose your report

Basic Upload Report - no HubSpot connection required. Connected Report - the full live HubSpot evidence layer with Segment Actions.

Read-only auditNo names, emails, or phone numbers needed for uploadPII-like values are ignored or suppressed and never rendered