Upsell and Cross-Sell: Measure the Profit, Not Just the Revenue
Split revenue from existing customers into expansion, contraction and churn, calculate NRR and GRR, count incremental profit after discounts and commission, and use a holdout group to see what really worked.
In this article
Many companies push their sales teams to sell more to existing customers, because those customers already know the product and trust the company. By year end, revenue from existing customers has indeed grown, yet profit has not moved. The extra revenue came with discounts, commissions and service work nobody billed for, or some of it would have happened anyway without any offer.
This article gives you a three-layer way to measure upselling and cross-selling: how much revenue from existing customers changed, how much incremental profit is left after the cost of each offer, and which sales the offer actually caused.
Upsell versus cross-sell
- Upsell means getting a customer to buy more of the same product or a higher tier. A software customer moves from a 5-user plan to a 20-user plan, or a wholesale account goes from 50 cases a month to 80.
- Cross-sell means selling a different product or service to an existing customer. A machinery seller adds a maintenance contract, or a food manufacturer sells packaging to the same shops.
A price increase on the same product for every customer is not an upsell. It is a pricing decision and should be measured separately (see our article on raising prices). If you mix the two, you cannot tell whether growth came from selling or from price.
Layer one: how revenue from existing customers changed
Take the same group of customers across two periods, for example every customer who bought last year, and split this year's revenue from that group into four parts. Leave out this year's new customers.
- Last year's revenue from the group.
- Expansion: customers buying more, or buying a new product.
- Contraction: customers who stayed but bought less or downgraded.
- Churn: last year's revenue from customers who bought nothing this year.
Those four parts give you two ratios:
Net Revenue Retention (NRR) = (last year's revenue + expansion − contraction − churn) ÷ last year's revenue
Gross Revenue Retention (GRR) = (last year's revenue − contraction − churn) ÷ last year's revenue
Illustrative example: customers who bought last year generated 10.0 million baht. This year the same group expanded by 1.8 million, contracted by 0.4 million, and customers who left had generated 0.9 million. Revenue from the group this year is 10.0 + 1.8 − 0.4 − 0.9 = 10.5 million baht.
- NRR = 10.5 ÷ 10.0 = 105%
- GRR = (10.0 − 0.4 − 0.9) ÷ 10.0 = 8.7 ÷ 10.0 = 87%
Always read the two together. Andreessen Horowitz makes the same point about recurring-revenue metrics: a net figure that offsets upsells against losses understates what you actually lost. If NRR rises while GRR falls, your team is selling more but losing more customers, which is a different problem. Subscription businesses can apply the same method to monthly recurring revenue (see our article on MRR, churn and cohorts).
Layer two: incremental profit after the cost of the offer
More revenue is not the same as more profit. Every offer has its own costs. Work it out like this:
Incremental profit = incremental revenue × gross margin after discount − commission − extra service or installation cost
Illustrative example: a company compares two offers it ran in the same year.
| Item | A. Upsell to a larger package at 20% off | B. Cross-sell a maintenance service |
|---|---|---|
| Incremental revenue | 1,200,000 | 600,000 |
| Gross margin after discount | 20% | 50% |
| Incremental gross profit | 240,000 | 300,000 |
| Commission (5% and 3% of revenue) | −60,000 | −18,000 |
| Service team training | 0 | −40,000 |
| Incremental profit | 180,000 | 242,000 |
| Incremental profit per baht of incremental revenue | 15% | 40% |
Offer A brought in twice the revenue but left less profit. If the sales team is paid commission on revenue, it will always push offer A, which is why many companies move to commission based on gross profit.
Layer three: which sales the offer actually caused
Some customers would have bought more even if nobody had asked. If you credit every purchase after the offer to the offer, it will look better than it is. A method that works for SMEs is a holdout group.
Illustrative example: 400 customers qualify for an offer. Split them at random into two groups of 200 and send the offer only to the first group. After three months, 30 customers in the offer group have upgraded, and 10 in the holdout group have upgraded on their own. The offer's real effect is 20 customers, not 30. The discount you gave all 30 customers has to be spread over the 20 the offer actually added.
Another number worth tracking is the attach rate: the share of customers of your main product who also buy a second one. If 300 of 1,200 machinery customers buy a maintenance contract, the attach rate is 300 ÷ 1,200 = 25%. Tracking it every quarter shows whether cross-selling is improving or slipping.
Traps that make the numbers look too good
- Shifting spend between products. A customer buys the new service but cuts back on the original product. Look at each customer's total revenue, not just the product you sold more of.
- Deeply discounted bundles. Customers who already bought both items get a free discount. Check how many existing customers bought both before the bundle existed.
- Overselling. Customers pushed into a package bigger than they need often downgrade or leave at the next renewal. Follow customers who expanded for another 6 to 12 months and track the GRR of that group separately.
- Forgetting service costs. A second product may take time from your installation or customer success team that never shows up in cost of goods sold.
Where to start
- Pull revenue by customer for last year and this year from your accounting or sales system, and split it into expansion, contraction and churn.
- Calculate NRR and GRR and report them side by side every quarter.
- Work out the incremental profit of each offer after discounts, commission and service costs.
- Keep a holdout group for your next offer. Even a small one tells you which sales the offer caused.
- Tie sales pay to incremental profit, not to incremental revenue alone.
Selling more to existing customers pays off when it adds profit and the customers stay. These three layers show which offers to keep running and which ones just move money from one pocket to another.