How the /lead_pricing quiz routes user answers into recommended packages. Conditional steps (agency seats, dials/lead) are shown as branches; the compute layer is amber; the three output packages are red.
Start / EndQuestionComputePackage
ST
START
User opens /lead_pricing
Quiz begins
QU
QUESTION
Q1 — Lead Type
Life · Health · Unsure
QU
QUESTION
Q2 — Business Type
Individual or Agency
QU
QUESTION
Q3a — Agency Seats
Only shown if Agency · 2-5 / 6-15 / 16-50 / 50+
SK
SKIP NODE
Skipped for Individual
Q3a hidden from flow
QU
QUESTION
Q3 — Experience
Rookie · Producer · Pro · Veteran
QU
QUESTION
Q4 — Dialer
Yes / No
QU
QUESTION
Q5a — Dials/lead
Only if dialer · 1-2 / 3-5 / 6-9 / 10+
SK
SKIP NODE
Skipped for No-Dialer
Defaults to 3-5 bucket
QU
QUESTION
Q5 — SMS
Yes / No
ED
EDU + SELL
Edu — Speed-to-Lead
After SMS · stats + Real-Time pitch
21× / 60× / 47hr stats · pitches Real-Time delivery as the differentiator
ED
EDU + SELL
Suggest — Leads/Week
After Income + Split
Backs into required leads-per-week at each tier from goal, split, skill, vertical. Sets up the gap question next.
ED
EDU + SELL
Edu — Dial Persistence
After Weekly Volume
8 dials avg · 44% give up · 80% close 5+ · pitches Premium A-Stack
QU
QUESTION
Q6 — Quality Pref
Premium · Mixed · Volume
QU
QUESTION
Q7 — Weekly Volume
None / <25 / 25-75 / 75-200 / 200+
QU
QUESTION
Q8 — Income Goal
$ / yr
QU
QUESTION
Q9 — Split %
50–100%
QU
QUESTION
Q10 — Monthly Budget
$ / mo
CO
COMPUTE
Resolve VERTICAL
pick !== unsure → use pick
else premium → Life · volume → Health · mixed → exp default (Rookie → Health, otherwise → Life)
Price ×0.45 · Close ×0.4 · AOV ×1.0 · Best Fit if qualityPref=volume OR (mixed+agency)
PA
PACKAGE
Real-Time Exclusive
Fresh · sold to one agent
Price ×1.0 · Close ×1.0 · AOV ×1.0 · Best Fit if qualityPref=mixed AND individual
PA
PACKAGE
Premium A-Stack
Hand-verified · TrustedForm + intent score
Price ×1.55 · Close ×1.5 · AOV ×1.15 · Best Fit if qualityPref=premium
OU
OUTPUT
Results Page
Three cards · Reality Check on each
Each card shows price/lead, leads/mo, closes/mo, projected income, % goal, required vs avg close rate, law-of-averages budget
Press enter or space to select a node. You can then use the arrow keys to move the node around. Press delete to remove it and escape to cancel.
Press enter or space to select an edge. You can then press delete to remove it or escape to cancel.
Routing Logic — Plain English
Vertical resolution
If the user picks a specific lead type (Life or Health), that wins. If they pick 'Unsure', we resolve from quality preference (Premium → Life, Volume → Health) or fall back to experience-tier default (Rookie → Health, otherwise → Life).
Personal pricing multiplier
Multiply experience × dialer × dials/lead × SMS. Range typically 0.7–1.5×. Applied to base lead price for every tier. Floor 70%, ceiling 150%.
Best-fit badge
Quality preference drives the 'Best Fit' badge: Volume → Volume Build, Premium → Premium A-Stack. For 'Mixed', agencies bias to Volume Build (teams absorb volume), individuals to Real-Time Exclusive.
Reality check verdict
Calculate required close rate to hit goal at user's budget vs their tier's average close rate. ≤0.85 Easy · ≤1.05 Realistic · ≤1.4 Stretch · >1.4 Big Stretch. When stretch+, surface the law-of-averages budget needed to hit goal at average performance.
Conditional flow
Agency selected → seat-count question inserts. Individual → seat question hidden entirely. Dialer = No → 'dials per lead' question skipped (defaults to 3-5 bucket).