#The challenge
Quoting was entirely manual and error-prone: no CPQ, no product catalog, no SKU structure, and no guardrails on start dates or billing contacts. Billing lived in the payments processor while the subscription-management platform was used only for metrics, so no system tied contracts to invoices and the recurring-revenue roll-up had to be assembled by hand. Renewals and expansions were handled ad hoc with no co-terming logic, and one channel was billed outside the main flow entirely.
#The approach
Product catalog and custom CPQ
Built a new HubSpot product catalog with SKUs plus a custom CPQ UI extension covering pilot, new-business, expansion and co-term quoting scenarios, with start-date and billing-email guardrails and PandaDoc e-signature tied to deal close.
CPQ platform migration under a deprecation deadline
Migrated the entire custom CPQ onto HubSpot's newer developer platform ahead of the deprecation deadline, with a defined regression suite that had to pass end to end before cutover.
Billing migration and revenue-recognition fields
Introduced automated active ARR / MRR / TCV and revenue-recognition fields with full churn logic, a Maxio invoice custom object with payment-health fields and Slack notifications, line-item sync, and a historical invoice backfill.
Book reconciliation
Reconciled billing against the CRM so the reported recurring-revenue number and the invoices behind it are produced from the same records rather than maintained separately.
Renewal and expansion motion
Automated renewal-record creation, expansion co-terming, and churn / NRR / GRR reporting, so renewals stopped being a manual quarterly scramble.
Customer-facing renewal-options app
Built an app where a rep publishes up to three renewal options as a one-page link the customer confirms; the confirmation stamps the deal in HubSpot and alerts the deal owner in Slack.
#Outcomes
One reconciled recurring-revenue number, produced by the system
The automated active-ARR field rolls up to a single reconciled figure aligned across the CRM and the GTM data platform, rather than being assembled by hand. This is a measurement capability the new infrastructure provides — not revenue LeanScale generated.
A full quarter of bookings ran through the new engine
New business, expansions and renewals all closed through the new quote-to-cash and revenue-recognition fields rather than around them, within the first full quarter after launch.
CPQ migrated with a full regression pass
The custom CPQ was migrated to the vendor's newer developer platform ahead of the deprecation deadline with every regression scenario passing, so quoting never went down.
Billing engine and renewal app live
The new subscription-billing engine launched with reconciled books, and the customer-facing renewal-options app went live end to end — CRM stamp plus Slack alert to the deal owner.