Here's something most Indian D2C founders don't realise. The sales your Meta dashboard shows are almost certainly fewer than the sales your ads actually caused.
Not because Meta is lying. Because the old way of tracking — the pixel — keeps getting blocked. Meta CAPI is the fix, and on Shopify it's more straightforward than most founders expect.
This is what it does, how to set it up, and how to check it's actually working.
You can't optimise what you can't see. And right now, your pixel can't see about a third of your buyers.
Why your pixel is going blind
The Meta pixel is a small piece of code on your website. When someone buys, it tells Meta from inside their browser. Simple, and it worked well for years.
Three things broke it.
Apple's privacy change. iPhone users are asked whether apps can track them. Most say no. When they say no, a lot of that browser-based reporting stops.
Ad blockers and browsers. Plenty of people run blockers, and browsers like Safari and Firefox now limit tracking scripts by default.
Ordinary technical failures. The page closes before the pixel fires. The connection drops. The script doesn't load. On patchy Indian mobile data, this happens more than you'd think.
The result: someone buys, but Meta never hears about it. That sale still happened — it just doesn't appear in your ad results.
What CAPI actually is
CAPI stands for Conversions API. Instead of the customer's browser telling Meta about the sale, your server tells Meta directly.
Think of it like this. The pixel is a message passed through the customer — and the customer can refuse to carry it, or drop it on the way. CAPI is you posting the message yourself, from your own shop.
Ad blockers can't stop it. Browser settings can't stop it. If a page closes early, it still goes through.
Important: CAPI doesn't replace the pixel. You run both. Together they cover far more than either alone — and Meta matches them up so one sale isn't counted twice.
What it actually recovers
You'll see agencies promise "recover 30% of lost conversions." Be careful with those claims. The honest answer is that it depends entirely on your traffic.
What the recovery depends on:
- How many iPhone buyers you have. More iOS traffic, more previously-lost data, bigger gain.
- How much customer data you can send. This is the big one, covered below.
- Your current setup quality. A broken pixel gains more than an already-clean one.
What CAPI reliably does, regardless of the exact number: Meta sees more of your real buyers, so it gets better at finding people like them. That improvement in targeting is usually worth more than the reporting fix itself.
The real win isn't better reports. It's Meta finally knowing who your buyers are.
Setting it up on Shopify
Three routes, depending on your size and needs.
| Route | Best for | Trade-off |
|---|---|---|
| Shopify's official Facebook & Instagram app | Most Indian D2C brands | Easiest by far. Less control over what's sent. |
| A dedicated tracking app | Brands wanting better match quality | Monthly cost, but usually better data. |
| Server-side Google Tag Manager | Large or complex setups | Most control. Needs real technical help. |
For most brands under a few crore in annual revenue, the official Shopify app is the right answer. It's free, it's supported, and it handles the duplicate-matching for you. Don't over-engineer this.
Whichever route you pick, the order is the same. Connect your Shopify store to your Meta Business account. Turn data sharing up to the maximum level. Verify your domain in Business Manager. Check events are arriving in Events Manager. Then look at your match quality score — the step everyone skips.
The duplicate trap
Here's the mistake that makes founders celebrate too early.
You run the pixel and CAPI together. One sale happens. Both report it. If Meta can't tell they're the same sale, it counts two.
Suddenly your ads look twice as effective. You raise the budget on ads that aren't actually performing. Two months later the bank balance tells the truth.
Meta prevents this using a shared event ID — a matching code sent with both reports so Meta knows they're one event. The official Shopify app handles this automatically. Custom setups often get it wrong.
How to check: in Meta Events Manager, look for a duplication warning on your Purchase event. If your reported sales suddenly jumped right after installing CAPI and your actual revenue didn't, you have a duplicate problem. See our guide to attribution and tracking in India for the wider picture.
Event match quality
This is the number that decides whether CAPI helps you or not, and almost nobody looks at it.
When you send a sale to Meta, Meta has to work out which person bought. It does that by matching the details you send — email, phone number, name, city, pincode — against its own users.
Send only an email and matching is weak. Send email, phone, name, city and pincode and matching is strong.
In Events Manager, each event gets an Event Match Quality score out of 10. Below about 5 means Meta is struggling to identify your buyers, and your CAPI setup isn't delivering much. Above 7 is good.
The fix is usually simple: make sure phone number is being collected and passed. Indian checkouts almost always capture a phone number, and it's one of the strongest matching signals available — yet plenty of setups don't send it.
Five setup mistakes
- Removing the pixel after installing CAPI. They're partners, not replacements. Running both covers far more than either alone.
- Ignoring duplicate events. Double-counted sales make bad ads look good and lead you to scale the wrong thing.
- Never checking match quality. A CAPI setup scoring 3 out of 10 is doing very little. Check it, then fix what's missing.
- Not sending the phone number. It's one of the strongest signals in India and it's usually already in your checkout data.
- Skipping domain verification. An unverified domain limits what Meta will let you optimise for, and quietly caps your setup no matter how good the rest is.
Frequently asked questions
In closing
Meta CAPI on Shopify isn't complicated, and for most Indian brands it's a one-hour job with the official app. Run it alongside the pixel, not instead of it. Check for duplicate events. And look at your match quality score — that's the number that decides whether any of it helped.
Get it right and Meta finally sees who your real buyers are. That's what improves your ads, not the prettier dashboard.
Want us to check your tracking, match quality and duplicates? Book the 45-minute private audit (free). See how this fits our ecommerce marketing work.