trending_up

...

...

ads_click

...

...

Premium Agency

<trp-post-container data-trp-post-id='16735'>How to Track ROI in Google Ads and Meta Ads</trp-post-container>

We help businesses scale with data-driven strategies and world-class design.

Get Started rocket_launch
check

Request Received!

We've successfully logged your details. Our CRM team will reach out to you shortly.

What ROI and ROAS Actually Mean for Paid Advertising

Return on Investment (ROI) and Return on Ad Spend (ROAS) are the two most commonly used numbers to judge whether Google Ads and Meta Ads spend is actually working — but they answer different questions, and mixing them up leads to genuinely wrong decisions.

ROAS — Return on Ad Spend

ROAS = Revenue from Ads ÷ Ad Spend

ROAS tells you how much revenue came back for every rupee spent on ads. A ROAS of 4 means ₹4 in revenue for every ₹1 spent. It does not account for the cost of goods, overheads, or any other business expense — it is a pure advertising-efficiency number.

ROI — Return on Investment

ROI = (Revenue − Total Cost) ÷ Total Cost × 100

ROI is a profit-based number. “Total Cost” includes ad spend plus the cost of delivering the product or service — not just the media spend. A campaign can have a strong ROAS and still lose money once real costs are included, which is exactly why relying on ROAS alone is risky for any business with meaningful cost of goods or service delivery costs.

ROI vs ROAS: Which One Should You Actually Use?

ROASROI
MeasuresRevenue per ad rupeeProfit after all costs
Accounts for product/service costNoYes
Best forComparing campaigns/channels quicklyUnderstanding real business impact
Risk if used aloneCan look profitable while losing moneyRequires accurate cost data to be reliable

A Worked Example

A campaign generates ₹1,00,000 in revenue from ₹20,000 in ad spend — a ROAS of 5. That looks excellent. But if the cost of delivering that revenue (product cost, fulfilment, service delivery) is ₹75,000, the actual profit is ₹5,000 on a ₹95,000 total cost — an ROI of roughly 5%, not the impressive number ROAS alone suggests. Both numbers are useful together: ROAS for fast campaign-level comparisons, ROI for the real business decision.

Setting Up Accurate Google Ads Conversion Tracking

ROI tracking is only as good as the conversion data feeding it. For Google Ads, this starts with conversion actions configured correctly for what the business actually needs to measure.

For Lead-Generation Businesses

  • Track form submissions, calls, and WhatsApp clicks as separate conversion actions, not one combined “Lead” action
  • Assign realistic lead values based on historical close rates, not a flat guess
  • Use Enhanced Conversions to recover data lost to browser privacy restrictions

For E-commerce Businesses

  • Import transaction-specific revenue via Google Ads’ native e-commerce tracking or GA4 linking, not a fixed conversion value
  • Track add-to-cart and checkout-started as secondary signals, not primary conversions
  • Exclude refunded/cancelled orders from reported conversion value where the platform allows it

Without this level of specificity, Google Ads’ own reported conversion value — and therefore any ROAS/ROI calculated from it — will be systematically inaccurate.

Meta Pixel and Conversions API for Meta Ads Tracking

Meta Ads tracking has become materially less reliable through the Pixel alone since iOS privacy changes reduced browser-based tracking accuracy. The Conversions API (CAPI) sends conversion events directly from a business’s server to Meta, bypassing browser-level blocking.

Pixel vs CAPI — Not Either/Or

The Pixel and CAPI are meant to work together, not replace each other. Running both, with Meta’s deduplication (via a shared event ID) enabled, produces the most complete picture of which conversions are genuinely attributable to Meta Ads.

  • Pixel alone: increasingly incomplete due to browser and OS-level restrictions
  • CAPI alone: misses some client-side signals Pixel captures
  • Pixel + CAPI with deduplication: the most reliable combination available today

Revenue Tracking: E-commerce vs Lead-Generation

How ROI is calculated genuinely differs by business model — treating both the same way is a common source of misleading numbers.

E-commerce

Revenue is usually directly measurable at the transaction level. The main risks are attribution windows that are too generous (crediting ads for purchases that would have happened anyway) and failing to exclude returns/refunds from reported revenue.

Lead Generation

Revenue is not known at the moment of conversion — a form submission is not revenue, it is a lead that may or may not close. This means lead-gen ROI tracking depends on connecting ad platform data to what actually happens after the lead is generated, which requires CRM integration (covered next) rather than relying on the ad platform’s own conversion value alone.

CRM Integration and Offline Conversion Imports

For most lead-generation businesses, the single biggest accuracy gap in ROI tracking is that the ad platform never learns what happened to a lead after it entered the CRM.

How Offline Conversion Imports Work

  • A unique identifier (usually the Google Click ID — GCLID, or Meta’s Click ID) is captured at the moment of lead submission and stored against that lead in the CRM
  • When the lead closes (or doesn’t), the sales outcome and actual deal value are recorded in the CRM
  • That outcome is uploaded back to Google Ads / Meta Ads on a schedule, matched via the stored click ID

This closes the loop between ad spend and real revenue, rather than stopping at “form submitted.” Without it, ROI reporting for a lead-gen business is really just a lead-volume report wearing an ROI label.

UTM Tracking and GA4

UTM parameters and GA4 fill a specific gap: understanding the full customer journey across sessions and channels, which neither Google Ads nor Meta Ads reporting shows on its own.

Practical UTM Structure

utm_source=google | utm_medium=cpc | utm_campaign=[campaign_name]

Consistent UTM tagging lets GA4 correctly attribute revenue to specific campaigns even when a customer’s path involves multiple sessions or devices — something platform-level reporting alone often misses or attributes inconsistently.

Where GA4 Fits

GA4’s data-driven attribution model distributes credit across multiple touchpoints rather than giving 100% credit to the last click. For businesses running both Google Ads and Meta Ads simultaneously, this is often the only place a genuinely cross-channel view of what’s driving revenue actually exists.

Lead Value and Customer Acquisition Cost

Calculating Real Lead Value

Lead Value = (Close Rate × Average Deal Value)

Example: if 1 in 5 leads closes (20% close rate) and the average deal is worth ₹50,000, each lead is worth approximately ₹10,000 — not ₹50,000. Using the deal value instead of the calculated lead value is one of the most common ROI-inflating mistakes in lead-gen accounts.

Customer Acquisition Cost (CAC)

CAC = Total Ad Spend ÷ Number of New Customers Acquired

CAC should always be compared against customer lifetime value, not just the value of the first transaction — a channel with a high CAC can still be genuinely profitable if customer lifetime value is high enough.

A Complete Worked Example

A business spends ₹50,000 across Google Ads and Meta Ads in a month and generates 40 leads.

  • Close rate: 25% → 10 customers
  • Average deal value: ₹15,000 → Revenue: ₹1,50,000
  • Cost of service delivery: ₹40,000
ROAS = ₹1,50,000 ÷ ₹50,000 = 3.0
Total Cost = ₹50,000 (ads) + ₹40,000 (delivery) = ₹90,000
ROI = (₹1,50,000 − ₹90,000) ÷ ₹90,000 × 100 = 67%

Both numbers are genuinely useful here — the ROAS of 3.0 confirms the ads themselves are efficient, and the 67% ROI confirms the campaign is actually profitable once real delivery costs are included.

Common Tracking Mistakes That Distort ROI

  • Using deal value instead of calculated lead value — inflates apparent ROI for lead-gen businesses
  • Not excluding refunds/cancellations from e-commerce revenue — overstates real ROAS
  • Relying on Pixel alone for Meta Ads without CAPI — understates real conversions and ROAS
  • No CRM/offline conversion loop for lead-gen — ROI reporting stops at “lead,” never reaches “revenue”
  • Mixing ad spend with total marketing spend — makes ROI look worse or better than the ad channel alone actually performed
  • Ignoring attribution windows — a window that’s too long or too short over- or under-credits ads for purchases

A Practical Monthly Reporting Framework

A reliable ROI report, reviewed monthly, should separate platform-reported numbers from CRM-verified outcomes:

  • Platform-reported: spend, clicks, conversion count, platform-attributed conversion value (ROAS)
  • CRM-verified: actual leads closed, actual deal value, actual profit after delivery cost (ROI)
  • Gap analysis: the difference between platform-reported and CRM-verified numbers — a large, growing gap usually signals a tracking problem, not a performance problem

Reviewing both sets of numbers side by side, rather than trusting either one in isolation, is what actually lets a business tell the difference between an ads problem and a tracking problem.

Frequently Asked Questions

Is ROAS or ROI more important?

Neither alone is sufficient. ROAS is useful for quick campaign-level comparisons; ROI is what actually reflects business profitability. Track both.

What ROAS is considered good?

It depends entirely on gross margin. A business with high margins can be profitable at a ROAS of 2; a low-margin business may need a ROAS of 6+ to be profitable. There is no universal benchmark.

Do I need a CRM to track ROI accurately?

For lead-generation businesses, yes — without it, ad-platform conversion data stops at “lead,” not revenue. E-commerce businesses can often track revenue directly through the platform or GA4.

How often should offline conversions be uploaded?

Daily or weekly is typical. Longer gaps mean the ad platforms’ automated bidding is optimizing against stale outcome data.

Get Your Free Marketing Audit

Step 1 of 2 · Takes 30 seconds

100% Confidential · Response in 1–2 hours