A manifesto for Indian D2C founders

There are two ROAS numbers. Your ad platform shows you one. Your bank account shows you the other.

The difference is the Reality Gap. It is not a rounding error, and it is not your fault. It is built into how ad platforms count.

Illustrative
One month. Two numbers.
Platform reported
4.8x
Retained (estimated)
2.6x
The retained figure is a stitched estimate: reported revenue adjusted for cancellations, COD failures, and returns. We label it for exactly what it is.

The count that never gets corrected

The moment your customer taps Buy, Meta counts the sale. The pixel fires, the purchase lands in Events Manager, and your ROAS goes up.

Then India happens.

The customer refuses the parcel at the door. The order gets cancelled before dispatch. The courier brings it back two weeks later. The refund goes out.

None of that travels back to the ad platform. Meta never learns the parcel came home. Google never hears about the refund. The sale stays counted, forever, in the number you use to plan next month's spend.

This is not a bug and it is not fraud. Ad platforms measure clicks and pixel events because that is all they can see. What happens after the click, the doorstep refusal, the RTO, the cancellation, lives in your store and your logistics stack. The platform is structurally blind to it.

So the ROAS on your dashboard is not a measurement of your business. It is a measurement of your checkout page.

It was never your media buying

Every founder we talk to has had the month. Ads dashboard says the best month yet. Bank account says otherwise. And the first instinct, every time, is to blame yourself. Wrong audience. Weak creative. Bad agency. Scale too fast.

You spent weeks fixing things that were not broken, because the instrument you trusted was miscalibrated from the start.

Stop auditing your gut. Start auditing the number.

India runs on COD. Your dashboard pretends it does not.

The Reality Gap exists everywhere, but India industrialised it. Cash on delivery is not an edge case here, it is the default for a large share of D2C orders. And every COD order carries a risk no pixel can price in: the customer can simply not pay.

58%
of COD orders came back during the 2025 festive quarter
Source: Unicommerce India D2C Report, 2026
<15%
of prepaid orders returned in the same period. The doorstep veto is a COD problem
Source: Unicommerce India D2C Report, 2026
Rs. 71,621 Cr
India's digital ad spend in 2025, planned on uncorrected numbers
Source: dentsu Digital Advertising Report, 2026

Every one of those failed orders is a sale your ad platform already took credit for. Multiply that across a month of spend and the number you are scaling against stops being optimistic and starts being fiction.

The month-end close for your ad spend

Finance teams solved this problem a century ago. No CFO reports revenue from the sales team's pipeline sheet. They close the books: match what was promised against what actually arrived, and report the difference.

Your ad spend has never had a month-end close.

You have been reporting the pipeline sheet.

That is the category Adverti Chat exists in. Not another analytics dashboard. The close, for your ad account.

What we believe

1

A ROAS that ignores what happened after the click is not a return on ad spend. It is a return on clicks.

2

Founders should never plan next month's spend on a number their bank account disagrees with.

3

The platform is not evil, but it is blind, and a blind instrument should never be the only instrument.

4

An honest estimate beats a confident fiction. We label our numbers for exactly what they are.

5

The gap belongs to the founder. Not to the agency deck, not to the platform dashboard. You should see it first.

What Adverti Chat does today

Adverti Chat connects the two halves of the truth: your ad platforms on one side, your store and logistics reality on the other. Ten live integrations, read-only access.

It stitches ad spend against order and delivery outcomes and shows you an estimated gap: a stitched approximation of the revenue you actually retained after cancellations, COD failures, and returns, next to the revenue your platforms reported. It is an estimate, and we call it one. It is also the first time most founders see the two numbers side by side.

  • The estimated gap, reported next to platform revenue, labelled honestly
  • Wasted spend detection on the stitched data
  • Creative health before the CPM tells you
  • Contribution analysis, in plain English, in chat
Meta Ads logo
Meta Ads
Google Ads logo
Google Ads
Amazon Ads logo
Amazon Ads
LinkedIn Ads logo
LinkedIn Ads
Google Analytics logo
Google Analytics
Search Console logo
Search Console
Microsoft Clarity logo
MS Clarity
Shopify logo
Shopify
WooCommerce logo
WooCommerce
Shiprocket logo
Shiprocket
More integrations on the way. See all integrations
On the roadmap

We are building a deterministic reconciliation engine: order-level matching between ad platform records and store records, so the estimate becomes a number you can defend line by line. It is coming. Until it ships, we will keep calling the estimate an estimate. That is the whole point of this company.

See the ROAS your bank account agrees with.

Connect your accounts in minutes. Read-only access. Free plan, no card required. Your estimated gap on the first screen.

Meta Business PartnerGoogle Ads API approvedRead-only access, always