Conversion API · CAPI

The pixel is dead.
Server-side wins.

When iOS 14.5, Safari ITP, third-party cookie deprecation and ad blockers stack up, half of the conversion data your browser pixel sees disappears. Meta, Google, TikTok and LinkedIn now use server-sent events as learning signal. That is why Conversion API became mandatory.

After a typical setup, event match rate climbs from around 30% to the 85-90% band; the algorithm relearns, CAC drops, ROAS comes back. Our job is to build that pipe properly — without killing the pixel, without breaking KVKK / GDPR, without touching your analytics.

Browser
Purchase · 249.99 TRY
cookies blocked
{`event_id:"a91"`} {`value:249.99`} {`em:sha256(...)`} {`fbp,fbc,ip,ua`}
Server
capi.partnerfy.co
M
Meta CAPI
graph.facebook.com/events
88%
G
Google Ads EC
googleadservices.com
91%
T
TikTok Events
business-api.tiktok.com
82%
L
LinkedIn CAPI
api.linkedin.com/conversions
79%
match rate 30% → 88%

Why it is needed

Of every 100 conversions your browser pixel used to see, 50 are now invisible.

When Apple turned on App Tracking Transparency with iOS 14.5, 75% of users opted out. Safari's Intelligent Tracking Prevention wipes third-party cookies in 7 days. Chrome is deprecating third-party cookies across 2024-2025. uBlock Origin, Brave, DuckDuckGo and friends silently block pixels for 25-40% of users. Result: the ad algorithm is fed wrong signals, shows ads to the wrong people, CAC climbs.

01

iOS 14.5 ATT

With App Tracking Transparency 75% of users opt out of tracking. IDFA is gone, SKAdNetwork returns delayed and incomplete data.

02

Safari ITP

Intelligent Tracking Prevention deletes 1st-party cookies in 7 days, script-set cookies in 24 hours. Cross-site tracking is over.

03

3rd-party cookie end

Chrome is removing 3rd-party cookies entirely in 2025. Firefox and Edge already block by default.

04

Ad-blocker density

30-45% of desktop users in TR / DE / UK run an ad-blocker. The pixel never even fires.

05

ePrivacy + GDPR + KVKK

Firing a pixel before consent is illegal. For users that click "reject", the browser pixel quietly stays off.

06

Algorithm starves

Meta and Google AI optimisation depends on signal quality. Less signal → higher CPM → climbing CAC → falling ROAS.

How the system works

One event → four ad engines, in parallel, deduplicated, hashed.

When a user buys, our server builds the event object, SHA-256-hashes email + phone, keeps the event_id identical to the pixel one (for deduplication), then posts to four ad platforms in parallel. Below: the real payload, the real match-rate panel and the real dedup logic:

POST graph.facebook.com/v19.0/{`{pixel_id}`}/events
// Meta CAPI — Purchase event payload {   "data": [{     "event_name": "Purchase",     "event_time": 1748602800,     "event_id": "ord_a91c4f", // dedup key     "action_source": "website",     "event_source_url": "https://shop/...thank-you",     "user_data": {       "em": ["7c4a8d09ca3762af61e..."],       "ph": ["e6c2e9c9be1f7dd9e2..."],       "fbp": "fb.1.1748...", "fbc": "fb.1...."     },     "custom_data": { "value": 249.99, "currency": "TRY" }   }] }

Event match rate — pixel only vs CAPI

live
Meta 30% → 88%
Google 30% → 88%
TikTok 30% → 88%
LinkedIn 30% → 88%

event_id deduplication

pixel event_id=ord_a91c4f
CAPI event_id=ord_a91c4f
Meta same id → counted once

Events/s

1.840

Latency

42ms

Errors

0.04%

Who it is for

Anyone burning ad budget because they cannot measure it correctly.

01

E-commerce · Meta-heavy

Online stores spending 100k+/month that lost attribution after iOS; feeding the real Purchase back to Meta rescues ROAS.

02

Lead-gen agencies

Agencies running Meta + Google ads for clients, unable to measure form-fills on iOS; CAPI cleans up lead attribution.

03

SaaS — trial signups

SaaS companies that must report trial starts back to the ad engine; trial → paying conversion chain also flows through CAPI.

04

Agencies with 10+ Meta clients

White-label CAPI foundation; one console managing events, dedup and QA for every account.

05

Two-sided marketplaces

Both buyer and seller events; signup, listing, message, sale — each matched to the right ad objective.

06

Financial services

Loan applications, insurance quotes that approve days later; offline conversion upload + CAPI together.

07

Multi-store e-commerce

A single brand across 3-10 stores; every domain's events through one pipe, dedup guaranteed.

08

Retail · offline

Uploading POS in-store sales to Google Ads offline conversion; online + offline attribution in one report.

10-layer server-side stack

Installing a separate SDK per platform — or broadcasting from one pipe to all of them.

The advantage of one pipe: same event_id, same hash rules, same QA. Three SDKs = three data formats = three dedup bugs. Partnerfy feeds every destination from a single server.

01

Meta Conversions API

Pixel + CAPI hybrid; event_id dedup, full em/ph/fbp/fbc parameters, Test Events verification.

02

Google Enhanced Conversions

User-provided data (email + phone, SHA-256) matched with gclid; web + offline conversion upload.

03

TikTok Events API

ttclid capture, Advanced Matching, event_id dedup; Events Manager Test Event integration.

04

LinkedIn CAPI

B2B-audience li_fat_id matching + hashed user; dedup with Insight Tag.

05

Snap Conversions API

sc_cid capture, hashed data, mobile + web events through one pipe.

06

Offline conversion upload

Push "paid", "cancelled", "refunded" events from CRM back to Google + Meta.

07

Server-side Google Tag Manager

sGTM on Stape.io or your own Cloud Run / ECS; one payload → 10+ destinations.

08

event_id dedup guarantee

Pixel and CAPI share the same id; no double counting in Meta + TikTok + LinkedIn reports.

09

PII hashing & consent

SHA-256 with normalised trim + lowercase; consent-management-driven on/off.

10

Multi-platform orchestration

One event = 4 platforms in parallel; Sentry-style error tracking + replay queue.

Process

From audit to live match rate of 85%+: a 21-day setup roadmap.

  1. 01

    Day 1-3 · Event audit

    We scan existing pixels, dataLayer, GTM container, GA4 events. Which events are missing, which have wrong parameters — a clean list.

  2. 02

    Day 3-6 · Schema mapping

    Map your server events to Meta, Google, TikTok, LinkedIn schemas. event_id strategy, hash rules, fallback parameters agreed.

  3. 03

    Day 6-12 · Pipe build

    After Stape.io / sGTM / Cloud Run decision, the pipe is coded. Queue, retry, idempotency, dead-letter — production grade.

  4. 04

    Day 10-14 · PII hash & consent

    em/ph/external_id are SHA-256 hashed and normalised. Whether the event sends or not is gated by KVKK / GDPR consent.

  5. 05

    Day 14-18 · Deploy & verify

    Meta Test Events, Google Tag Assistant, TikTok Test Event Tool — live verification per platform, match rate report within 48 hours.

  6. 06

    Day 18+ · Monitor & tune

    Match-rate dashboard, error rate, late events, campaign-level attribution comparison; weekly tweaks, monthly review.

Tools we use

Industry-standard CAPI + ETL stack.

Meta Conversions API Google Enhanced Conversions TikTok Events API LinkedIn CAPI Snap CAPI Server-side GTM Stape.io RudderStack Segment Tealium Zapier

Client stories

Same pipe. Different sectors. Same outcome: match rate up, CAC down.

E-commerce 41% → 89%

Fashion D2C

Meta event match rate 41% → 89%. Algorithm relearnt, 6 weeks later Meta ROAS 2.1× → 3.4×. Same ad budget, revenue +52%.

Lead-gen ROAS +127%

Insurance broker

CAPI installed on Meta lead-gen campaigns crippled after iOS: cost per lead −44%, ROAS recovered +127%.

SaaS CAC −38%

Vertical SaaS

Trial signup event server-side to Google + Meta; trial→paying chain closed via offline upload. CAC −38%.

Marketplace CPL −29%

Two-sided marketplace

Both buyer and seller events through one pipe; cost per listing −29%, seller-acquisition scaled 3×.

Finance ROAS +93%

Loan comparison

Application → approval is 7 days; CAPI + offline conversion upload fed the true "approved loan" back to Meta. ROAS +93%.

Agency 14 clients

Performance agency

White-label CAPI foundation for 14 e-commerce clients; avg match rate 39% → 86%, agency churn 0.

FAQ

8 critical questions before a CAPI setup

No — keep it. The optimal setup is hybrid: the browser pixel still fires (giving a fast signal where it is not blocked) and CAPI also sends from the server. Because both carry the same event_id, Meta, Google and TikTok deduplicate — counted once. CAPI-only loses parameters that only the browser can provide (fbp, fbc, ttclid, device fingerprint), which hurts match rate. The pixel still has value; CAPI complements it, not replaces it.
Yes, if three conditions are met: (1) the user gave consent for "advertising / measurement" in the consent banner; (2) PII fields (email, phone, name) are SHA-256 hashed server-side, irreversibly; (3) without consent, the event never enters the pipe. Partnerfy guarantees all three technically — ready integrations with Consent Mode v2, IAB TCF, OneTrust, Cookiebot, Usercentrics. Hashed data is not "personal data" under EDPB and KVKK guidance, as long as it cannot be reversed.
Depends on traffic and technical capacity. sGTM (Google's server container) is fast to set up, managed via the GTM UI, free under 100k requests/month — ideal for e-commerce and mid-size SaaS. With very high traffic (10M+ events/month), complex logic (custom retry, conditional dedup, queues), or heavy PII compliance, your own Node/Go server (Cloud Run, ECS, your own VPC) is the right call. Partnerfy builds both; the decision crystallises in a 30-minute audit.
Stape.io is managed sGTM hosting — DNS, SSL, scaling, monitoring handled. 20-200 USD / month, 1-2 hour install. Pros: speed. Cons: data goes through a third party (fine if consent + hashing are in place) and customisation is limited. Self-hosting (AWS Cloud Run, Google Cloud Run, your Kubernetes) gives more control, unlimited customisation, data stays in your VPC — but DevOps overhead. We usually recommend starting on Stape.io and migrating to self-hosted only after 12 months if volume justifies it.
Match rate is the percentage of events that the ad platform successfully matches to a real user identity. Raise it with: hashed email + phone + name + address + city (more parameters = better match); capturing click IDs (fbp, fbc, gclid, ttclid); correct event_time (within 7 days of event); forwarding IP + User-Agent; adding country + postal code. Lowers it: sending email only, hashing without lowercase + trim normalisation, missing fbp/fbc, user not logged in. Our targets: Meta 85%+, Google EC 80%+, TikTok 75%+.
A standard e-commerce + Meta + Google + TikTok combo takes 14-21 days. With a clean dataLayer and a 2-hour kickoff, week 1 finishes audit + mapping; week 2 builds the pipe + hash + consent layer; week 3 covers live verification + first match-rate report. Add LinkedIn + Snap and add 3 days; offline conversion upload adds a week. CRM integration or custom queue/retry logic extends to 4-6 weeks total.
No. CAPI runs server-side; we do not add a single line of script to your pages (a 5-line dataLayer patch is needed to carry event_id, that is it). Existing GA4, GTM, Hotjar, Mixpanel, Segment, your BI — all stay as they were. In many clients sGTM even improves page speed, since 3rd-party scripts move to the server. We install in staging first, run a week in parallel A/B style, then cut over to production.
Three layers: (1) Technical — match rate (percentage lift), event delivery success rate (target 99%+), latency (median <100ms). (2) Advertising — campaign-level attribution (Meta Reports + GA4 + your BI), CPM drop, CPA / CPL drop, ROAS lift; typically clear in 6-8 weeks. (3) Business — total revenue, organic vs paid mix, customer lifetime value. We show all three in monthly reports + a live dashboard with a clear causal chain: "CAPI installed, attribution restored, budget moved from X to Y, ROAS became Z".

Measure your ad spend correctly.

In a free 30-minute audit we review your current pixel + CAPI setup and share the 21-day roadmap to a 85%+ match rate.

results