A parcel misses the party. Someone pays for that.
The courier was late, but nobody is writing to the courier. They're writing to you — and it's you who pays, in the reshipment, the apology discount, the agent's afternoon, and the customer who quietly never orders again. None of it arrives on an invoice, so it rarely gets counted. Put your own numbers in below and we'll do it for you.
Nothing you type leaves your browser. There's no form, no email gate, and no lead capture — the model is the whole point of the page.
Change anything. Watch the arithmetic change with it.
Defaults are a starting point, not a claim about your business. Every field says where its number came from — published, derived, or simply our own experience. The ones we can't source are labelled as ours, and you can set them to zero.
Three models. We tell you which one we'd defend.
A single ROI figure is a decision about how much softness to hide. We'd rather show the softness. Each model is the one before it plus a term you should trust less, so the span can only ever widen to the right — and where the left end sits tells you how much of the case is real money.
Operations only.
The failures that never happen, and the cost of putting each one right that you therefore never pay. Return transit, the agent's time, restocking, the goodwill discount.
This is the end we'd defend in a board meeting. It's invoice-adjacent: the money either left the building or it didn't.
+ the margin you keep.
Customers who would have left, and didn't — either because nothing broke, or because someone fixed it properly. Counted as contribution margin on the orders they go on to place.
This is what we'd actually plan on. It depends on a churn rate nobody can measure precisely, which is why it isn't the floor.
+ the replacement you don't buy.
Every customer you keep is one you don't have to go out and acquire again. At acquisition costs of five to twenty-five times retention, that's not a rounding error.2
Striped, and never the headline. This money is only saved if you would genuinely have gone and bought the replacement — plenty of teams simply run smaller instead.
Every line, in order.
Nothing above happens in a spreadsheet you can't see. This is the whole model, and the widget does exactly this and nothing else.
// what breaks, and what it costs you today failures = orders × failure rate // churn is per customer, not per failed order: two bad experiences // still only lose you one customer, so we count people, not incidents. customers = orders ÷ orders per customer customers hit = customers × ( 1 − (1 − failure rate) ^ orders per customer ) customers lost = customers hit × churn rate forward margin = repeat orders per year × years × AOV × margin % // being chased about an order that was fine. Only non-failed orders: // the agent's time on a failure is already inside cost to fix. chase enquiries = orders × (1 − failure rate) × enquiries per 100 chase prevented = chase enquiries × told first % // the gap is only what broke. Being chased is a real cost, but those // orders were fine — so it is added alongside, never folded in. promise gap = failures × cost to fix + customers lost × forward margin cost of silence = chase enquiries × cost per enquiry today's cost = promise gap + cost of silence // what changes, and what it costs to change it customers kept = customers lost × ( prevented + (1 − prevented) × recovered ) operations = failures × prevented × cost to fix + chase prevented × cost per enquiry margin kept = customers kept × forward margin replacement = customers kept × acquisition cost running cost = 12 × platform fee + orders × rate per order // three points, each the one above plus a softer term conservative = operations balanced = conservative + margin kept full = balanced + replacement // and against the invoice net per year = recovered − running cost return = net per year ÷ implementation × 100 payback months = implementation ÷ ( net per year ÷ 12 )
Margin, not revenue.
A lost €80 order is not €80 of lost profit. Everything on the retention side runs through contribution margin, which roughly halves the number we could otherwise have printed.
Forward-looking lifetime only.
We count the orders a departing customer won't place from here on. The order already in the basket is revenue you've had, so it isn't in the loss.
One steady-state year.
No compounding, no growth curve, no year-three hockey stick. Volume growth would flatter us, and a model you can't check in your head isn't a model.
One rule for every cost.
Your team's time is already inside the cost of putting a failure right, so an enquiry you never had to answer is counted the same way. One rate, applied to both, in both directions — the cost today and the saving tomorrow.
Everything else held constant.
Same orders, same margin, same failure rate, same team. The only thing that changes is the platform underneath — which is what makes the before and the after comparable at all. If you would also switch carrier or tighten a stock policy, those are separate decisions with their own numbers: put them in, and this model gets smaller rather than bigger.
Your price, not our list price.
The fee, the rate per order and the implementation are all yours to type. We publish how Cloud pricing is structured, not a number we'd have to defend against your quote.
Why we halve the churn figure.
The share of customers who leave after a bad experience is the single most powerful number in this model, and the only one you cannot get from your own books. So it is worth being explicit about what the published figure measures — and what it does not.
That question asks what someone expects to do, in the abstract, with no basket in front of them and no inconvenience attached. It is a good measure of how strongly people feel. It is not a measure of what they were observed doing, and people abandon brands far less often than they say they will — particularly when leaving means finding a new supplier who has their sizes, their address and their payment details.
There is no published figure for the behaviour, so we do not pretend to one. We halve the intent figure, say plainly that the halving is a judgement rather than a finding, and leave the field where you can overwrite it. If you have measured your own post-incident retention, that number beats ours outright.
Quoted, linked, and dated.
Same rule as our integration benchmark: no paraphrasing a number we depend on. Where a figure is ours rather than published, we say so instead of borrowing someone else's authority for it.
The share who walk after one bad experience
“One in three consumers (32%) say they will walk away from a brand they love after just one bad experience. This figure is even higher in Latin America, at 49%.”
PwC, Experience is everything: Here’s how to get it right, Consumer Intelligence Series, 2018. Fieldwork: PwC Future of Customer Experience Survey 2017/18 — a representative sample of 15 000 people across 12 countries, surveyed online and in-field, 4 000 of them in the US. Accessed 16 Aug 2026.
pwc.com — Experience is everything (PDF)The cost of replacing a customer
“Depending on which study you believe, and what industry you're in, acquiring a new customer is anywhere from five to 25 times more expensive than retaining an existing one.”
“…research done by Frederick Reichheld of Bain & Company … shows increasing customer retention rates by 5% increases profits by 25% to 95%.”
Amy Gallo, The Value of Keeping the Right Customers. Context for the Full model only — never a multiplier inside the arithmetic. Accessed 16 Aug 2026.
hbr.org/2014/10/the-value-of-keeping-the-right-customersWhere the implementation default comes from
The €40 000 placeholder is integration hours at a typical consulting rate. We publish how that hours range is built, from which figures, and where the derivation is weak on its own page, so you can attack it separately from this one.
The ERP integration benchmark →What acquiring a customer actually costs
There is no audited, cross-industry study of acquisition cost. What exists is platform data, and this is the largest set we found that publishes its method: medians across 4 000+ Shopify brands, tracked since December 2022, stated as medians rather than averages “to avoid skew from outliers”.
Retail $22.74 · Sports & Outdoor $27.66 · Apparel & Accessories $34.03 · Consumer Electronics $43.38 · Beauty & Personal Care $44.29 · Food & Beverage $49.39
Ecommerce Benchmarks: How Do You Stack Up? Accessed 16 Aug 2026
polaranalytics.com/ecommerce-benchmarksWhy to treat this as a direction, not a forecast.
A model that only lists its strengths isn't a model, it's a brochure. These are the parts we'd attack if a competitor published them.
Three numbers are ours, and they are the whole claim
How many failures we prevent, how many customers we keep through recovery, and what share of status enquiries a proactive update makes unnecessary. Everything else on this page is either yours or published; these three are what we assert about our own effect, and we have no controlled study behind them yet. So they are sliders rather than constants buried in the code. Set all three to zero and the model stops making a case for us entirely — it turns negative, and says so.
Stated intent is not behaviour
Every published churn-after-a-bad-experience figure is a survey answer, including ours: PwC asked people at what point they would stop, and 32% said one bad experience was enough. People say they'll leave far more often than they actually leave, especially when leaving means finding a supplier who has their size, their address and their card on file. Halving it is our judgement, not a finding — and it is the one number here you cannot check against your own books.
One year, no compounding, no ramp
A real rollout doesn't deliver its full effect in month one, and a real business doesn't hold volume flat for a year. Both simplifications exist to keep the arithmetic checkable — the first works against us, the second could work either way.
Orders per customer is doing two jobs
Churn belongs to people, not orders: someone who hits two bad experiences in a year still only leaves once. So we count the customers behind your order volume and ask how likely each one is to meet at least one failure. That needs orders per customer, and the field you filled in describes a retained customer's future ordering — close, but not the same thing. If your one-time buyers pull the real figure lower, failures spread across more people and slightly fewer of them are double-counted, so the number here is the cautious end of a narrow range.
Nothing here counts churn caused by silence alone
A customer whose order arrived on time, but who spent four days in the dark and had to chase you twice, is not a “failure” in this model — so if they quietly leave, we don't count it. We think that pool is real, and we have nothing to size it with, so it is absent rather than estimated. That is the one omission on this page that works against us.
The cost side is the easy half
The fee, the rate and the implementation are the only figures here that arrive as an invoice. If you want a version of this argument with nothing soft in it at all, read the Conservative row and ignore everything to the right of it.
Tell us the model is wrong.
Bring your own failure rate, your own margin, your own quote — or an argument for why one of our assumptions is nonsense. We'd rather fix the page than win the point. And if your promises are already kept — few failures, nobody chasing you — then there is little here for us to fix, and this model will tell you that plainly. If the Conservative row doesn't clear your bar, that's a real answer and we'll say so.