> ## Documentation Index
> Fetch the complete documentation index at: https://adadvisor.ai/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# What is the Conversions API (CAPI)? Server-Side Tracking for Meta

> The Conversions API sends conversion data from your server to Meta, bypassing browser limitations. Learn why CAPI matters after iOS 14.5.

**Conversions API (CAPI)** is Meta's server-side tracking tool that sends [conversion](/learn/conversions) events directly from your server to Meta. Instead of relying on a browser-based pixel to fire JavaScript on a visitor's device, CAPI transmits purchase, lead, and other conversion data through a server-to-server connection. This makes it far more reliable than browser tracking alone.

## How does the Conversions API work?

With the Meta Pixel, tracking works like this: a visitor lands on your site, the pixel JavaScript fires in their browser, and that browser sends event data to Meta. If anything interrupts that browser session (ad blockers, cookie restrictions, slow page loads, or iOS privacy settings), the event is lost.

CAPI flips this. Your server records the conversion event and sends it directly to Meta's servers through an API call. The visitor's browser is never involved. The data travels server-to-server, which means browser limitations can't block it.

<Note>
  **Pixel path:** Visitor's browser -> JavaScript fires -> Meta servers

  **CAPI path:** Your server -> API call -> Meta servers
</Note>

## Pixel vs Conversions API comparison

| Feature                        | Meta Pixel                  | Conversions API                          |
| ------------------------------ | --------------------------- | ---------------------------------------- |
| How data travels               | Browser to Meta             | Server to Meta                           |
| Blocked by ad blockers         | Yes                         | No                                       |
| Affected by iOS 14.5           | Yes, heavily                | Minimal impact                           |
| Affected by cookie deprecation | Yes                         | No                                       |
| Requires website code          | Yes (JavaScript snippet)    | No (server-side integration)             |
| Data quality                   | Degrades over time          | Consistent and reliable                  |
| Setup complexity               | Low (copy/paste pixel code) | Medium to high (server configuration)    |
| Real-time tracking             | Near-instant                | Slight delay (should send within 1 hour) |
| Best for                       | Page views, button clicks   | Purchases, leads, offline events         |

## Why the Conversions API matters

Three major shifts have made browser-based tracking unreliable:

**iOS 14.5 and App Tracking Transparency (ATT).** Apple's 2021 update lets users opt out of cross-app tracking. About 75-80% of iOS users opted out. This gutted the pixel's ability to track conversions from iPhone users, which represent roughly 50% of mobile ad traffic in the US.

**Ad blockers.** Around 30-40% of desktop users run ad blockers that prevent the Meta Pixel from firing. Every blocked pixel event is a conversion Meta never sees and can never optimize for.

**Cookie deprecation.** Third-party cookies are being phased out across all major browsers. Safari and Firefox already block them by default. Chrome is following. The pixel depends on cookies to identify users across sessions.

The result: if you only use the pixel, Meta is blind to a significant percentage of your actual conversions. When Meta can't see conversions, it can't optimize your campaigns effectively. Your [CPA](/learn/cpa) rises, your [ROAS](/learn/roas) drops, and you lose confidence in your data.

CAPI solves this by sending conversion data through a channel that ad blockers, iOS privacy settings, and cookie restrictions can't touch.

## Conversions API in plain English

Think of the Meta Pixel like sending a letter through a neighborhood where half the mailboxes are locked. Some letters get delivered, but many don't. You never know which ones made it.

CAPI is like hand-delivering the message yourself. You walk it straight to Meta's front door. No mailboxes, no locked gates, no lost letters. The message always arrives.

For the best results, you use both. The pixel catches fast, easy-to-track events (page views, button clicks). CAPI ensures the high-value events (purchases, leads, signups) always get through. Together, they give Meta the fullest possible picture of what's working.

## Common Conversions API mistakes

<Accordion title="Using CAPI without deduplication">
  If you send the same event through both the pixel and CAPI (which you should), you need deduplication to prevent Meta from counting it twice. Both events must share the same `event_id`. Without this, Meta sees one purchase as two, inflating your conversion numbers and throwing off optimization. Meta deduplicates automatically when it receives matching `event_id` values from both sources.
</Accordion>

<Accordion title="Not sending all key events">
  Some advertisers set up CAPI for purchases only and skip add-to-cart, initiate checkout, and lead events. Meta's algorithm uses the full conversion funnel to find the right audience. Sending only bottom-of-funnel events starves the algorithm of the signal it needs to optimize mid-funnel behavior.
</Accordion>

<Accordion title="Sending events too late">
  CAPI events should be sent within 1 hour of the conversion happening. Meta accepts events up to 7 days late, but delayed data reduces optimization quality. The algorithm works best with near-real-time data. If your server batches events and sends them once a day, you're losing most of the optimization benefit.
</Accordion>

<Accordion title="Thinking CAPI replaces the Pixel">
  CAPI is a complement to the pixel, not a replacement. The pixel still captures browser-side events like page views and scroll depth that your server doesn't naturally see. Meta recommends running both together. The combination (called "redundant setup") gives Meta the most complete data, with deduplication preventing double-counting.
</Accordion>

<Accordion title="Not passing enough customer parameters">
  CAPI works best when you send customer matching parameters like email, phone number, and IP address (hashed for privacy). These help Meta match the server event to the right user. If you only send the event name and value without matching parameters, Meta can't attribute the conversion to a specific ad click.
</Accordion>

## How to implement the Conversions API

<Steps>
  <Step title="Verify your Meta Pixel is working">
    Before adding CAPI, make sure your pixel is firing correctly for all key events (page view, add to cart, initiate checkout, purchase, lead). Use the Meta Events Manager Test Events tool to confirm. CAPI builds on top of the pixel, so get the foundation right first.
  </Step>

  <Step title="Choose your integration method">
    Meta offers several ways to set up CAPI: direct API integration (most control, requires developer resources), partner integrations (Shopify, WooCommerce, WordPress plugins that handle it automatically), or the Conversions API Gateway (a Meta-managed server you deploy on AWS or GCP). For most e-commerce stores, the platform plugin is the fastest path.
  </Step>

  <Step title="Set up event deduplication">
    Generate a unique `event_id` for each conversion event. Send this same ID through both the pixel and CAPI. Meta uses it to match and deduplicate. Without this step, your reported conversions will be inflated. Most platform plugins handle deduplication automatically.
  </Step>

  <Step title="Include customer matching parameters">
    Send hashed customer data (email, phone, first name, last name, city, state, zip) with each event. More parameters mean higher match rates. A good CAPI setup achieves 80-95% Event Match Quality in Events Manager. Check your Event Match Quality score and aim for "Good" or "Great."
  </Step>

  <Step title="Test with Meta Events Manager">
    Use the Test Events tab in Events Manager to verify that CAPI events are arriving, deduplication is working (you should see "Deduplicated" labels), and Event Match Quality is high. Run test purchases through your store and confirm they appear correctly.
  </Step>

  <Step title="Monitor Event Match Quality ongoing">
    After launch, check Events Manager weekly. Look at the Event Match Quality score for each event. If it drops below "Good," you're likely missing customer parameters. Also compare pixel-only vs CAPI event counts to ensure both channels are sending consistently.
  </Step>
</Steps>

## Track your CAPI-powered conversions in context

AdAdvisor pulls your conversion data from Meta and shows it alongside [CPA](/learn/cpa), [ROAS](/learn/roas), and [CTR](/learn/ctr) for every campaign. When your CAPI setup is working, you'll see more accurate conversion numbers flowing through, which means better optimization and more trustworthy reporting.

<Columns cols={2}>
  <Card title="Try AdAdvisor Free" icon="rocket" href="https://app.adadvisor.ai">
    See all your Meta Ads conversion data, CPA, and ROAS in one dashboard.
  </Card>

  <Card title="Connect Meta Ads" icon="plug" href="/user-guide/connect-meta-ads">
    Link your Meta ad account to AdAdvisor in under 2 minutes.
  </Card>
</Columns>

## Related terms

<Columns cols={3}>
  <Card title="Conversions" icon="bullseye" href="/learn/conversions">
    Actions people take after clicking your ad
  </Card>

  <Card title="CPA" icon="badge-dollar-sign" href="/learn/cpa">
    Cost to acquire each conversion
  </Card>

  <Card title="ROAS" icon="chart-line" href="/learn/roas">
    Revenue generated per dollar of ad spend
  </Card>
</Columns>
