Bring the try-on experience to your physical store with Antla Retail.

Blog
June 18, 2026

Virtual Try-On ROI Calculator for Merchants

Calculate try-on ROI from holdout incremental margin, minus plan fees, usage, and staff time. Three scenarios, and the conservative one decides payback first.

Aaron
Aaron
10 mins read

ROI for a try-on app is incremental gross margin from orders the holdout says you would not have taken, minus the subscription, usage, and the hours to run it. Build three scenarios and let the conservative one decide. Payback is the month when cumulative incremental margin covers cumulative cost.

Three envelopes marked low, base, and high beside a calculator, a crossed-out calendar, and a returns box

Low, base, and high stay in separate envelopes. The crossed-out months are the payback question. Editorial image in Classic Antla disposable-camera style.

Price lists are the easy part of this decision. The hard part is which orders count as caused by the tool, and which costs you forgot because they are someone’s Tuesday. This is a worksheet for that arithmetic. It keeps the same URL as the earlier pricing note, and it replaces the looser version with a conservative case you can defend in a budget meeting.

Shopify’s conversion guide is the right frame: the rate that matters is a profitable order, on a denominator you can explain. Industry benchmarks will not price your app.

Define incremental margin

Incremental margin is the contribution from orders you would have missed without the offer, minus the contribution you lost if the offer increased returns or discounts. It is a money figure. It is not a conversion rate, and it is not revenue.

Start from a holdout, as laid out in measuring virtual try-on incrementality:

Incremental orders = orders per eligible shopper (exposed) minus orders per eligible shopper (holdout), times exposed eligible shoppers

Then:

Incremental margin = incremental orders × net revenue per order × contribution margin after variable costs

Net revenue per order means what you keep after discounts, not the sticker price. Contribution margin here means what remains after cost of goods, payment fees, pick-and-pack, and an allowance for returns you expect on those orders. Apply the same allowance rules to both arms so the holdout and the exposed side are priced alike.

If you have measured a return-rate gap on the same holdout, after the return window, you can add the processing cost you avoided. Shipping a return, inspecting it, and marking it down are real costs. Count them once. A common double count is to claim the saved return and also to claim full margin on the original order as if the unit never came back. Pick one treatment and write it on the sheet.

Until that return gap is measured, set return savings to zero. Hope is not a line.

Two Antla associations are often pasted into this box. Treat them as hypotheses, not as your incremental margin.

Try-on users converted 35% higher, on average, than shoppers who did not complete a try-on. The comparison group is non-users who were not randomly held out. Antla merchant reporting, cohort dates not published. That gap is the eager-shopper pattern described in selection bias. It can inspire a scenario. It is the wrong number to book.

Some merchants have seen returns as much as 30% lower than the return rate on a comparable cohort of orders from shoppers who did not use try-on. The comparison group is that non-user order set, and the figure is a relative reduction, not thirty percentage points. Antla merchant reporting, cohort dates not published. Leave it out of the conservative case. If you include it anywhere, label the row “upside, unproven on our holdout.”

NRF and Happy Returns reported $890 billion in US retail returns for 2024. That is the scale of the industry problem. It is not your store’s savings. Your savings are the holdout’s return bills minus the exposed arm’s return bills, times your cost to process one return. Multi-size bracketing orders belong in that bill when you can see them in the order data.

The 3.8% try-on-user conversion rate does not enter this calculator. It is a rate among people who finished a preview, across more than 500,000 try-ons, and it has no holdout beside it. Antla merchant reporting, cohort dates not published. Multiplying 3.8% by your sessions will invent orders.

Include usage and operational costs

Cost is everything you would stop paying if you turned the tool off, plus the time you would get back.

Plan and usage. Antla’s pricing is the source for rates. As published on that page: Trend is $19.99 a month with 100 try-ons, then $0.16 each. Runway is $49.99 with 500, then $0.12. Unlimited Fashion is $199.99 with 2,000, then $0.09. Each plan includes a 7-day trial. Check the page before you lock a budget. Rates move, and the worksheet should follow the page.

Usage is starts that generate, not button impressions. Estimate it from eligible shoppers times the adoption rate on that template, using your definition from adoption rate. A month with a campaign will spike starts. Price the spike on the overage, not on the base fee alone.

Operational time. Put hours on the sheet at a loaded rate your finance lead accepts. Typical early hours:

  • Choosing hero products and checking that the product photo is the front view the model needs.
  • Writing the caption that says the preview is generated and that size lives in the chart.
  • Teaching support what the image does and what it refuses to do.
  • Pulling the holdout counts once a week.
  • Spot-checking generations when a fabric or a logo starts coming back wrong.

I would budget a real first month, often several days, and a smaller steady month. A worksheet that assumes zero staff time will “pay back” on paper and consume a person in practice.

Leave out. Brand marketing you would have run anyway. A photoshoot you needed for the gallery regardless. The salary of an employee who glanced at a dashboard. Those are not try-on costs. Software cost patterns across the market are context. Your invoice plus your hours are the cost column.

Antla is the Shopify app these plan rates refer to. The calculator still works if you swap in another vendor’s fee. The holdout rule does not change.

Model conservative scenarios

Three envelopes, same store, different beliefs. Every input below is a teaching example so you can see the formula. Replace all of it with your holdout and your invoice. None of it is a benchmark.

Shared inputs for the example:

  • Exposed eligible shoppers in a month: 20,000. Holdout is measured separately and already baked into the rate gap.
  • Net revenue per order: $88.
  • Contribution margin after product cost, fees, and a standard return allowance: 45%.
  • So one incremental order is worth $88 × 0.45 = $39.60 of margin.
  • Plan: Runway, $49.99, 500 included, $0.12 after.
  • Starts: 2,000. Overage: 1,500 × $0.12 = $180.
  • Staff: 6 hours × $45 = $270.
  • Monthly cost = $49.99 + $180 + $270 = $499.99.
ScenarioExtra orders per 100 exposed shoppersIncremental ordersIncremental marginCostMonth result
Conservative0.000$0$500Loss of $500
Base0.1530$1,188$500About $688
Upside0.40, plus a return saving you have not measured80, before any return line$3,168$500A larger gain you should not promise

The conservative row is a real possibility: the holdout matches the exposed arm, and you still pay the invoice and the hours. If your interval on the rate gap includes zero, this is the row you are in. Do not average it with the upside to feel better.

The base row uses a small absolute gap, 0.15 orders per 100 eligible shoppers, which is 30 orders on 20,000 shoppers. I would rather plan on an absolute gap from your test than on a 35% relative gap among volunteers. If you want a sensitivity, add a column that sets the gap to half of whatever your holdout just measured. That is still your data.

The upside row is where people hide the 30% returns line. Keep it in the envelope. Open it only after the return window, with the comparison group named as holdout orders versus exposed orders. Return reduction, measured properly, has its own rules. Until then the upside envelope stays shut.

Also run the cost at a bad month of usage. If a campaign doubles starts, overage doubles, and the base row’s margin may not. Adoption is not free at the margin once you are past the included tries.

Evaluate payback

Payback is cumulative incremental margin minus cumulative cost, and the first month that sum stays positive. It is not “the conversion rate went up in week one.”

Using the teaching base row: about $688 of margin after cost in a steady month. A store that looks like that example covers a single quiet month quickly, and still needs a second month to be sure the gap was not a promotion. Using the conservative row, payback does not arrive. That is a useful answer. It means you turn the tool off, or you fix placement and rerun the holdout, which is cheaper than defending a fee with a volunteer conversion rate.

A simple cumulative check:

MonthIncremental margin (base example)CostCumulative net
1, including setup at 20 hours ($900) instead of 6$1,188$1,130$58
2, steady$1,188$500$746
3, if the gap holds$1,188$500$1,434

Month 1 in this example barely clears because setup hours are honest. If your first month needs a developer on a custom theme, put that invoice in month 1 and watch payback slide. I would not call a tool paid back until the cumulative net is positive and the holdout gap has been seen in two separate periods, so one campaign did not carry it.

Shopify’s optimization guide treats improvement as repeated work. Payback is the same. Recompute when you change templates, when usage crosses a plan threshold, or when the return window closes on the test orders. Vendor case-study narratives are color for the upside envelope. They are not a substitute for your cumulative column.

Decision rule I would write at the bottom of the sheet:

  1. If the conservative row is the one your interval supports, do not buy the annual plan on the strength of the upside.
  2. If the base row is positive in two periods and guardrails are calm, keep the plan and review usage against the included tries.
  3. If cost is mostly overage, move plans or narrow the tool to hero templates so starts match the fee.
  4. If payback depends on return savings you have not measured, wait for the return window. Fashion return benchmarks help you read the level. They do not create the delta.

A vendor shortlist belongs on the comparison pages. This page is the arithmetic after the shortlist.

Fill the sheet with your holdout

Replace the teaching numbers this week. One row for exposed, one for holdout, a cost block with the plan you are actually on, and three scenarios. Present the conservative row first. If someone in the room wants the 35% association on the slide, put it in a footnote with the comparison group and the line “Antla merchant reporting, cohort dates not published.” The payback cell stays on your orders.


About the author: Aaron founded Antla. He has more patience for a conservative row than for a payback story built on shoppers who already meant to buy.