Set up Snap Pixel with Google Tag Manager
Updated: Monday, November 4, 2024
Import Snap Pixel tag
Download here the Snap Pixel tag from Data Marketing School.
Go to the Templates section of Google Tag Manager. In the Tag Templates section, click on New.

Click on the 3 small dots at top right, then on Import.

Select the template.tpl
file you’ve just downloaded, then click Save.

Create a new Snap Pixel tag
Go to the Tags section of Google Tag Manager Web. Then click New to create a new tag.

Then select the recently imported Snap Pixel tag.

Set up Snap Pixel tag

- Snap Pixel ID: Your Snapchat pixel identifier.
- Event Name: The event to send. When this field is set to Inherit from dataLayer, events are mapped from the event name of your dataLayer. See the mapping table from GA4 events to Snapchat events.
Method 1: with standard dataLayer GA4 format
Enter your Snap Pixel ID and select Inherit from dataLayer in the Event Name field.
Unfold the Auto Mapping section and check the Send Ecommerce Data and Send User Data checkboxes.

Then trigger the tag on all the events in your dataLayer that you want to send to Snapchat, do not forget page views. In this example, I’m only triggering it on the gtm.init
(Initialization - All Pages trigger), view_item_list
, add_to_cart
and purchase
events, but adapt the events listed here to your needs.

Here’s what the tag looks like when configuration via method 1 is complete.

Method 2: with custom dataLayer format
If your dataLayer is custom, you’ll have to do the mapping yourself between your dataLayer events and the events you’re going to send to Snapchat.
Example with a custom dataLayer event AddToCart
.
dataLayer.push({
event: "AddToCart",
ecommerce: {
currency: "EUR",
value: 30.03,
items: [
{
item_id: "SKU_12345",
item_name: "Stan and Friends Tee",
affiliation: "Google Merchandise Store",
coupon: "SUMMER_FUN",
discount: 2.22,
index: 0,
item_brand: "Google",
item_category: "Apparel",
item_category2: "Adult",
item_category3: "Shirts",
item_category4: "Crew",
item_category5: "Short sleeve",
item_list_id: "related_products",
item_list_name: "Related Products",
item_variant: "green",
location_id: "ChIJIQBpAG2ahYAR_6128GcTUEo",
price: 10.01,
quantity: 3
}
]
},
user_data: {
email_address: "John Doe",
phone_number: "+15551234567"
}
});
Here’s how to configure the Snap Pixel tag with this dataLayer event.

Check implementation with Snap Pixel Helper
The Snap Pixel Helper is a Chrome extension that lets you debug the events you send to Snapchat.

GA4 mapping tables => Snapchat
dataLayer event mapping table
Name of dataLayer event | Name of Snapchat event |
---|---|
gtm.init_consent (Consent Initialization) | PAGE_VIEW |
gtm.init (Initialization) | PAGE_VIEW |
gtm.js (Container Loaded) | PAGE_VIEW |
gtm.dom (DOM Ready) | PAGE_VIEW |
gtm.load (Window Loaded) | PAGE_VIEW |
page_view | PAGE_VIEW |
view_item_list | LIST_VIEW |
view_item | VIEW_CONTENT |
add_to_wishlist | ADD_TO_WISHLIST |
add_to_cart | ADD_CART |
add_to_wishlist | add_to_cart |
add_payment_info | ADD_BILLING |
purchase | PURCHASE |
tutorial_complete | COMPLETE_TUTORIAL |
level_end | LEVEL_COMPLETE |
login | LOGIN |
login | LOGIN |
share | SHARE |
sign_up | SIGN_UP |
unlock_achievement | ACHIEVEMENT_UNLOCKED |
dataLayer parameter mapping table
E-commerce parameters
GA4 e-commerce parameter path | Snapchat parameter name |
---|---|
ecommerce.transaction_id | transaction_id |
ecommerce.value | price |
ecommerce.currency | currency |
ecommerce.items.length | number_items |
ecommerce.items[item_id] | item_ids |
ecommerce.items[item_category] | item_category |
ecommerce.items[item_brand] | brands |
ecommerce.shipping_tier | delivery_method |
User parameters
Parameter path | Snapchat parameter name |
---|---|
user_data.email_address | user_email |
user_data.sha256_email_address | user_hashed_email |
user_data.phone_number | user_phone_number |
user_data.sha256_phone_number | user_hashed_phone_number |
user_data.address.first_name | firstname |
user_data.address.last_name | lastname |
user_data.address.city | geo_city |
user_data.address.country | geo_country |
user_data.address.postal_code | geo_postal_code |
user_data.address.region | geo_region |
Other parameters
GA4 parameter path | Snapchat parameter name |
---|---|
level_name | level |
search_term | search_string |
sign_up_method | method |