The email ROI formula, in plain words

ROI (return on investment) asks: for every dollar you put in, how much profit came back? For email, the formula is: (profit from sales driven by email minus email costs) divided by email costs.

Say a month of emails led to $6,000 in orders. Your gross margin (what is left after the cost of the products) is 50%, so the profit is $3,000. Your email software, design help and the cost of discount codes come to $600. ROI is ($3,000 minus $600) divided by $600, which is 4, or 400%. Use profit rather than revenue, or a store with thin margins will think email is far more valuable than it is. Our guide to ROAS vs. ROI explains why that difference decides budgets.

Count all the costs

Email feels free once the software is paid for, which is why ROI figures for it often look huge. A fair calculation includes:

  • The monthly fee for your email platform, which usually rises with list size.
  • Time spent writing, designing and testing, at a realistic hourly rate, even if it is your own time.
  • Discounts and free-shipping codes used in email orders. A 20% off code is a real cost.
  • Any paid tools for list growth, such as pop-up forms or contest apps.
  • Agency or freelancer fees, if someone runs email for you.
Share of tracked email opens by email client, September 2026
  • Apple76.56%
  • Gmail16.1%
  • Outlook3.48%
  • Yahoo Mail2.35%
  • Google Android0.94%

Each bar is a client's share of opens Litmus tracked; Apple's share includes Mail Privacy Protection opens, which Litmus does not treat as reliable.

Source: Litmus

Why open rates stopped being a good guide

Open rate used to be the headline email number. It works by loading a tiny invisible image when someone opens the message. In 2021 Apple announced that its Mail Privacy Protection stops senders from using invisible pixels to collect information about the user. With the feature on, as Litmus puts it, you will not know whether that person opened your email or not, so open counts stop meaning what they used to.

That matters because Apple is where most opens happen. Email testing company Litmus reported that in September 2026 Apple accounted for 76.56% of opens it tracked, and that Apple's privacy feature now affects roughly 55 to 60% of all email opens. Litmus advises moving to click-through and conversion data instead. Keep open rate only as a rough health check on deliverability.

Tie clicks to real orders

The reliable path is click, then visit, then order. Add UTM parameters (short tags at the end of a link, such as utm_source=newsletter and utm_campaign=october-sale) to every link in every email. Your analytics tool and many store platforms will then record which orders came from which email.

Then check those orders against your payment processor or store export, not just your email platform's revenue report. Email tools often credit any purchase made within several days of an open or click, and a buyer who also clicked a Google ad will be claimed by both. Count each order once, and decide on one rule for which channel gets it.

Find out what email really adds

Many people who buy after an email would have bought anyway. To see the true effect, hold back a small random slice of your list, such as 10%, from one campaign. Compare purchases per person between those who got it and those who did not over the following week. The difference is the sales the email actually caused. This is the same idea behind incrementality testing for paid ads.

For a sense of scale, a 2018 Litmus study of nearly 400 marketers found brands generate returns equal to 38 times what they invest in email. That is self-reported and dated, so treat your own holdout test as the number that counts.

Report it monthly

Each month, record email-driven orders, profit, costs, ROI and revenue per recipient. Matrix ROI can sit your Stripe payments beside the exports you upload from any email platform, so what email claims and what your records verify appear on one page; direct Mailchimp and Klaviyo connections are in development. It was made by Smith App Studio.