Skip to main content
reopt Handbook
reopt Handbook
Customer Conversion Simulation

Reading Guide

How to Read the EvidenceConversion Rate Intervals

Conversion Atlas

Conversion Atlas by ChannelConversion Atlas by ProductConversion Atlas by RoleKorean Conversion Atlas

Paid Marketing

Paid Channel BaselinesReported and Incremental ConversionsCreative, Retargeting, and Saturation

Referral Marketing

Referral Funnel MetricsReferral Experiments and Limits to Spread

Partners and Influencers

Influencer Marketing ConversionPartnerships, Collaborations, and Sponsorships

Ecommerce

Ecommerce Conversion BaselinesEcommerce Funnels and CartsEffect Sizes of Ecommerce Levers

SaaS

Self-Serve SaaS ConversionEarly-Stage SaaS ConversionSales-Led Conversion

Apps

Mobile App Acquisition and RetentionApp Subscription ConversionDesktop App Conversion

Consultation and Application Forms

Building Forecasts

Expert Forecasts and CalibrationChoosing a Forecasting ModelLLM Synthetic Customers

Korean Case Studies

Korean Cases: Advertising and CommerceKorean Cases: Consultations, Finance, and Public Experiments

Appendix

Handbook›Customer Conversion Simulation›Conversion Rate Intervals
한국어KOEnglishEN

Conversion Rate Intervals

Turn a benchmark into a beta distribution, simulate funnel uncertainty with Monte Carlo, and update the forecast with pilot results using interactive calculators.

Written and reviewed by Eric Han · Co-founder & CTO, reopt

Key takeaways

  • A beta distribution defined by mean μ\muμ and concentration kkk turns a benchmark into a range. At a 3% mean and k=200k=200k=200, the 90% interval is 1.32–5.21%.
  • When quantiles are available, fit the mean and kkk together. Littledata conversion data fit roughly a 1.8% mean and k≈71k\approx71k≈71. Otherwise, choose concentration using mean × kkk.
  • Updating after a pilot is simple: add conversions to α\alphaα and nonconversions to β\betaβ.
  • The simulator's expected-count interval captures uncertainty in rates. When counts are small, also inspect the actual-count interval and the probability of zero conversions.
  • A small mean × kkk lowers the median even with an unchanged mean. When transferring a benchmark between contexts, widen the interval and assess outcomes at the 5th percentile instead of cutting the mean.
  • We found no direct empirical evidence that turning benchmarks into priors improves forecast accuracy. Concentration kkk is a judgment call; sensitivity analysis is essential.

The Problem with a Single Number

Multiplying benchmark values to predict “100 conversions” gives no indication of how far the actual outcome might differ. Budget approval needs a view of downside outcomes and which stage contributes the most uncertainty.

The Beta Distribution

A conversion rate lies between 0 and 1, making the beta distribution useful. Combining a beta prior with binomial observations produces a beta posterior (BDA3, Chapter 2).

p∼Beta(α,β),μ=αα+β,k=α+βp \sim \text{Beta}(\alpha, \beta), \quad \mu = \frac{\alpha}{\alpha + \beta}, \quad k = \alpha + \betap∼Beta(α,β),μ=α+βα​,k=α+β

kkk controls the spread around the mean. For your own sample it can be interpreted as an equivalent number of observations, but that interpretation does not transfer directly to a benchmark. The intervals below are this book's calculations from 200,000 Monte Carlo draws.

90% intervals by concentration k at a 3% mean
Dots show medians; bars show the 5th–95th percentiles. Calculated for this book.
  • k = 502.40% (0.36% ~ 7.70%)
  • k = 2002.85% (1.32% ~ 5.21%)
  • k = 1,0002.97% (2.17% ~ 3.94%)

Estimate kkk from Quantiles

With published 10th and 90th percentiles, estimate the standard deviation and use the beta-distribution identity to obtain kkk. This normal approximation is rough for skewed distributions.

σ≈P90−P102.56,k=μ(1−μ)σ2−1\sigma \approx \frac{P_{90} - P_{10}}{2.56}, \quad k = \frac{\mu(1-\mu)}{\sigma^2} - 1σ≈2.56P90​−P10​​,k=σ2μ(1−μ)​−1

Littledata's conversion figures (median 1.4%, 10th–90th percentiles 0.3–3.7%) give k≈77k\approx77k≈77. This describes differences between stores, an appropriate uncertainty when you do not know where your store falls. However, substituting a median for the mean moves the distribution's center down to about 1.0%. For skewed data, increase the mean as part of the fit. Fitting all three quantiles gives a mean of approximately 1.8% and k≈71k\approx71k≈71 (calculated).

Choosing kkk for Your Context

There is no standard rule. This book chooses mean × kkk, rather than kkk directly, because it determines the distribution's skew. Divide mean × kkk by the mean to obtain kkk.

ContextMean × kkkkkk at a 2% mean
Quantiles available for the same category and marketFit the mean and kkk to the quantiles. Between-company distributions yield 0.6–2.5Depends on the data
Only one value, or a different context, such as US data applied to Korea1–250–100
Same industry and company sizeAround 4200
Your own historical dataAt least 16, or a fraction of the historical sample sizeAt least 800

For rates above 50%, use (100% − mean) instead of the mean. When mean × kkk is below 1, mass piles up near zero; avoid this unless fitting published quantiles. Do not compare confidence using kkk alone: a low rate such as 0.016% can require a kkk in the thousands for the same uncertainty.

Mean × kkk and the Median

Even with a fixed mean, skew makes the displayed median lower than the point estimate. More stages amplify this effect. The table gives median ÷ point estimate (this book's calculations). It resembles a discount factor but arises from the distribution's shape.

Mean × kkk1 stage2 stages3 stages
0.50.480.150.04
10.720.410.24
20.850.660.51
40.930.820.73
80.960.910.85

If the source gives a median, increase the mean so the distribution's median matches it. With aaa = mean × kkk, the mean is approximately median × aaa ÷ (aaa − 1/3). The approximation error is about 5% at a=1a=1a=1 and 1% at a=2a=2a=2.

Do not reduce the mean simply because the context differs. No published discount factor supports transferring a benchmark to a new store or another country. Lower mean × kkk to widen the interval, then make budget decisions at the 5th percentile rather than the median.

Funnel Simulation

Repeatedly draw a value for each stage and multiply the draws.

This uses only the standard library (Python 3.12 or later). It reproduces approximately the B2B SaaS example's expected-count quantiles of 0.07, 3.7, and 26 customers, an actual-count interval of 0–27, and a roughly 22% probability of zero. The simulator's currency is illustrative; calculations work the same with your currency.

Estimate your funnel's interval

Run the calculation above in your browser. Changing inputs updates distributions and sensitivity, and results can be shared by link. Total cost affects only cost per conversion, not incoming volume.

Fixed inputs
Stage rates

k sets the spread around the mean. For the same mean, a larger k narrows the interval. A small mean×k skews the distribution and pulls the median below the mean.

Stage 1 conversion
Stage 2 conversion
Final conversions
3.7conversions
90% interval 0.1conversions ~ 27.2conversions
Mean 7.3conversions · Actual count 0conversions ~ 28conversions · Chance of zero 21%
Cost per conversion
$2,720
90% interval $368 ~ $149,000
Distribution of Final conversions5% 0.1conversions · Median 3.7conversions · 95% 27.2conversions
0.0conversions23.0conversions46.0conversions
Inputs that move the result most

Each input alone moves to its 5th and 95th percentile with others at the mean. Measure the top one first.

  • Stage 2 conversion0.1conversions ~ 23.7conversions
  • Stage 1 conversion2.8conversions ~ 13.0conversions

8,000 runs. Stages are independent. If they move together the real interval is wider; if they move in opposite directions it is narrower. The 90% interval holds only rate uncertainty around the expected value; the actual count adds chance variation in counts. Vertical lines mark the 5th percentile, median (darker), and 95th. The last bin collects values above the 99th percentile.

Limits of the independence assumption

Low ad quality can depress both click-to-signup and signup-to-paid conversion. When stages move together, the real interval is wider. Conversely, a credit-card-required trial can reduce entry while increasing downstream conversion, narrowing the interval. Either way, read the 5th percentile as the start of an unfavorable scenario, not an absolute worst case.

Expected Counts and Actual Counts

The simulator's 90% interval for expected counts captures only uncertainty in rates. Actual counts also include random variation: an expected count of 1 can produce 0 or 2. Count outputs therefore also show the mean, actual-count interval, and probability of zero.

The difference matters most at low volumes. For 10,000 cold emails, the expected number of wins spans 0.01–0.90, but actual counts span 0–2 and the probability of zero is approximately 78%.

Use quantiles rather than means for ratio outputs such as CAC. Near-zero counts can inflate the mean dramatically. To estimate an average unit cost across campaigns, divide the budget by the mean conversion count.

Update with Pilot Results

p∣y∼Beta(α+y, β+n−y)p \mid y \sim \text{Beta}(\alpha + y,\ \beta + n - y)p∣y∼Beta(α+y, β+n−y)

The posterior mean lies between the sample rate and the prior mean.

Illustrative example. A 3% benchmark with k=200k=200k=200 gives Beta(6, 194). Observing 40 conversions from 2,000 visits yields Beta(46, 2154), with a 2.09% mean and a 90% interval of 1.62–2.62%. The mean moves substantially from the 3% benchmark toward the pilot's 2.0%.

Sensitivity Analysis

  1. Halve and double kkk to see how the interval changes.
  2. Move each stage individually to its own 5th and 95th percentiles to find which stage moves the result most. This is the simulator's input-sensitivity calculation. Moving every mean by the same relative amount, such as ±20%, gives identical effects in a multiplicative funnel and cannot rank stages.
  3. Spend pilot budget first on the stage with the largest effect on uncertainty.

When Not to Use This Approach

  • The benchmark population differs greatly from yours, but you set a high mean × kkk.
  • A new product changes the market itself. Also consider models such as Bass.
  • A few customers dominate revenue. The distribution of monetary outcomes matters more than the count distribution.

Related docs

How to Read the Evidence

Check evidence grades, denominators, samples, and conflicts of interest before trusting conversion figures, and establish rules for using benchmarks in forecasts.

Expert Forecasts and Calibration

Reduce optimism with reference-class forecasts and small expert ensembles, calibrate simulations with pilots, and track the gap between predictions and outcomes.

How to Read the Evidence

Check evidence grades, denominators, samples, and conflicts of interest before trusting conversion figures, and establish rules for using benchmarks in forecasts.

Conversion Atlas by Channel

Compare click-through rates, conversion rates, and costs across Google search, Meta, TikTok, LinkedIn, email, and referrals with evidence grades.

On this page

The Problem with a Single NumberThe Beta DistributionEstimate kkk from QuantilesChoosing kkk for Your ContextMean × kkk and the MedianFunnel SimulationExpected Counts and Actual CountsUpdate with Pilot ResultsSensitivity AnalysisWhen Not to Use This Approach