Skip to Content
Snapchat CAPI

Snapchat CAPI Conversion Tracking with Google Tag Manager

Snapchat CAPI: Optimize your ads for better performance

The evolution of tracking rules and the decline in effectiveness of the Snapchat Pixel

The tracking landscape is evolving rapidly and presents new challenges for data collection, particularly with ad blockers, the progressive disappearance of third-party cookies, and the limitations imposed by certain browsers such as Safari. As a result, the Snapchat Pixel is no longer as effective as it once was, making it difficult to accurately track conversions using this tool alone. To overcome these obstacles and provide advertisers with a reliable data collection solution, the Snapchat Conversion API has become an essential tool. Discover why integrating Snapchat CAPI is crucial to the success of your ad campaigns, as well as our tips for optimal implementation.

Snapchat Conversion API + Snap Pixel, and deduplication management:

The Snapchat CAPI and Snap Pixel use different methods of data collection. Unlike the Snap Pixel, which relies on data collection directly via the browser and the use of third-party cookies (client-side tracking), Snapchat CAPI operates server-side tracking. This means that the Conversion API does not need third-party cookies to function, as it transmits user information server-to-server, ensuring more reliable and accurate data collection.

As of today, Snapchat recommends using both tracking methods in parallel, by activating tracking via both the Pixel and CAPI.

The Snap Pixel remains the most effective solution when third-party cookies are still available (notably on browsers such as Chrome). However, for browsers that have already blocked these cookies (such as Safari or Firefox), Snapchat CAPI delivers better performance. By combining these two tracking systems, you achieve the most optimized solution to guarantee a sufficient volume of data, regardless of the browser your visitors use.

That said, setting up dual tracking is not mandatory. This dual tracking can improve the performance of your ad campaigns, but it may also negatively impact:

  • your website’s overall performance: because the Snap Pixel script must be loaded in the browser.
  • your data governance: you allow Snapchat’s SDK to collect the data of its choice.

The final decision will depend on your priorities and your specific situation.

Recommendation for dual implementation of Snap Pixel and Snapchat CAPI

Once you have configured both Snapchat CAPI and the Snap Pixel, it is essential that Snapchat can identify and deduplicate duplicated events.

To do this, it is necessary to send an identical event ID via each tracking method. Snapchat will then compare these events and remove duplicates, ensuring that only one event is counted. However, if an event is not captured by the Snap Pixel but is transmitted via server-side tracking, Snapchat will record this additional event, thus ensuring comprehensive data collection.

Snapchat-side deduplication of an event sent by both Pixel and Snapchat CAPI, using eventID

With this approach, data tracking becomes truly optimal, guaranteeing a high volume of conversions while improving the accuracy and reliability of the collected information.

Snapchat CAPI Addingwell Tag: deduplication via an event ID

The Snapchat CAPI Addingwell tag was designed to allow for combined tracking: both via the Snap Pixel and the Snapchat Conversion API, while incorporating a unique event ID. This ID must be sent simultaneously to the Snap Pixel and in the GA4 event_id parameter to ensure effective deduplication of events.

Recommendation for Addingwell tag dual implementation of Snap Pixel and Snapchat CAPI

Expected benefits post set-up

Once Snapchat CAPI and Snap Pixel are implemented, along with ad blocker bypassing and Safari’s ITP workaround, the reliability and accuracy of your data will be significantly improved. In general, our clients observe an increase in the number of conversions attributed in their Snapchat Ads Manager!

Here’s an example of what you can expect after a proper implementation from the Snapchat Events Manager:

Data received by Snapchat from both Snapchat CAPI and Snap Pixel

We can see here that 41,349 events were received in the last 3 days via the Pixel SDK (=from Snap Pixel), and 43,334 events were received from the Conversions API (=Snapchat CAPI). In total, 84,683 events were received by Snapchat over the last 3 days.

In this example, after deduplication we observe 4.5% more events collected via Snapchat CAPI!

Setting up the Addingwell Snapchat CAPI Tag

Configure the tag

Create a new tag in Google Tag Manager Server-Side and go to the Community Template Gallery.

Search in the gallery

Next, search for the Snapchat Conversion API by Addingwell tag and import it into your GTM container.

Importing the Snapchat CAPI by Addingwell tag from the community template gallery

To configure the tag, two pieces of information are required:

Once you’ve retrieved the access token and pixel ID, configure the Snapchat CAPI tag.

Snapchat CAPI tag setup

Event Name Setup Method

Setup MethodDescription
Inherit from clientInstructs the tag to map GA4 events received from the client-side container to Snapchat standard events.
OverrideManually map GA4 events to what should be sent to Snapchat. Choose to send either a standard event or a custom event (CUSTOM_EVENT_[1-5]).

Access Token

Enter here the access token retrieved in the Business Settings.

Pixel ID

Enter here the pixel ID retrieved in the Business Settings or in the Events Manager.

Test Events

Check this box only to test sending events to Snapchat

It is not recommended to keep this box checked in the Snapchat Conversion API tag in production. Make sure to uncheck it before publishing your server container.

Trigger the tag

Trigger the Snapchat CAPI tag on relevant GA4 events using the tag mapping table.

For example, for an e-commerce site, the following events are generally used:

Event Name
page_view
view_item_list
view_item
add_to_cart
begin_checkout
add_payment_info
purchase

This list of events is, of course, not exhaustive and depends on your situation.

For optimal organization, create a Lookup Table variable configured as follows:

Configuring a lookup table in Google Tag Manager Server-Side

In the Snapchat CAPI tag, create a custom trigger verifying that the events come from GA4 (Client Name = GA4) and that the previously configured Lookup Table returns true.

Configuring a custom trigger in Google Tag Manager Server-Side

Snap Pixel Setup (Optional)

As explained in our documentation, the Snap Pixel remains the most effective solution when third-party cookies are still available (notably on browsers such as Chrome). If deduplicating events between the Snap Pixel and Snapchat CAPI seems complex, don’t worry, this guide will explain everything.

In this documentation, we assume that you have already configured the Snap Pixel tag and only need to handle deduplication using the Event ID.

Adding the event ID in the Snap Pixel

In addition to your usual Snap Pixel tag configuration, you need to add the client_deduplication_id parameter in the Additional Initialization Data section.

Additional Initialization Data section in Snap Pixel

Click Add Row, then enter client_deduplication_id in the Key field.

Adding the client_deduplication_id key in Snap Pixel

For the Value field, click the LEGO icon to the right and create a new variable. Click Discover more variable types in the Community Template Gallery to access the variable template gallery. Then select the Event Id variable from mbaersch.

Event Id variable from mbaersch

Next, click Add to workspace.

Add Event Id variable to workspace

Here’s the result after this configuration:

Deduplication configured in the Snap Pixel

Adding the event ID to GA4 events

We will now do the same for all GA4 events that are common with those sent to Snapchat via the Snap Pixel.

For the Google Tag

Deduplication configured for Google Tag

For a GA4 Event Tag

Deduplication configured for GA4 Event Tag

Triggering the Snap Pixel tag

To ensure proper deduplication on the Snapchat side, you must trigger your Snapchat events using the same triggers as those used for GA4.

Matching triggers between Snap Pixel and GA4

Verifying Received Data

After configuring your Snapchat Conversion API tag, it is essential to verify the following:

  • Your server container successfully sends events to Snapchat.
  • The volume of events received by Snapchat is consistent and meets expectations.
  • The data quality is sufficient for Snapchat to match your key events to a specific Snapchat user.

Verifying Event Transmission

GTM Server-Side Preview

The first step is to verify that the Snapchat Conversion API tag activates correctly for the events defined in the trigger.

In the server container preview, ensure that the Snapchat Conversion API tag fires for a specific event (in our example, view_item). Confirm it appears in the Tags Fired section with status Succeeded.

Verify Snapchat Conversion API tag firing server-side

In preview mode, click the Snapchat Conversion API tag to check that requests are successfully sent to Snapchat via the Conversion API.

Verify data sending via Snapchat Conversion API

Checking Event Volume

Snapchat Side: Events Received Volume

Go to your Snapchat Events Manager.
In Event Sources, click your Snapchat Pixel.
The events received by Snapchat appear here for Pixel + Conversion API data sources.

Verify data received via Snapchat Conversion API and Snap Pixel

Snapchat Side: Pixel volume, Conversion API volume, and deduplication

If you implemented dual tracking via the Pixel and Snapchat Conversion API, ensure that events:

  • Come from both data sources, i.e., both Pixel AND Conversion API.
  • Are correctly deduplicated, so that Snapchat recognizes the same event received from both sources and keeps only one.

In our example, we verify our implementation with the Purchase event:

Verify Purchase event received via Snapchat Conversion API and Snap Pixel

We can see that both data sources are active, with Snapchat receiving Purchase events from the Pixel SDK (491 events from Snap Pixel) and from Snapchat Conversion API (511 events from Server).

The number of events received from the Pixel (=browser) should remain relatively stable. Adding Snapchat Conversion API tracking should not affect the volume received via the browser. You should observe a roughly similar number of events for this Pixel data source.

However, the number of events received from the server (Snapchat Conversion API) should exceed Pixel events.
If you see 5–20% more events for Conversion API, your setup is good. If the volume is higher, check your setup.

If you see a higher volume of events from the Pixel than from Conversion API, it means a Pixel implementation exists without Event ID configured, so Pixel events are received without deduplication. A Pixel might also be configured outside GTM WEB via hard-coded site implementation (check with your dev team).

Next, verify that events sent to Snapchat are correctly deduplicated by clicking the Deduplication tab in the event view.

Verify event deduplication in Snapchat Ads Manager

Here we see that deduplication is effective, no issues detected.
Event IDs are sent 100% from both the Pixel and Conversion API, enabling perfect deduplication.

Finally, the Overlap information shows the percentage of events containing a deduplication key and received from both the Conversion API and Pixel. In our example:

  • 99.03% of events were sent simultaneously from both sources with the same Event ID. All these events are thus deduplicated.

Addingwell Side via Tag Health: Successful Requests

Go to the Tag Health tab in your Addingwell container. Start by reviewing the number of requests sent for the Snapchat Conversion API over a given period and the request success rate. Click Snapchat Conversion API for detailed information.

Verify Snapchat Conversion API requests in Addingwell container

This screen displays event details sent from your server to the Snapchat Conversion API, along with request success rates, which in our example is 100%.

Request success percentage for Snapchat Conversion API in Addingwell container

Checking Data Quality

Sending conversion events to Snapchat is a critical first step, but this process can be optimized by including user data (like email, phone number, or first and last name) with these events. This allows Snapchat to match the server-sent data with actual Snapchat users.

This enables Snapchat to:

  • Better attribute conversions, identifying conversions that might otherwise not be linked to your Snapchat campaigns.
  • Optimize bids more effectively, leveraging higher-quality data.

For a detailed guide on reliable server-side user data sending, see our documentation.

Addingwell Side via Data Monitoring

Go to Data Monitoring in your Addingwell container. This screen lets you view all user data processed by your GA4 client and available for server-side events. For example, you can see that email data is present in 25.9% of server-side events. To view which events successfully transmitted emails, click the search icon for details.

Check data quality in Addingwell Data Monitoring

Here you can see the percentage of user email data present in server-side events.

Verify user data quality in Addingwell

In our example, user email data is present in 100% of purchase events but only 35.8% of add_to_cart events. This aligns with our conversion funnel since email is not always required or available at the add-to-cart stage.

The transmitted data is high-quality, as events contain relevant user information.

Congratulations

You have completed the configuration of Snapchat Conversion API, verified that your data is properly sent to Snapchat, and confirmed its quality.

You are now ready to optimize your ad campaigns with reliable, accurate data.

If you encounter any issues during these steps, please contact our support team.