Skip to content

Metrics, testing and tracking

Revenue per visitor (RPV): the north-star metric for VSL tests, with EPC, RPM and break-even math

Revenue per visitor is total revenue divided by unique visitors. It folds conversion rate, order value and upsells into one number you can compare directly with your cost per visitor. Here are the formulas, the break-even math, and the traps that make RPV mislead.

By the RevvyScales teamUpdated 13 min read

On this page
  1. How do you calculate revenue per visitor?
  2. Why RPV beats conversion rate for judging VSL tests
  3. RPV vs EPC vs RPM vs revenue per view
  4. How to calculate break-even RPV from your ad costs
  5. How sample size and outliers distort RPV
  6. Using RPV to judge headlines, posters, offers and traffic sources
  7. Using RPV to decide how far to scale
  8. An RPV checklist for your next test
  9. Frequently asked questions

Revenue per visitor (RPV) is total revenue divided by unique visitors in the same period. Because it equals conversion rate times revenue per buyer, upsells included, it tells you in one number whether a VSL change made money, and you can compare it directly with what each visitor costs. Break-even RPV is your cost per visitor divided by your contribution margin.

How do you calculate revenue per visitor?

Revenue per visitor

RPVtotal revenue ÷ unique visitors

RPVconversion rate × revenue per buyer

Say 3,000 visitors produce 66 orders and $5,940 of revenue, front end plus upsells. RPV = $5,940 ÷ 3,000 = $1.98. The same number falls out of its two parts: conversion rate (66 ÷ 3,000 = 2.2%) times revenue per buyer ($5,940 ÷ 66 = $90), and 0.022 × $90 = $1.98. RPV is the last link in the VSL metrics chain, the number every stage above it feeds.

Put your own numbers in here. The calculator starts with this example and the 60% margin used in the break-even section below:

Calculator

Revenue per visitor calculator

From one traffic source or one VSL over the same period.

Revenue per visitor (RPV)$1.98
Conversion rate
2.2%orders ÷ unique visitors
Revenue
$5,940
Break-even cost per visitor
$1.19the most a visitor can cost you

If one ad click brings one visitor, the break-even cost per visitor is also your break-even cost per click.

What you put into "revenue" decides what the number means:

  • Include everything the visit produced: front-end orders, order bumps, upsells and downsells. Leaving out upsells hides the effect of any change that alters who buys.
  • Use net revenue once refunds and chargebacks have had time to arrive. Until then, apply your own historical refund rate.
  • Keep one attribution rule. If a visitor buys three days later from an email, decide whether that sale belongs to the visit, then apply the rule to every variant.
  • Report in one currency, converted at a consistent rate.

Why RPV beats conversion rate for judging VSL tests

Conversion rate counts buyers. RPV counts money. Many VSL tests move both, and sometimes in opposite directions. Three illustrative tests:

Higher conversion rate, lower RPV, three times

Three illustrative tests: revenue per visitor of each version

Price: $79Conversion rate 2.0%, revenue per buyer $100$2.00
Price: $49Conversion rate 2.6%, revenue per buyer $72$1.87
Bundle order: 1 unit shown firstConversion rate 2.4%, revenue per buyer $85$2.04
Bundle order: 3-unit bundle firstConversion rate 2.2%, revenue per buyer $105$2.31
Headline: curiosityConversion rate 1.9%, revenue per buyer $96$1.82
Headline: specific promiseConversion rate 1.8%, revenue per buyer $110$1.98
Highlighted: the version that earns more per visitor in each pair.

In every pair, the version with the higher conversion rate earns less per visitor. A cheaper price brings more buyers who spend less. Showing the single unit first sells more single units. A curiosity headline can pull in buyers who were less sure of what they wanted and who skip the upsells. Judged by conversion rate, you would pick the losing version all three times.

RPV also connects straight to your costs. Conversion rate can't tell you whether a visitor who cost $1.50 paid for themselves; RPV can. The VSL conversion rate guide shows the same logic from the conversion side, as a break-even conversion rate, and the VSL offer guide covers presenting bundles and prices.

RPV vs EPC vs RPM vs revenue per view

Here are the five side by side:

Five revenue metrics, and what each is best for

RPVrevenue ÷ unique visitors. Best for: judging pages, tests and sources

Revenue per viewrevenue ÷ page loads. Best for: infrastructure-level reporting

Revenue per viewerrevenue ÷ visitors who started the video. Best for: judging the video apart from the page

EPCrevenue ÷ CTA clicks. Best for: judging the offer and checkout

RPMRPV × 1,000. Best for: reading small RPV changes

How to use them together:

  • EPC isolates the back half of the funnel. If EPC holds while RPV falls, fewer people are clicking, so look at the video and the pitch. If EPC falls while CTA click rate (CTA clicks ÷ pitch viewers) holds, buyers are being lost after the click, so look at the offer page and the checkout.
  • EPC means different things in different places. A dashboard may compute it per buy-button click, an affiliate network per affiliate-link click, a media buyer per ad click. Confirm the definition before you compare two reports.
  • RPM is not comparable with CPM. Your ad's CPM is cost per 1,000 impressions; RPM here is revenue per 1,000 visitors. To compare money in with money out, set RPV against cost per visitor.
  • Pick visitors or views and stay there. If 2,000 visitors produce 2,500 page loads and $4,000, RPV is $2.00 and revenue per view is $1.60. Both are correct; mixing them across tools or variants is not. In a split test, assign and count by visitor: if one variant makes people reload more (a slow page, say), revenue per view penalizes it for the reloads as well as for any lost sales.

In RevvyScales, the analytics report RPV, EPC and RPM alongside revenue, orders and conversion rate, with per-variant breakdowns for tests (reading your analytics).

How to calculate break-even RPV from your ad costs

Cost per visitor (CPV) = ad spend ÷ unique visitors = CPC ÷ landing rate, where landing rate is unique visitors ÷ link clicks. Working from CPM instead: CPV = CPM ÷ (1,000 × CTR × landing rate).

Contribution margin (m) = the share of revenue left after product costs, fulfillment, payment fees and affiliate commissions, before ad spend. If your revenue figure still includes orders that will be refunded, subtract refunds here too.

The two formulas to remember

Break-even RPVCPV ÷ m

Profit per visitorRPV × m − CPV

Worked example: a $15 CPM, a 1.25% CTR and an 80% landing rate give CPV = $15 ÷ (1,000 × 0.0125 × 0.80) = $1.50. With a 60% margin, break-even RPV = $1.50 ÷ 0.60 = $2.50. A page earning $2.80 per visitor makes $2.80 × 0.60 − $1.50 = $0.18 per visitor, or $1,800 per 10,000 visitors.

Run the formula backward to find the most you can pay for a click: break-even CPC = RPV × m × landing rate. At an RPV of $2.80, that is $2.80 × 0.60 × 0.80 = $1.34.

This turns traffic decisions into arithmetic. Here are three illustrative ad sets feeding the same VSL, with a 60% margin. A and B land 80% of their clicks; C lands 75%:

Three ad sets feeding one VSL

Illustrative numbers, 60% margin

Makes a little moneyAd set A

  • Landing rate: 80%
  • CPC: $0.80
  • Conversion rate: 1.6%
  • RPV: $1.76
  • +$0.06 profit per visitor
  • Break-even CPC: $0.84

Loses moneyAd set B

  • Landing rate: 80%
  • CPC: $1.60
  • Conversion rate: 3.0%
  • RPV: $3.00
  • −$0.20 profit per visitor
  • Break-even CPC: $1.44

Same RPV as B, lower CPVAd set C

  • Landing rate: 75%
  • CPC: $1.20
  • Conversion rate: 2.4%
  • RPV: $3.00
  • +$0.20 profit per visitor
  • Break-even CPC: $1.35

Ad set B has the best conversion rate and loses money on every visitor, because it pays more per click than its RPV can support. C earns the same RPV at a lower cost per visitor ($1.60 against B's $2.00). A converts worst and still makes a little money, because its clicks are cheap.

How sample size and outliers distort RPV

Most visitors are worth $0

At a 2.5% conversion rate, 97.5% of visitors produce no revenue and a few produce a lot. That makes RPV much noisier than it looks. Its uncertainty is measured by the standard error of the mean: the standard deviation of revenue per visitor divided by the square root of the number of visitors. With thousands of visitors, a 95% confidence interval is roughly RPV ± 1.96 standard errors (NIST on confidence limits for the mean).

When every order is worth about the same amount A, there is a shortcut:

Worked example: 2,000 visitors, 50 orders of $100 each. RPV = $2.50. Standard error = $100 × √(0.025 × 0.975 ÷ 2,000) = $0.35. The 95% interval runs from about $1.82 to $3.18, so with 2,000 visitors you know this page's RPV only to within roughly ±27%.

When order values vary (bundles at $69, $177 and $294, say), the spread is wider still. In that case, compute the standard deviation in a spreadsheet from one row per visitor, zeros included, rather than from the orders alone.

How much traffic an RPV test needs

Now add version B: 60 orders of $100 on 2,000 visitors, so RPV = $3.00, a 20% lift. B's standard error is $0.38. The standard error of the difference is √(0.35² + 0.38²) = $0.52, so the $0.50 lift is less than one standard error from zero (z ≈ 0.97). For 95% confidence, z needs to reach 1.96. If those rates held, you would need about 8,200 visitors per version just to reach that line, and about 16,800 per version to have an 80% chance of detecting a true 20% lift.

The lesson isn't to stop judging by RPV. It's to plan for the traffic, judge on complete weeks, and use faster metrics (play rate, pitch reach, CTA click rate) to stop clear disasters early while RPV decides the close calls. The VSL A/B testing guide covers test design in full.

One big order can flip a test

Version A: 1,500 visitors and 30 orders of $60, so RPV = $1.20. Version B: 1,500 visitors, 28 orders of $60 plus one $900 order from someone who bought fifteen units, so RPV = ($1,680 + $900) ÷ 1,500 = $1.72. B looks 43% better.

Now cap every order at your largest standard bundle, say $180, using a rule you set before the test began. B becomes ($1,680 + $180) ÷ 1,500 = $1.24. A 3% lead, built on one fewer order than A, is noise.

Here is the same test before and after the cap:

One $900 order flips the test

Illustrative: 1,500 visitors per version, orders of $60

Version A30 orders of $60$1.20
Version B, raw28 orders of $60 plus one $900 order: looks 43% better$1.72
Version B, that order capped at $180A 3% lead, built on one fewer order than A$1.24

Ways to protect a test:

  • Cap order values at a level set in advance, such as your largest standard bundle or a high percentile of past orders, and report capped RPV next to raw RPV.
  • Recompute without the top order or two. If the winner changes, you don't have a winner yet.
  • Look at the parts. A real RPV win normally shows up in conversion rate, revenue per buyer or both, across several days rather than in a single order.

Using RPV to judge headlines, posters, offers and traffic sources

What you're testingDecide byEarly readGuardrails
Headline or posterRPVplay or unmute rate, pitch reachrefund rate
Video edit or leadRPVpitch retentionrefund rate
Offer, price or bundlesRPVCTA click rate, revenue per buyerrefund rate, support tickets
UpsellsRPVupsell take ratefront-end refunds
Traffic source or ad setprofit per visitorlanding rate, play raterefund rate

Two notes:

  • Traffic sources are judged on profit, not RPV alone, because their costs differ. Compute profit per visitor = RPV × m − CPV for each source, as in the ad-set table above.
  • Automated traffic shifting follows the same math. In RevvyScales, smart traffic split (Growth plan and up) moves a folder's traffic toward the VSLs earning the most per viewer, judged on complete days (smart traffic split). Whether you shift traffic by hand or let a tool do it, RPV needs enough volume before a lead means anything.
Smart traffic split in a RevvyScales folder's traffic settings: an on/off switch and three cards, Ranked by RPV, Learn then cut, and Safe by design
  1. Ranked by RPVRevenue per visitor decides which of the folder's VSLs gets more traffic.
  2. Complete daysChanges are judged on complete days only, and each one lands in the activity log.
Smart traffic split in a folder's settings in RevvyScales (test data).

Upsells deserve separate attention because they change revenue per buyer without touching conversion rate; the upsell funnel guide covers the offer side.

Using RPV to decide how far to scale

Averages hide what happens at the margin. When you raise a budget, the platform has to find more people, and both cost per visitor and RPV can move. Judge the extra spend by the extra visitors it buys, not by the new blended average.

An illustrative example, with a 60% margin:

Scaling from $600 to $1,800 a day

Illustrative example, 60% margin

$600 a day

  • CPV: $1.50
  • Visitors: 400
  • RPV: $2.80
  • Revenue: $1,120
  • +$72 profit after ads

$1,800 a day

  • CPV: $1.80
  • Visitors: 1,000
  • RPV: $2.70
  • Revenue: $2,700
  • −$180 profit after ads

What the extra $1,200 a day bought

  • 600 extra visitors at $2.00 each
  • $1,580 of extra revenue, or $2.63 per visitor
  • Each extra visitor lost $0.42

The blended RPV barely moved, from $2.80 to $2.70, which looks harmless. But the extra $1,200 a day bought 600 extra visitors at $2.00 each, and they produced $1,580 of revenue, or $2.63 per visitor. On average, each extra visitor lost $0.42 ($2.63 × 0.60 − $2.00), enough to turn a profitable campaign into a losing one.

The decision rule:

  • Marginal CPV = extra spend ÷ extra visitors
  • Marginal RPV = extra revenue ÷ extra visitors
  • Keep scaling while marginal RPV × margin stays above marginal CPV. Raise budgets in steps and give each step complete days before you compare.

An RPV checklist for your next test

Tick these off as you plan and run the test; the ticks stay in this browser:

Seven checks for an RPV test

0 of 7 done

Frequently asked questions

What is a good revenue per visitor for a VSL?

Any RPV above your break-even, which is your cost per visitor divided by your contribution margin. If visitors cost $1.50 and you keep 60% of revenue after product costs, fees and refunds, you need at least $2.50 per visitor. Generic RPV benchmarks ignore your prices, costs and traffic, so they can't tell you whether yours is good.

Is revenue per visitor the same as average order value?

No. Average order value is revenue divided by orders, so it only describes the people who bought. Revenue per visitor divides the same revenue by every visitor, buyers or not, so it equals conversion rate times revenue per buyer. A change that raises order value but loses buyers can lower revenue per visitor, which is why RPV is the better test metric.

Should RPV include upsells and refunds?

Yes to both, eventually. Include upsells, bumps and downsells, because many VSL changes affect how much buyers spend as well as how many buy. Refunds take weeks to arrive, so while a test runs, use gross revenue with your historical refund rate applied, then recompute with actual refunds before you record the final result.

Can RPV go up while conversion rate goes down?

Yes. If a higher price or a bigger default bundle loses a few buyers but each remaining buyer spends more, revenue per visitor rises while conversion rate falls. The reverse happens too: a cheaper offer can convert better and earn less. That is why judging a test by conversion rate alone can pick the version that makes less money.

What is the difference between revenue per visitor and revenue per session?

A visitor is one person, counted once in the period, while a session is one visit, and one person can have several. Revenue per session is lower whenever people come back, and it can penalize a variant that brings more return visits. For VSL tests, use visitors, because split tests assign and remember people rather than sessions.

Sources

  1. Confidence limits for the mean — NIST/SEMATECH e-Handbook of Statistical Methods