Facebook Conversions API (CAPI): Setup & Benefits 2026

Table Of Contents
TL;DR: Facebook Conversions API (CAPI) sends conversion events directly from your server to Meta — bypassing browser restrictions, ad blockers, and iOS tracking limits. Media buyers who implement CAPI alongside pixel recover 30–50% of lost conversions and see meaningful CPA reductions within 7–14 days. If you need ad accounts built for server-side tracking from day one, browse Facebook accounts for advertising with established infrastructure.
| ✅ This guide is for you if | ❌ Skip this if |
|---|---|
| You're losing iOS conversions due to browser tracking limits | You only run brand awareness campaigns |
| Your pixel EMQ score is below 6 | You already have CAPI running with 90%+ event match |
| Your reported conversions don't match actual backend data | You're just starting and haven't set up pixel yet |
| You run e-commerce, nutra, or lead gen in Tier-1 geos | You only use Traffic objective, not conversions |
CAPI is no longer optional for serious media buyers. With iOS 14.5+ stripping third-party cookies, browser-only pixel tracking leaves 30–40% of your conversions unreported. Facebook's algorithm then optimizes against an incomplete picture — targeting the wrong people, missing your best converters, inflating your apparent CPA.
What Changed in Facebook Ads in 2026
- CAPI v2 is now the Meta-recommended standard — v1 still functions but v2 adds support for enhanced match quality, new event types, and better deduplication signals
- EMQ below 6 now limits optimization — Event Match Quality score directly affects bid performance; low EMQ ad sets are rate-limited in the auction
- CAPI integration simplified for major platforms — Shopify, WooCommerce, and Keitaro now have native CAPI connectors that configure server-side tracking in under 30 minutes without code
- Meta's deduplication algorithm improved — when pixel + CAPI send the same event, Meta's dedup logic is now more reliable, reducing double-count risk
- Privacy laws in EU require server-side consent management — CAPI events must only fire after explicit consent in GDPR regions; Meta Consent Mode v2 integration is required
Need accounts ready for this workflow? Browse farmed Facebook accounts with real activity history — best for fresh campaigns and testing.
Need accounts ready for this workflow? Browse Facebook Business Managers for professional teams — unlimited BM available, no daily limit.
What is the Facebook Conversions API?
Conversions API (CAPI) is a server-to-server integration that sends your conversion data directly from your backend infrastructure to Meta's servers — without touching the user's browser. Unlike the Facebook Pixel (which relies on JavaScript running in the browser), CAPI works independently of browser restrictions, ad blockers, cookie policies, and iOS privacy changes.
When a user converts on your site (submits a lead form, completes a purchase, registers), your server captures that event and sends it to Meta via an HTTPS API call with: - The event type (Lead, Purchase, etc.) - The event time - User identifiers (hashed email, phone, IP, user agent) - Custom data (value, currency, order ID)
Meta receives this server-side signal and matches it to Facebook user profiles using the identifiers you provide — this matching is what drives Event Match Quality.
Related: Facebook CAPI v2 Setup Guide for Media Buyers: Server-Side Tracking That Actually Works
The key difference from pixel:
| Pixel (Browser) | CAPI (Server) | |
|---|---|---|
| Affected by iOS restrictions | ✅ Yes | ❌ No |
| Blocked by ad blockers | ✅ Yes | ❌ No |
| Requires user's browser to execute | ✅ Yes | ❌ No |
| Can include full customer data | Limited | ✅ Yes |
| Works for offline conversions | ❌ No | ✅ Yes |
CAPI Setup Methods
Method 1: Shopify Native Integration (Recommended for e-commerce)
- In Shopify Admin → Settings → Customer Events
- Add Meta Pixel + CAPI via the Facebook & Instagram app
- The integration handles event configuration and deduplication automatically
- Verify in Events Manager → your pixel → Test Events
No coding required. This is the fastest path to pixel + CAPI running simultaneously.
Method 2: Meta's CAPI Gateway (No-code, server-side)
Meta offers a hosted CAPI gateway that sits between your server and Meta:
- Events Manager → your pixel → Settings → CAPI Gateway
- Follow the setup wizard — Meta provides a gateway URL
- Configure your website to forward events to this URL instead of directly to Meta
- Deduplication is handled automatically
Best for media buyers who want server-side tracking without setting up their own infrastructure.
Related: TikTok Pixel Setup, Events API & CAPI in 2026: Complete Implementation Guide
Method 3: Direct API Integration (Developer setup)
For custom tracking stacks, you send events directly via Meta's Graph API:
POST https://graph.facebook.com/v18.0/{pixel_id}/events Required fields per event:
{
"data": [{
"event_name": "Purchase",
"event_time": 1700000000,
"event_source_url": "https://yoursite.com/checkout/confirm",
"action_source": "website",
"user_data": {
"em": ["<SHA256_hashed_email>"],
"ph": ["<SHA256_hashed_phone>"],
"client_ip_address": "203.0.113.1",
"client_user_agent": "Mozilla/5.0..."
},
"custom_data": {
"value": 59.99,
"currency": "USD",
"order_id": "ORD-12345"
},
"event_id": "unique-event-id-12345"
}],
"access_token": "<your_access_token>"
} The event_id field is critical for deduplication — it must be identical in both the pixel and CAPI call for the same event.
Method 4: Tracker Integration (Keitaro / Binom / BeMob)
For affiliate media buyers using traffic trackers, CAPI can be routed through the tracker:
| Tracker | CAPI Support | Setup Difficulty | Price From |
|---|---|---|---|
| Keitaro | ✅ Native | Easy | $49/mo |
| Binom | ✅ Native | Medium | $69/mo |
| BeMob | ✅ Native | Easy | Free tier |
Keitaro's CAPI integration is the most popular among media buyers running multiple offers. It passes postback data from your landing page or CRM through to Facebook as server-side events, without requiring any custom code on your site.
⚠️ Important: When using a tracker, ensure the event_id from the browser pixel matches the event_id sent via CAPI. Without matching event_ids, Meta cannot deduplicate — you'll see double the conversions reported, which corrupts optimization. Most tracker integrations handle this automatically if configured correctly.
Deduplication: The Critical Step
When running pixel + CAPI simultaneously, the same conversion event is reported twice — once by the browser, once by the server. Without deduplication, Facebook counts both and shows double the actual conversions.
How to deduplicate:
- Generate a unique
event_idwhen the conversion event fires - Pass the same
event_idin the pixel call:fbq('track', 'Purchase', data, {eventID: 'unique-id'}) - Pass the same
event_idin the CAPI payload:"event_id": "unique-id" - Meta's system matches events with identical IDs and counts them once
Important: Event IDs must be unique per conversion and must match exactly between pixel and CAPI. Mismatch = double counting.
Related: How to Set Up Facebook Pixel in 2026: Events, Conversions, and Debugging Guide
Case: Solo affiliate buyer, nutra offer, UK. Problem: Running pixel-only. Reported 90 leads/week. Actual form submissions from CRM: 152/week. 40% of conversions missing. CPA reported $31 — actual CPA $18. Action: Implemented CAPI via direct API integration. Added hashed email to every Lead event. Enabled deduplication with event_id. Result: Reported leads jumped to 141/week. EMQ improved from 4.2 to 7.8. Facebook algorithm switched from broad targeting to finding high-intent audiences. CPL dropped from $31 to $21 in 10 days after CAPI rollout.
CAPI Benefits for Affiliate Media Buyers
1. Recover lost iOS conversions
iOS 14.5+ traffic constitutes 40–55% of US and EU Tier-1 audiences. Browser pixel misses these conversions entirely. CAPI sends events server-side — iOS restrictions have no effect.
2. Improve Event Match Quality
CAPI allows passing full customer data (hashed email, phone, name, IP) that is often unavailable to the browser pixel. Higher data quality → higher EMQ → better algorithm targeting.
3. Track offline conversions
For phone-based lead gen or multi-step funnels where conversion happens offline (a sales call, an appointment), CAPI can send the conversion event to Facebook after the fact — connecting the ad impression to the offline outcome.
4. Reduce reported CPA
When CAPI recovers missing conversions, your denominator grows — the same budget is now attributed to more conversions, making CPA appear lower. But more importantly: Facebook now has accurate data to optimize toward, so actual CPA improves over time.
⚠️ Important: Do not implement CAPI and then turn off the pixel. CAPI alone — without pixel — loses the browser-side context data (URL, referrer, viewport) that pixel provides. Meta recommends running both in parallel, with deduplication. Combined coverage is consistently 15–25% higher than either alone.
Common CAPI Mistakes
- Missing event_id deduplication — double counting inflates conversion metrics, corrupts algorithm training
- Sending CAPI events with a delay — events sent more than 7 days after the action are not used for optimization; send within 1 hour for best results
- Not hashing user data — email and phone must be SHA-256 hashed before sending; sending plain text violates Meta's data policy
- Using CAPI without pixel — loses browser context data; always run both
- action_source set incorrectly — for website conversions use "website"; using "app" or "offline" for web events breaks attribution
- Not verifying domain in BM — domain verification is required for CAPI to work correctly with AEM; skip this and your events may not attribute properly
Quick Start Checklist
- [ ] Confirm pixel is already installed and events are firing (prerequisite)
- [ ] Choose CAPI setup method: Shopify native / CAPI Gateway / Direct API / Tracker
- [ ] Generate unique event_id for each conversion event
- [ ] Configure deduplication: same event_id in pixel call and CAPI payload
- [ ] Hash user data: email and phone with SHA-256 before sending
- [ ] Include client_ip_address and client_user_agent for higher EMQ
- [ ] Test with Events Manager → Test Events: verify no duplicate events appear
- [ ] Check EMQ score in Events Manager — target 7+
- [ ] Monitor reported conversions for 7 days — expect 20–50% increase from pixel-only baseline































