Skip to content
Facebook Ads 3 March 2026 Updated: March 2026

Facebook CAPI: Complete Guide to Meta Conversions API in 2026

iOS 14.5 wrecked tracking. Cookie restrictions keep growing. Ad blockers are everywhere. But there is a solution — and it's called Conversions API. Here is everything you need to know about CAPI in 2026.

Magnus Bo Nielsen Magnus Bo Nielsen 12 min read

If you're running Facebook or Instagram Ads in 2026 and haven't implemented CAPI, you're losing data. Not a little data — between 20% and 40% of your conversions are never reported back to Meta. That means Meta's algorithm is optimising on an incomplete picture. Your conversion tracking numbers are too low. Your ROAS looks worse than it actually is. And your campaigns underperform because the algorithm doesn't have enough signals to learn from.

The solution is Meta Conversions API — commonly referred to as CAPI. It's a server-side tracking solution that sends conversion data directly from your server to Meta's servers, without ever going through the user's browser. It bypasses ad blockers, ITP cookie restrictions and iOS App Tracking Transparency (ATT) — the three biggest threats to your tracking quality today.

This guide is the most comprehensive English walkthrough of Facebook CAPI available. We cover what it is, why you need it, the four implementation methods, Event Match Quality, deduplication and cost. All based on our hands-on experience as a Facebook Ads agency.

-13%
Lower cost per result with CAPI + Pixel
20-40%
Conversions lost without CAPI
6.0+
Target Event Match Quality score

1. What is CAPI / Conversions API?

Meta Conversions API (CAPI) is a server-to-server integration that sends conversion events and user data directly from your web server to Meta's advertising platform. Unlike Meta Pixel — which is a JavaScript snippet running in the user's browser — CAPI bypasses the browser entirely.

Think of two routes from your website to Meta:

The key difference is reliability. The browser is a hostile environment for tracking in 2026 — Safari limits cookies to 7 days (24 hours for JavaScript-set cookies via ITP), ad blockers block Meta Pixel on roughly 30% of desktop traffic, and iOS ATT has an opt-in rate of just 15-25%. CAPI bypasses all these issues because the data never touches the browser.

Important distinction: CAPI does not replace Pixel — it supplements it. Meta strongly recommends running both simultaneously. Pixel captures events that CAPI might miss (such as scroll events and micro-conversions), while CAPI ensures the most important conversions always get reported. Together they provide the most complete picture.

2. Why CAPI is essential in 2026

Just five years ago, Pixel alone was sufficient. In 2026 it no longer is. Here are the four reasons CAPI has moved from nice-to-have to must-have:

iOS App Tracking Transparency (ATT)

Apple's ATT framework, introduced with iOS 14.5, requires apps to explicitly ask permission to track users. Only 15-25% of iOS users choose to allow tracking. That means 75-85% of your iOS traffic is invisible to Pixel. With over 55% iOS market share in Denmark, that's a massive data gap.

Ad blockers and browser restrictions

Approximately 30% of Danish desktop users run ad blockers that block the Meta Pixel script. On top of that, Safari (ITP), Firefox (ETP) and now Chrome (Privacy Sandbox) all restrict third-party cookies and tracking scripts. Pixel is a primary target for these restrictions.

Cookie lifetime restrictions

Safari's ITP reduces JavaScript-set cookies to a 24-hour lifespan and even first-party cookies to 7 days. That means a user who clicks your ad on Monday and purchases on Thursday cannot be correctly attributed via Pixel. CAPI can send server-set cookies with longer lifespans and supplement with other identifiers such as hashed email.

Algorithm quality

Meta's machine learning algorithms are only as good as the data they're fed. Fewer conversion signals = worse optimisation = higher costs. Meta has published that advertisers using CAPI + Pixel see on average 13% lower cost per result. That's not a small number — for an advertiser with 50,000 DKK in monthly ad spend, that's a saving of 6,500 DKK per month.

Bottom line: Without CAPI you have a blind eye on up to 40% of your conversions. Your Custom Audiences are incomplete. Your Lookalike Audiences are based on skewed data. And your automated bidding strategies optimise on a half-picture. CAPI is not a luxury — it's the foundation.

3. Pixel vs. CAPI vs. both

Let's lay this out clearly so you can see exactly what you get with the different configurations:

Feature Pixel alone CAPI alone Pixel + CAPI
Data quality 60-75% of events 80-90% of events 95%+ of events
Reliability Vulnerable to ad blockers, ITP, ATT Robust — server-side Maximum coverage
Cookie dependency Highly dependent Minimal Minimal
Micro-conversions Good (scroll, time on page) Limited Full coverage
Real-time data Yes Near real-time (seconds delay) Yes
Setup complexity Low (copy-paste script) Medium to high Medium to high
Recommended by Meta No — insufficient Acceptable Yes — best practice

The answer is clear: you should use both. Pixel + CAPI with proper deduplication is the configuration Meta recommends, and the one that delivers the best results. Pixel captures browser events and micro-conversions, CAPI ensures the important conversions always get through. We always set up this combined configuration for our Facebook Ads clients.

4. Event Match Quality (EMQ)

Event Match Quality is Meta's quality score for your CAPI events. It measures how well Meta can match the events you send with real Facebook/Instagram users. The scale runs from 1 to 10, and your target should be 6.0 or higher.

EMQ is critical because an event that cannot be matched to a user is worthless to Meta's algorithm. You can send 1,000 purchase events via CAPI, but if only 300 of them can be matched to a Facebook user, the algorithm is effectively only optimising on those 300.

You find your EMQ score in Meta Events Manager under Data Sources → your Pixel → Overview. Each event (Purchase, AddToCart, Lead etc.) has its own EMQ score.

The most important parameters for high EMQ

The more identifiers you send with your events, the higher your EMQ. Here are the parameters you should include, ranked by importance:

Parameter 01
Email (em)

SHA256-hashed email is the strongest identifier. Matches directly with Facebook login. Always send email when available — on purchases, signups, lead forms.

Parameter 02
Phone number (ph)

SHA256-hashed phone number. Strong match rate in Denmark where many users have registered their mobile number with Facebook. Send in E.164 format (+45xxxxxxxx).

Parameter 03
FBP Cookie (fbp)

Facebook Browser ID cookie (_fbp). Set automatically by Pixel. Forward it via CAPI to link the browser session to the server event. Requires Pixel to also be running.

Parameter 04
FBC Cookie (fbc)

Facebook Click ID cookie (_fbc). Contains the click ID from the ad link. Extremely important for correctly attributing conversions to specific ad clicks.

Parameter 05
External ID

Your own unique user ID (e.g. customer number from your database). Gives Meta a persistent identifier that survives cookie restrictions.

Parameter 06
IP + User Agent

Client IP address and browser user agent. Weaker identifiers, but help with probabilistic matching. Sent automatically by most CAPI integrations.

Rule of thumb: Always send at minimum fbp + fbc + email (when available) + IP + user agent. This typically yields an EMQ of 6-8. Add phone number and external_id to get closer to 9-10. The higher your EMQ, the better Meta can optimise your campaigns — and the lower your cost per conversion will be.

5. Deduplication: avoid double-counting

When you run Pixel + CAPI simultaneously (as you should), you're sending the same event to Meta twice — once from the browser via Pixel and once from the server via CAPI. Without deduplication, Meta counts both, and your reporting shows double the number of conversions.

Deduplication is solved with one simple mechanism: event_id.

You generate a unique event_id for each event (e.g. a UUID or a combination of order ID + event type). The same event_id is sent with both the Pixel event and the CAPI event. When Meta receives two events with the same event_id and event_name within 48 hours, it automatically deduplicates and counts only one.

// Pixel side (browser JavaScript)
fbq('track', 'Purchase', {
  value: 599.00,
  currency: 'DKK'
}, {
  eventID: 'order_12345_purchase'
});

// CAPI side (server request to Meta)
{
  "event_name": "Purchase",
  "event_id": "order_12345_purchase",
  "event_time": 1741012800,
  "user_data": { /* hashed email, phone, fbp, fbc */ },
  "custom_data": { "value": 599.00, "currency": "DKK" }
}

The critical point is that event_id must be identical in both calls. A common mistake is generating event_id dynamically in the browser and then generating a different one on the server. It must be the same ID — generated in one place and shared between both systems.

Test your deduplication: Go to Meta Events Manager → Test Events. Fire a test event and verify that you see one event marked as "Deduplicated" — not two separate events. If you see duplicate events, your event_id setup is incorrect.

6. 4 implementation methods

There are four paths to CAPI, and the right one depends on your platform, your technical resources and your budget. Here is an overview of the pros, cons and typical time requirements for each:

Method 01
Shopify Native

Shopify has a built-in CAPI integration via the Facebook & Instagram sales channel. You connect your Meta Business account, activate Conversions API, and Shopify handles everything — events, deduplication, EMQ parameters. Free, 15-30 min setup. Recommended for all Shopify stores.

Method 02
GTM Server-Side

The most flexible solution. You set up a GTM server container (via Google Cloud, Stape or Addingwell), configure a Meta CAPI tag and control exactly which events and data layer variables are sent. Costs 150-800 DKK/month for hosting. 2-5 hours setup.

Method 03
Partner platforms

Platforms like Stape, Addingwell and Elevar offer "one-click" CAPI integration with visual setup. Easier than pure GTM Server-Side but less flexible. Typically 100-500 DKK/month. 1-3 hours setup. A good middle ground for non-technical teams.

Method 04
Direct API

Direct integration via Meta's Graph API. You write the code yourself — HTTP POST requests from your backend. Maximum control, but requires developer resources and ongoing maintenance. 10-20+ hours. Only relevant for custom setups or enterprise.

Which method should you choose?

Regardless of method, the principle is the same: send the right events with the right user parameters and proper deduplication. Everything else is just infrastructure.

Need help with setup? We implement CAPI as part of our POAS Tracking service and Facebook Ads management.

A common misconception is that CAPI bypasses consent requirements because data is sent server-side. This is incorrect. GDPR and the ePrivacy Directive still require consent to process personal data for marketing purposes — regardless of whether the data is sent from the browser or the server.

In practice this means you need to integrate your CAPI setup with your consent management platform (CMP). This is where Google Consent Mode v2 plays an important role, as it has become the de facto standard for consent signalling — including to Meta.

Basic mode vs. Advanced mode

Most Danish advertisers we work with use Advanced mode — it provides the best balance between compliance and data quality. But it depends on your company's risk appetite and your DPO's assessment. We always recommend consulting a GDPR specialist for the final configuration.

Technical implementation: In GTM Server-Side you can use consent signals from your CMP to control which CAPI events fire with full user data vs. anonymised signals. Shopify's native integration automatically respects Shopify's consent banner. Regardless of method: test your consent flow thoroughly — a mistake here can cost you a GDPR fine.

8. What does CAPI cost?

The Conversions API integration with Meta itself is free — it's an open API. But implementation has costs that vary significantly depending on the method:

0 DKK
Shopify native (included)
150-800
DKK/month for sGTM hosting
3-10K
DKK agency setup (one-off)
Method Ongoing cost Setup cost Setup time
Shopify Native 0 DKK/month 0 DKK (self-serve) 15-30 min
GTM Server-Side 150-800 DKK/month 3,000-8,000 DKK 2-5 hours
Partner platform 100-500 DKK/month 2,000-5,000 DKK 1-3 hours
Direct API 0 DKK/month 10,000-25,000 DKK 10-20+ hours

For most advertisers this is a no-brainer investment. Even the most expensive setup (sGTM with agency configuration) typically pays for itself within the first month through better advertising results. With 13% lower cost per result and a monthly ad budget of just 20,000 DKK, you save 2,600 DKK/month — more than enough to cover hosting costs.

At Gezar we include CAPI setup as standard in our Facebook Ads packages. It's too important to be an add-on — it's the foundation everything else is built on.

Frequently asked questions about CAPI

Facebook Pixel is a JavaScript snippet that runs in the user's browser and sends data directly to Meta. CAPI (Conversions API) sends data server-to-server — from your server directly to Meta's servers. Pixel is vulnerable to ad blockers, iOS ATT and cookie restrictions, while CAPI bypasses these issues. Meta recommends using both simultaneously with deduplication for the best possible data quality.

The CAPI integration with Meta itself is free. But implementation has costs: Shopify's native integration is free and included in all plans. GTM Server-Side requires a server container (typically 150-800 DKK/month via Google Cloud or Stape). Partner platforms like Stape cost 100-500 DKK/month. Agency setup typically costs 3,000-10,000 DKK as a one-off fee. See the pricing section above for a complete overview.

Event Match Quality is Meta's score from 1-10 showing how well your CAPI events can be matched with real Facebook users. The higher the EMQ, the better Meta can optimise your campaigns. An EMQ above 6.0 is considered good. You improve EMQ by sending more user parameters with your events — hashed email, phone number, fbp cookie, fbc cookie, external_id, IP address and user agent.

Yes. Even though CAPI sends data server-side, GDPR and the ePrivacy Directive still require consent to process personal data for marketing purposes. You need the user's consent before sending identifiable data via CAPI. With Consent Mode v2 you can send anonymised, aggregated signals even without consent (basic mode), but full user data requires explicit consent (advanced mode).

It depends on the method. Shopify's native integration takes 15-30 minutes. GTM Server-Side typically takes 2-5 hours including server setup, tag configuration and testing. Partner platforms like Stape take 1-3 hours. Direct API integration is the most time-consuming, typically taking 10-20+ hours depending on your tech stack. Need help? Contact us — we'll set up CAPI for you.

Want CAPI set up correctly?

We implement Meta Conversions API as part of our Facebook Ads management — from server setup and deduplication to EMQ optimisation and consent integration. You get better data, lower costs and more accurate attribution.

Get a free assessment

Read also

What Does Facebook Advertising Cost in 2026? Complete pricing guide for Meta Ads What is CAPI? Short definition in our marketing glossary POAS Tracking Optimise for profit with server-side tracking