ROAS vs ACoS, against your margin
How ROAS, ACoS, TACoS and MER are worked out, how they convert, and how to set a break-even ROAS from your margin.

In short
Google Consent Mode v2 changes what your ad platforms can observe, and so what your reports can claim. Here is what it does, how basic and advanced mode differ, and which numbers to trust once some visitors decline.
Consent Mode is how your website tells Google’s tags what each visitor has agreed to, so the tags change what they store and send. Version 2 added two advertising signals to the two that already existed.
Consent Mode does not ask the visitor anything. Your banner or consent management platform (CMP), the software that shows the banner and records each choice, does that; Consent Mode carries the answer to Google’s tags. Without a working banner, it has nothing to pass on.
Google requires these signals for visitors from the European Economic Area (EEA), and limits what its advertising features do with data that arrives without them. An Indian storefront that sells into the EEA needs them for those visitors too.
For visitors in India, the rules that matter are India’s own, under the Digital Personal Data Protection Act, 2023; how they apply to your site is a question for your legal adviser. Browsers and ad blockers limit what tags see in any case.
In basic mode, Google’s tags do not load until the visitor accepts, and nothing is sent for visitors who decline. In advanced mode, the tags load with the page under a default you set, usually denied, and send cookieless pings while consent is denied.
A cookieless ping is a request that carries no cookies and no stored identifier: a note that a page view or conversion happened, with the consent state attached. Google uses these pings, with data from visitors who accepted, to model what it cannot observe.
| Question | Basic mode | Advanced mode |
|---|---|---|
| When Google’s tags load | After the visitor accepts | With the page, before any choice |
| Sent when a visitor declines | Nothing | Cookieless pings |
| Conversion modelling in Google Ads | A general model | A model specific to your account |
| Behavioural modelling in GA4 | Not available | Available once thresholds are met |
| Suits a site that wants | No data sent before a choice | Fuller modelling, with legal sign-off |
Advanced mode gives the platforms more to model with; basic mode sends less before a choice is made. Which is right for your site is a legal and policy decision as much as a measurement one, so decide it with your adviser first.
A modelled conversion is Google’s estimate of a conversion it could not observe, for example because the visitor declined cookies. It is built from the behaviour of comparable visitors who did consent, and added to the conversions your account reports.

In Google Ads, modelled conversions sit in the same Conversions column as observed ones and are not marked line by line. They also feed Smart Bidding, Google’s automated bidding, so bids keep responding to sales you cannot see individually.
Modelling needs enough consented data to learn from. Below Google’s eligibility thresholds it does not run, which is why a small account can see a gap that a larger one does not.
GA4 fills gaps differently, with behavioural modelling: it estimates the behaviour of visitors who declined analytics cookies from that of similar visitors who accepted. Modelled data appears only when the property’s reporting identity is set to blended, and only once it meets Google’s thresholds.
What modelling is not: a recovery of real orders, a figure you can audit row by row, or a constant. When your consent rate changes, because the banner changed or your traffic mix did, the modelled share changes with it.
They make the data you are permitted to collect arrive more completely and under your control. Neither is a way around consent.
Server-side tagging moves tag processing from the visitor’s browser to a server you control. The browser sends one stream of events to your tagging server, usually on your own subdomain, and the server decides which fields go to Google, Meta and anyone else.
The gains are fewer third-party scripts slowing the page, control over exactly what each vendor receives, and first-party collection that some browser restrictions affect less. The cost is a server to host and maintain.
The consent state must travel with every event, and the server must honour it. Moving a tag to a server changes where it runs, not what the visitor agreed to.
Meta’s Conversions API (CAPI) sends website events, such as purchases, from your server or your storefront platform directly to Meta. It runs alongside the Meta Pixel, not instead of it.
Meta deduplicates events received from both when each carries the same event name and event ID. Without matching IDs, a sale can be counted twice.
In Events Manager, an event match quality score shows how well your events match Meta’s users; customer details sent in hashed form improve it. For how those events feed campaigns, see our guide to Meta ads for D2C brands.
Google’s counterpart is enhanced conversions, which sends hashed first-party data, such as an email address, with each conversion to improve matching. It depends on the ad_user_data signal, so it works only where visitors have agreed.
If your storefront runs on Shopify or WooCommerce, much of this is decided by how the storefront is built and which integrations it uses. Our comparison of Shopify vs WooCommerce in India helps if you are still choosing.
Consent decides what you may measure. Tagging decides how much of it arrives.
Because fewer visitors can be observed, not necessarily because fewer people bought. Before you change bids, budgets or creative, compare the platform’s conversions with your storefront’s order count for the same days, before and after the change.
If orders held steady while reported conversions fell, the gap is measurement, and modelling may close part of it once enough consented data builds up. If orders fell too, the change is real, and the banner is not the explanation.
Smart Bidding makes this matter more. It bids against reported conversions, so an unexplained drop in measurement can turn into a real drop in spend and sales. Record the date of every tracking change, and give bidding time to settle before you change targets.
If tracking broke outright for a period, Google Ads lets you exclude those dates from Smart Bidding’s learning with a data exclusion.
Trust your order system for what sold, each ad platform for comparing campaigns within itself, and blended ROAS (return on ad spend across the business) for whether advertising pays overall. No single report answers all three questions.
| Source | Use it for | Not for |
|---|---|---|
| Storefront or order system | What sold, net of cancellations and returns | Which ad caused the sale |
| Google Ads | Comparing campaigns and keywords within Google | Adding to Meta’s figures |
| Meta Ads | Comparing campaigns and creative within Meta | Adding to Google’s figures |
| GA4 | Site behaviour and the mix of channels | Matching any platform’s total |
| Blended ROAS | Whether advertising as a whole is paying | Choosing which campaign to cut |
Each platform credits sales within its own attribution window, the period after a click or view in which a sale counts, and can include modelled conversions, so one order can be claimed by Google, Meta and GA4 at once. Adding their totals overstates your sales.
Blended ROAS is total revenue from your order system divided by total ad spend across every platform. It cannot say which campaign worked, but attribution cannot inflate it, so it belongs first in the weekly report.
If you also sell on marketplaces, their ad consoles report ACoS (advertising cost of sales) and related ratios; our guide to ROAS vs ACoS explains how they relate to ROAS.

Where volume allows, test rather than attribute: pause a channel in a set of regions for a few weeks and compare orders with regions where it ran. Google and Meta also offer lift studies to eligible accounts.
In India, states or groups of cities make workable test regions. Pause a channel in a few metros and compare them with metros whose orders moved in step with them before the test.
Tag every link you control with UTM parameters, the source, medium and campaign labels added to a web address, so GA4 attributes visits from email, WhatsApp and social posts consistently.
We set up GA4, Google Tag Manager, Meta Pixel and Conversions API, Google Consent Mode v2, server-side tagging and UTM discipline, then reconcile the result against your order system before anyone reads a campaign report.
We are an operator, not an agency: we run brands of our own as well, so we read these reports as buyers of media. Our page on conversion tracking setup describes the work in full.
Once tracking is sound, performance marketing and Google Ads and Meta Ads management can be judged on numbers both sides believe. Our digital marketing overview shows how the three fit together.
The terms used here, from RTO to TCS, are defined in plain English in our ecommerce glossary.
We set up GA4, Tag Manager, Consent Mode v2, Meta Pixel with Conversions API and server-side tagging, then reconcile them against your orders.
How ROAS, ACoS, TACoS and MER are worked out, how they convert, and how to set a break-even ROAS from your margin.
How D2C brands in India should run Meta ads: account structure, creative testing, catalogue ads, Conversions API and measurement after consent.
GST for online sellers: registration, the GST invoice, TCS on marketplace payouts, input tax credit and monthly reconciliation.
Tell us what you sell and where. We reply with our questions and a scope, with GST on its own line.