Founders

How to Model Revenue and Margin from Ten Pricing Interviews

Antonio Evans9 min read

A cluttered desk with ten interview notes spread out, each with a handwritten price range like '$20-$35'.
Key points

Key points

  1. 1Treat each interviewee's willingness-to-pay range as a data point, segment it by use case, and convert the midpoints into a simple demand curve before modeling revenue.
  2. 2Build monthly revenue from three inputs only: price, expected new accounts per month, and churn, where steady-state revenue is roughly monthly new revenue divided by the churn rate.
  3. 3Margin needs variable cost per account (hosting, support, onboarding) subtracted from price before fixed costs, or the model will look profitable while the business is not.
  4. 4Grandfathering early customers at lower prices is a real cost, and you should price it explicitly as foregone revenue before promising it to anyone.

Clean the interview data first

Ten interviews produce ten messy stories, not a spreadsheet. Before any math, reduce each conversation to five fields: an identifier, a use case or segment label, the lower bound of the price they said they would pay, the upper bound, and the sentence explaining why. The reason sentence matters because it tells you whether two people with the same number are in the same segment or not. Willingness to pay is a ceiling that moves with context, so the same dollar figure can mean very different things for a two-person startup and a fifty-person operations team (Conveo).

A worked example helps. Suppose ten interviews give these ranges, in dollars per month:

InterviewSegmentLowHighMidpoint
1Solo operator204030
2Solo operator254535
3Small team609075
4Small team508065
5Small team7010085
6Small team557565
7Agency120200160
8Agency150250200
9Agency100180140
10Agency90160125

Now you have three segments with midpoints. The instinct is to average all ten and get a single number, but that hides the structure. If your pipeline is mostly agencies, the average is dragged down by solo operators who will never buy the expensive plan. Segment first, then decide which segment you are actually building for.

Two cleaning rules save trouble later. First, drop or flag any interview where the person named a range so wide it spans a whole segment (a 10 to 500 answer is not a price, it is a shrug). Second, note whether the number was stated spontaneously or after you showed a price card. Stated willingness to pay tends to run high because agreeing a price is easier than declining it, so a stated figure is a ceiling to discount, not a promise (Conveo).

Turn ranges into a demand curve

A demand curve answers one question: at price P, how many prospects in your pipeline would buy. With ten interviews you cannot draw a statistically robust curve, but you can draw a defensible one. This is the same logic as the Gabor-Granger method, which traces volume at each price point to find where revenue peaks, though those authors warn the output reflects hypothetical demand and should be read as a guardrail rather than a forecast (Conveo).

The simple approach: for each candidate price, count how many interviewees' upper bound sits at or above it. If you charge 75 dollars, everyone whose high bound is 75 or more is a "yes." From the table above, at 75 dollars, eight of ten say yes (interviews 1 and 2 have highs of 45 and 40, so they drop out). At 140 dollars, five of ten remain (interviews 5, 7, 8, 9, 10). At 200 dollars, only interview 8 remains.

Multiply that share by your pipeline to get potential accounts, then by price to get potential revenue:

  • At 75 dollars: 8 of 10, times a pipeline of 40 similar prospects, is 32 accounts, or 2,400 dollars per month.
  • At 140 dollars: 5 of 10, times 40, is 20 accounts, or 2,800 dollars per month.
  • At 200 dollars: 1 of 10, times 40, is 4 accounts, or 800 dollars per month.

The middle price wins here, which is the common shape. Note what happened: dropping the price raised conversion but lowered revenue less than the loss of per-unit dollars, and the highest price left too many people out. This is the decision rule: compute revenue at three or four price points and pick the one that maximizes revenue, not the one with the most yeses.

One caveat on rigor: the aggregate of individual step-shaped willingness-to-pay functions only becomes smooth at large numbers of consumers, and with ten people you have ten steps, not a curve (Economics Stack Exchange). So treat your demand curve as a rough shape, not a precise forecast, and revisit it as interviews accumulate.

Build the monthly revenue model

Now translate the demand curve into monthly numbers. You need three inputs: average price, new accounts per month, and monthly churn. The model has two regimes. In month one, revenue is simply new accounts times price. Over time, revenue approaches steady state where accounts in equals accounts out, and steady-state revenue is roughly monthly new revenue divided by the churn rate.

Run it with numbers. Assume you price at 100 dollars, add 10 new accounts per month, and lose 5 percent of customers each month. Monthly new revenue is 1,000 dollars. At a 5 percent churn rate, steady state is 1,000 divided by 0.05, or 20,000 dollars per month. That is the ceiling if nothing changes. Most early-stage teams find this number uncomfortable, because it shows how much churn caps growth regardless of how well sales does.

The month-by-month version is worth building because the ramp is not instant:

MonthStarting accountsLost (5%)NewEnding accountsRevenue
10010101,000
2100.51019.51,950
319.51.01028.52,850
647.62.41055.25,520
1287.44.41093.09,300
24168.08.410169.616,960

Two insights fall out of this table that a simple average hides. First, growth decelerates long before you hit the steady-state ceiling, so month 12 revenue is less than half of the eventual plateau. Second, the plateau is extremely sensitive to churn. If churn doubles to 10 percent, the steady-state ceiling halves to 10,000 dollars. This is the single most useful number in the model: churn rate is the denominator of everything.

If you want to keep the model honest, build it as a small spreadsheet with named inputs rather than hardcoded cells. A lightweight script works too:

price = 100
new_accounts = 10
churn = 0.05
accounts = 0
for month in range(1, 25):
    lost = accounts * churn
    accounts = accounts - lost + new_accounts
    print(month, round(accounts, 1), round(accounts * price))

Change one input at a time and watch which assumption moves the outcome most. In most early models, churn and new accounts per month dominate price.

Add margin and the variable cost per account

Revenue is not margin. To get margin, subtract variable cost per account from price, then subtract fixed costs. Variable costs in a software business usually include hosting, support, and onboarding time. The US Chamber of Commerce's pricing guide walks through adding up variable costs per product first, then setting price against them, and separates variable costs like materials and per-sale fees from the ones that do not move with volume (US Chamber of Commerce).

Continue the example. At 100 dollars per month, assume variable costs are 25 dollars per account: 10 for hosting, 10 for support, and 5 for onboarding amortized over a year. Gross margin per account is 75 dollars, or 75 percent. At the 93-account month-12 level, gross margin is about 6,975 dollars per month. If fixed costs (salaries, tools, the founder's salary) total 6,000 dollars per month, you are barely profitable at month 12 and comfortably profitable near the 20,000-dollar steady state.

The model is only as good as the cost inputs, and both common pricing guides stress that underestimating fixed and variable costs undermines the whole plan (HubSpot). So keep fixed and variable costs in separate rows and update them monthly.

Margin per account also changes the price decision from earlier. If the 75-dollar price point has the same 25-dollar variable cost, margin per account is 50 dollars, and at 32 accounts that is 1,600 dollars of gross margin. At the 100-dollar price with 20 accounts (from the demand curve), margin is 1,500 dollars. The lower price is now slightly worse on margin, which is why you run the demand curve through the margin calculation, not just revenue.

Test sensitivity to churn, discounting and pipeline

A single-point forecast is a guess. Sensitivity analysis turns the model into a range. Change each input by a plausible amount, one at a time, and record the effect on steady-state revenue and margin.

Here is the same base case (100 dollars price, 10 new accounts, 5 percent churn) with each input flexed:

ScenarioSteady-state accountsMonthly revenueGross margin (75/account)
Base case20020,00015,000
Churn rises to 10%10010,0007,500
New accounts fall to 612012,0009,000
Price cut to 7520015,00010,000
Price cut to 75, variable cost 2520015,00010,000

Read the top row first: doubling churn halves the business. Churn is the highest-leverage assumption you have, so if you are choosing where to spend effort, fixing retention beats raising price in almost every early-stage model. The third row shows that a 40 percent drop in new accounts cuts revenue 40 percent, which is linear and therefore easier to plan around than a churn surprise.

Discounting deserves its own line. The Chamber guide notes that business owners setting prices on guesswork can leave tens of percent of revenue on the table, and discounts compound that (US Chamber of Commerce). Model a 20 percent discount as a separate scenario. At 80 dollars per account with 25 dollars variable cost, margin per account falls from 75 to 55 dollars, a 27 percent margin loss for a 20 percent price cut. That asymmetry is why discounting to win deals is often worse than it looks in the sales conversation.

The fourth and fifth rows are identical on purpose: they show that a price cut only changes the margin outcome if variable cost per account also changes, which it usually does not. Price cuts hurt margin more than revenue, and the model makes that visible.

Price the cost of grandfathering early customers

Grandfathering means letting early customers keep their old, lower price when you raise prices for new ones. It is a common retention tactic, and it is also a liability you should model before you promise it. The trade-off is simple: you keep early customers at a lower price and give up the difference in revenue, and the question is whether that retained revenue plus goodwill is worth more than the uplift you would get by raising prices on everyone.

Work it through with numbers. Say you have 30 early customers at 50 dollars per month, and you are moving new customers to 100 dollars. Grandfathering all 30 costs 30 times 50 dollars, or 1,500 dollars per month in foregone revenue. Over 12 months, that is 18,000 dollars. If raising prices on those 30 customers would cause a third of them (10 accounts) to churn, the comparison is: keep all 30 at 50 dollars (1,500 dollars) versus keep 20 at 100 dollars (2,000 dollars). In this case grandfathering costs you 500 dollars per month in revenue but retains 10 customers, so the question becomes whether those 10 are worth more than 500 dollars in future expansion and referrals. Often they are, but you should decide with the number in front of you, not by instinct.

Model grandfathering as a fourth set of rows in the sensitivity table: a scenario where a share of your base stays at the old price. Then set an explicit sunset. The cleanest grandfathering policy is a fixed window, such as 12 months, so the foregone revenue is capped and predictable. If you promise "locked in forever," model forever, because that is what you said.

The grandfathering decision is also a segmentation decision. If the early customers are in a different segment from your target, grandfathering them costs you little relative to the revenue you are protecting. If they are in the same segment as new prospects, the lower price becomes a visible reference point and can erode the new price. For a structured way to map this, the Business Model Canvas approach of separating customer segments and revenue streams is a useful scaffold (Wikipedia).

From model to next step

Once the model exists, keep it alive. Update new accounts per month, churn and variable cost monthly, and rerun the sensitivity table every time you get a new batch of pricing interviews. Ten interviews is a starting sample, and the model is a living document, not a one-time deliverable, which is the same reason business plans are treated as updatable working documents rather than static reports (Indeed).

If the arithmetic is the easy part and the hard part is building the product or app the model describes, that is the point where a conversation with Quanta (https://quantaintelligence.ai/) is useful: describe the site, app, document or plan you need, and a specialist picks it up and builds it with you.

FAQ

FAQ

How many interviews do I need before the model is trustworthy?

Ten is enough to establish segment structure and a rough demand curve, but not enough to trust precise revenue figures. Treat the output as a range and widen the sensitivity table as you add interviews. The shape of the curve stabilizes as the sample grows, and the aggregate of individual willingness-to-pay steps only smooths at larger numbers (Economics Stack Exchange).

Why divide monthly new revenue by churn to get steady-state revenue?

Because in steady state, the number of accounts gained equals the number lost. If you add 1,000 dollars of new revenue per month and lose 5 percent of your base each month, the base settles where 5 percent of it equals 1,000 dollars, which is 20,000 dollars. The formula is an approximation that assumes constant new revenue and churn, but it is a fast way to see the ceiling your current growth rate implies.

How do I adjust for the fact that people overstate what they will pay?

Apply an explicit, visible discount rather than an inherited one. The research consensus is that stated willingness to pay runs above real behavior because no budget is spent and declining a price is socially harder than agreeing to one (Conveo). Decide on a correction percentage, write it down, and run the demand curve with and without it so the adjustment is a scenario, not a silent habit.

Should I grandfather early customers at the old price?

Only if you have priced the cost first. Calculate the monthly foregone revenue, multiply by the number of months you promise it, and compare that to the revenue you would keep by raising prices and accepting some churn. Cap the promise to a fixed window so the liability is bounded, and revisit the decision at the end of the window.

What is the single most important number in the model?

Churn, because it sits in the denominator of steady-state revenue. A doubling of churn halves the business, while a 20 percent price cut reduces margin per account by more than 20 percent. Build the sensitivity table, flex churn first, and spend your retention effort where the model says it matters most.

Sources

Sources

  1. Willingness to Pay: How to Measure It in Research
  2. Proving that the willingness to pay curve becomes smooth ...
  3. How to Price Your Product for Profit and Growth | CO
  4. One Page Business Plan Template - Word, PDF - HubSpot
  5. Business model canvas - Wikipedia
  6. How To Write a One-Page Business Plan in 5 Steps (Plus Tips) - Indeed
About the author

About the author

Antonio Evans
Antonio Evans

Antonio Evans is the founder of Quanta Intelligence and a fractional CTO who builds HIPAA-ready AI systems for health and life-science companies. Before that he was technical co-founder of FriendsEAT for twenty years, CEO of Socialdraft, and a data engineer at IBM. Antonio lives with his dog Santino in Lisbon, Portugal.

All articles