AnalyticsE-commerceIntegrationsAutomation

E-commerce conversion tracking: from 35% event coverage to nearly complete

A beauty e-commerce store was showing Meta only one third of its purchases. We fixed server-side measurement while respecting consent and raised coverage to nearly complete.

3 min read

Client
Beauty e-commerce store
Industry
E-commerce / Beauty / Analytics
Scope
Analytics and data
Delivery time
about 1 week

Who the client was and what was wrong

An online beauty retailer was spending a meaningful monthly budget on Meta ads. The problem was easy to see: purchases reported by the pixel did not match the store’s own figures. Meta saw roughly one third of conversions. The rest were missing.

This is about more than tidy reports. Meta’s algorithm learns from the events it actually receives. If it gets one in three, it optimises campaigns against only part of reality and spends money in places no one would knowingly choose. The client was paying twice: first for missing data, then for worse decisions by the algorithm.

Three related issues also needed to be solved together. The pixel fired before a visitor had made a choice in the consent window. That creates both a penalty risk and data Meta cannot use anywayβ€”the worst of both worlds. Second, browser and server events needed shared identifiers; otherwise the same purchase is counted twice and reported revenue grows only on paper. Third, server events carried too little data, so Meta’s dashboard understated match quality.

What we did

We started by measuring the store’s actual consent rate. Event coverage turned out to be practically identical to that rate. The problem was not the event code itself, but the order in which it ran: the pixel fired too early, and Meta rejected those events.

We put a consent gate in place across both channels. The browser layer runs through Google Tag Manager; the server layer uses server-side GTM hosted on Stape. Consent Mode v2 and the consent platform determine what can be sent and when. Once a visitor gives consent, events from before that decision are sent again in the same form through both the pixel and Conversions API.

To prevent an event from being counted twice, we set stable, shared identifiers. We identify a purchase by the store’s transaction number rather than a random string generated on every page refresh. Meta can then deduplicate the browser and server pair, and reported revenue matches reality.

Finally, we improved data quality. We added user identifiers already held by the store to server events and removed junk events: bot traffic, previews and accidental cart reloads.

How it works today

The work took about a week. The store now handles six standard Meta events in parallel in the browser and on the server. Measurement does not start until the visitor makes a choice in the consent window; once they consent, nothing from their visit is lostβ€”we send the queued events.

Each event has one identifier shared by both channels, so Meta removes duplicates itself and counts revenue once. User data is enriched and the stream is cleaned up, so Meta’s dashboard rates match quality higher than before. Marketing sees the same figures as accounting. That is a low bar, but it was not met before.

What changed

Coverage of standard Meta events rose from about 35% to nearly complete. All six standard events now work through both channels at once. Measurement complies with GDPR because nothing is sent without consent. Match quality in Meta’s dashboard improved.

What we would do differently

We lost the first day looking for a bug in the event code because we assumed incomplete coverage meant something was not being sent. We could have immediately compared coverage with the consent rate: the figures were practically identical and pointed straight to the cause. That is now the first thing we check in every measurement audit.

We initially treated filtering junk events as cosmetic and left it until the end. It turned out those events were pulling match-quality ratings down the most. On the next implementation like this, we will start by reviewing the raw event stream before touching the consent configuration.

Pricing

Process discovery, an automation plan, implementations, and ongoing support. One fixed rate.

The Swarm subscription

Advisory and implementation service (B2B): we talk with your team, map processes, and suggest improvements. We agree on priorities together, implement an AI agent, automation, or internal system each month, and monitor and maintain the solutions that are in use. Billed monthly; collaboration is remote.

4Β 900 PLN net /mo

6Β 027 PLN gross (VAT 23%)

  • βœ“ Conversations with your team and discovery of your company’s processes
  • βœ“ A map of automation opportunities and shared prioritisation
  • βœ“ A new AI agent, automation, or internal system every month
  • βœ“ Monthly Kickoff & Mapping Call (45 min)
  • βœ“ Implementation meeting with a demo (15–30 min)
  • βœ“ 24/7 monitoring of live automations
  • βœ“ Incidents fixed within 24 hours β€” included
  • βœ“ Team training and consultations included
  • βœ“ Pause or cancel without notice β€” by the day before the next billing period

No commitment β€” pause or cancel with one click.

BLIKVisaMastercardMaestro

BLIK, card, instant bank transfer, or payment by pro forma invoice. Online card payments are processed by Autopay S.A. Payment methods and refunds.

Pause without notice

Nothing in the queue? Pause your subscription by the day before the next billing period, and save any unused days for later.

One-week trial

Not feeling it after the first week? We refund 3/4 of the fee β€” no questions asked.

Prefer to talk?

Book a 30-minute call and see if it is right for you.

Book a call
β˜…

Satisfaction guarantee

Not fully satisfied with the service in your first month? We refund 3/4 of the fee. In practice, you get a one-week trial of The Swarm for 1/4 of the price β€” 1Β 225 PLN instead of 4Β 900 PLN net.

BIG GROWTH Sp. z o.o. Β· ul. Lipowa 3D, 30-702 KrakΓ³w Β· NIP 6793284750 Β· REGON 527118883 Β· KRS 0001073383
BLIKVisaMastercardMaestro
Online payments: Paynow (mElements S.A., mBank Group) β€” BLIK, payment card, instant bank transfer. Online card payment services are provided by Autopay S.A. Payment currency: PLN. Prices on the Website are net prices (VAT 23%).
Β© 2026 The Swarm β€” AI automation on subscription Β· HeyNeuron