Product-led growth as product work
I owned CAC, ARPU, AOV, TTV, retention, and churn at BVXpress and Moovez. Find where users stall, change onboarding or packaging or copy, measure the loop. When paid is in the mix, I will not let last-click set CAC.
Diagnose the stall, change one lever, write the metric back — in-product and on paid mix.
Product-led growth
Unit economics
Instrumentation
Attribution
CAC
ARPU
AOV
TTV
Retention
Churn
Owned at BVXpress & Moovez/Quotely
+45%
TTV / adoption from new onboarding flows (BVXpress)
$450 → $600
ARPU from voluntary module upgrades (BVXpress)
+14%
Retention over 2 years from lifecycle depth (BVXpress)
~$100 CAC
$1,000+ LTV at 12+ month retention (Moovez)
12+ mo
Retention; 70%+ bookings from returning customers (Moovez)
18% CAC
Projected reduction vs last-click (fractional e-commerce MMM)
How I run growth
The scorecard is the job, not a tool list. Same operator at a B2B SaaS suite and a marketplace: find where the loop breaks, change one lever, put a number on it.
- Diagnose the stall — telemetry and opportunity maps before roadmap bets. At BVXpress, fewer than 20% weekly active users despite strong demo feedback. At Moovez, 60%+ checkout abandonment at manual item entry.
- Change one lever — onboarding, messaging, packaging, or spend mix. Not a feature dump. One hypothesis, one release, one measurement window.
- Write the metric back — CAC payback, ARPU, TTV, retention, churn. In-product (Pendo, in-house telemetry, Segment) and on paid (mix model when last-click inflates efficiency).
Where the product loop broke
At BVXpress, demos looked good but users never reached first client-ready output. The value metric was time-to-first-presentation, not “most accurate valuation.”
- WAU under 20% — positive feedback in demos masked workflow non-adoption
- Abandonment before first deal flow — in-app onboarding surfaced users quitting before completing their first engagement
- Wrong headline metric — advisors did not need better analysis; they needed to get out of Excel faster and look professional to clients
- GTM shift — retention analysis showed multi-product adopters (3+) retained at 2× single-product users, driving onboarding depth over acquisition breadth
Four product motions
Activate, convert, expand, retain at BVXpress — instrumented in-product, not a separate growth team.
Activate
+45% TTV / adoption
New user-onboarding flows, including a complex cloud SKU in the 8-product suite. Time-to-first client-ready output was the activation gate.
Convert
+7% conversion
Landing and product messaging: “fastest route from Excel to client presentation,” not “most accurate valuation.” Built MQL→SQL velocity and CAC payback tracking from scratch.
Expand
ARPU $450 → $600
Usage-informed packaging and voluntary module upgrades. Presentation and export tools drove expansion without list-price hikes.
Retain
+14% retention
Personalized onboarding, lifecycle messaging, and lead-routing over two years. Multi-product depth (3+) retained at 2×.
For how value was captured (loss-leader ladder, feature fences, custom deals), see the BVXpress pricing architecture deep dive.
Same scorecard, marketplace
At Moovez/Quotely I owned conversions, retention, and experimentation as founding PM. Marketplace unit economics, not SaaS ARPU.
Unit economics
~$100 CAC with $1,000+ LTV and 12+ month retention. Real-time pricing reduced quote-to-payment drop-off.
Retention
Segment instrumentation showed 70%+ of bookings from returning customers, shifting roadmap priority to lifecycle messaging over new-user acquisition.
TTV
Quote time 60 min → 3 min (20× faster). Customers expected a price in under 2 minutes; speed-to-quote was the primary booking driver.
AOV & churn
Owned and instrumented. Fill rate reached ~93% vs ~70% industry average as the commercial outcome of the quote-to-dispatch loop.
Full quoting and ops context: Moovez case study on the portfolio index.
When last-click overstates CAC
On a fractional e-commerce engagement, the client optimized spend on last-click attribution. That model gives 100% of a conversion to the final ad clicked, making assist channels look wasteful and the last-click channel look artificially cheap. Teams then overspend on the “efficient” channel and cut the ones that actually created demand.
Last-click dashboard
- Over-credits final touchpoint
- Cuts brand and upper-funnel spend
- Perceived CAC looks better than mix delivers
- Budget follows vanity, not contribution
Bayesian media mix model
- 134,900 records across 6 spend channels
- Projected 18% CAC reduction from mix-informed shifts
- 24% ARPU increase from segmentation-informed spend (not BVXpress $450→$600)
- Budget follows contribution, not last click
R · GA4 · HubSpot · adstock · Hill saturation · ridge regression
Related work
Eval depth
Four-layer eval harness for Quotely (separate from growth scorecard):
Quotely evals.