stratascratch
  • Interview Questions
    • Interview Loops
    • Analytical
    • Algorithm
    • ML Coding
    • Stats Coding
    • Visualization
    • Concept
  • Data Labs
    • Discover
    • Your Notebooks
  • Mock Interview
  • Learn
  • Blog
  • Pricing
  • About
Log in
  • Interview Questions

    • Interview Loops
    • Analytical
    • Algorithm
    • ML Coding
    • Stats Coding
    • Visualization
    • Concept
  • Data Labs

    • Discover
    • Your Notebooks
  • Mock Interview
  • Learn
  • Blog
  • Pricing
  • About
Log inSign up
Back to Mini Analyses
  1. Assignment
  2. Your Solution
  3. Solution
  4. Solutions from Users
  5. Discussion

Plan Payback and LTV

You must be logged in to download the datasets

HubSpot: Compute payback period, lifetime value, and breakeven customers for each product plan.

Assignment

You're an analyst on the pricing and finance team at HubSpot. Leadership is reviewing the product plan lineup and wants to understand the unit economics of each plan: how long it takes a plan to earn back the cost of acquiring a customer, and what each customer is worth over their lifetime. The plan catalog with acquisition costs, pricing, service costs, churn, and operating costs has been exported for you.

Deliverables

  • For each plan, the number of months until a newly acquired customer breaks even on their acquisition cost.
  • The lifetime value (LTV) of a customer on each plan, and how it compares to the acquisition cost.
  • How many active customers each plan needs to cover its monthly operating expenses.
  • A short closing report for the pricing team: your recommendation on which plans are healthy and which need attention, plus anything they should double-check before relying on the numbers.

Definitions.

  • Monthly margin per customer (margin) =monthly price−monthly service cost= \text{monthly price} - \text{monthly service cost}=monthly price−monthly service cost
  • Payback period (months) =CACmargin= \dfrac{\text{CAC}}{\text{margin}}=marginCAC​
  • Lifetime value (LTV)

Data Description

hubspot_product_plans.csv has one row per product plan:

  • plan_id
  • plan_name
  • cac - customer acquisition cost
  • monthly_price - what a customer pays per month
  • monthly_service_cost - what it costs to serve a customer per month
  • monthly_churn_rate - share of customers who leave each month
  • monthly_opex - the plan's monthly operating expenses

Practicalities

You can solve this in Python, SQL, or a mix of both — StrataScratch notebooks support both languages in the same notebook.

Assume this data comes directly from the finance planning system and hasn't been cleaned, so review it carefully before relying on the numbers. When something looks off, work out what it is and decide how to handle it; when a definition or a final decision is genuinely ambiguous, choose a reasonable option and explain why. There's often more than one valid way to compute a result, so explain the approach you take and the reasoning behind your choices.

What's assessed: your results, and how clearly you explain what you see in the data and justify the choices you make.

=marginmonthly churn rate= \dfrac{\text{margin}}{\text{monthly churn rate}}
=monthly churn ratemargin​
  • LTV-to-CAC ratio =LTVCAC= \dfrac{\text{LTV}}{\text{CAC}}=CACLTV​
  • Customers needed to cover operating expenses =monthly operating expensesmargin= \dfrac{\text{monthly operating expenses}}{\text{margin}}=marginmonthly operating expenses​
  • This question is part of an interview loop

    See the full interview round by round, with questions for each stage.

    Big Tech platforms · Analytics Engineer