How to calculate marketing ROI

Marketing ROI (return on investment) tells you whether the money you put into marketing came back with profit on top. The formula is short. The hard parts are deciding which costs go in, using profit rather than sales, and knowing which sales your marketing really caused. Here is the formula with a worked example, the difference between ROI and ROAS, the limits of attribution, and a short list of numbers worth tracking for each goal.

The formula follows Google Ads Help on return on investment (ROI), the ROAS maths follows About Target ROAS bidding, and the attribution part follows Google Analytics Help, Get started with attribution. The example business and its numbers are made up, and the advice on what to track is our view.

The formula

Google's help page puts it this way: "take the revenue that resulted from your ads and listings, subtract your overall costs, then divide by your overall costs". Written out:

ROI = (revenue from marketing − total costs) ÷ total costs × 100%

"Total costs" is where most mistakes happen. In Google's own example the costs are the product cost plus the ad cost: a product that costs $100 to make sells for $200, six are sold through Google Ads for $1,200 in sales, the ads cost $200, and the ROI is "($1200-($600+$200))/($600+$200), or 50%". For a service business the same idea means the cost of doing the job (labour, materials) plus everything you spent to win it: ad spend, agency or freelancer fees, design work and software you bought for the campaign.

An ROI of 0% means you got your money back and nothing more. Below 0% the marketing lost money; above it, it made a profit.

A worked example

The business and all numbers below are made up to show the maths. A garden care company spends a month on Google Ads:

ItemAmount
Ad spend$800
Agency fee for the month$200
Revenue: 8 jobs from the ads8 × $500 = $4,000
Labour and materials8 × $250 = $2,000

Marketing cost is $800 + $200 = $1,000. Total costs, counted the way Google's example counts them, are $2,000 for the jobs plus $1,000 for marketing = $3,000.

ROI = ($4,000 − $3,000) ÷ $3,000 = 33%.

A second view asks "what did each marketing dollar return in profit?": gross profit from the jobs ($4,000 − $2,000 = $2,000), minus the marketing cost, divided by the marketing cost. Here that is ($2,000 − $1,000) ÷ $1,000 = 100%. Both are honest as long as you say which one you use and keep using the same one month to month.

Gross profit, not revenue

The common shortcut is (revenue − marketing cost) ÷ marketing cost. In the example that gives ($4,000 − $1,000) ÷ $1,000 = 300%, which looks three times better than the 100% above. The difference is the $2,000 it cost to do the work. A business with thin margins can show a high "ROI" on revenue and still lose money on every job it wins from ads.

So use gross profit (revenue minus the direct cost of delivering the sale) whenever you can. If you sell many products with different margins, an average gross margin from your accounts is a fair start. If you are setting the budget in the first place, our guide to a marketing budget for a small business covers how much to put in before you can measure what comes out.

ROAS vs ROI

ROAS (return on ad spend) is revenue divided by ad spend. Google's Target ROAS page gives the maths as "$5 USD in sales ÷ $1 USD in ad spend x 100% = 500% target ROAS". It leaves out the cost of the product or job and every cost other than the ads.

In the example, ROAS is $4,000 ÷ $800 = 500%, while ROI on gross profit is 100%. Both numbers are useful, for different jobs:

  • ROAS is what ad platforms report and bid towards. It is quick to read inside one campaign. Our guide to Target ROAS in Google Ads covers the bid strategy itself.
  • ROI is what tells the owner whether marketing made money for the business.

You can link the two with a break-even ROAS: 100% divided by your gross margin. With a 50% margin, as in the example, ad spend breaks even at a ROAS of 200% before any other marketing costs. Below that you lose money on each sale.

Which sales did marketing cause?

ROI is only as good as the revenue you put into it. Google's ROI page says that to measure it "you'll need to track conversions", so set up Google Ads conversion tracking and key events in GA4 before you calculate anything.

Even with tracking in place, the numbers are a model, not a count. Google Analytics Help notes that customers "may do several searches and click several of your ads before making a purchase", and that "Typically, all credit for the important action, called a key event, is given to the last ad customers clicked." GA4 offers data-driven attribution and two last-click models, and the same page notes that "All attribution models exclude direct visits from receiving attribution credit, unless the path to key event consists entirely of direct visits."

In practice that means:

  • Google Ads, Meta and GA4 will each claim the same sale in their own way, so their totals rarely add up to your real sales. Take revenue from your own records and use platform numbers to compare campaigns.
  • Phone calls and in-person sales are missed unless you track them: see call tracking and offline conversion import.
  • Some customers would have bought anyway. A conversion lift study is how Google measures the extra sales ads caused.

What to track for each goal

ROI is the end result. These are the numbers we watch on the way there, by goal. Track a few, the same way every month, rather than every metric a platform offers.

  • Leads (calls, forms, quote requests): leads, cost per lead, share of leads that become customers, cost per customer.
  • Online sales: revenue, ROAS, gross profit after ad spend, average order value.
  • Local visits: calls and direction requests from your Google Business Profile, and booked appointments.
  • Repeat business: share of sales from returning customers and email sign-ups.
  • Search visibility: clicks from Google Search Console and the key events those visits lead to.

Our guide to website analytics reporting turns these into a one-page monthly report.

Frequently asked questions

What is a good marketing ROI?

There is no single figure that fits every business. Any ROI above 0% on gross profit means marketing paid for itself. Work out your break-even ROAS from your own margin and judge each channel against that.

Is ROAS the same as ROI?

No. ROAS divides revenue by ad spend. ROI subtracts all costs, including the cost of the product or job, and divides the profit by those costs. A 500% ROAS can still be a loss if margins are thin.

How long should I wait before calculating ROI?

In our view, at least one full sales cycle: if customers usually take a month from first visit to paying, wait for a month of results after that, and count the revenue in the month it is earned, not the month the ad ran.

Want ads that are measured by profit, not clicks? See our Google and Meta ads management.