Pixel Event Codes for Seven Ad Platforms: One Cheat Sheet
Every ad platform names its pixel events differently: Purchase, PURCHASE, checkout. This cheat sheet puts the standard names for seven ad platforms, plus Google Ads and GA4, side by side, with purchase code and the old names to stop using.
How pixel events work
A pixel is a small script from an ad platform that runs on your website. The base code goes on every page and loads the script. An event code is the extra line that says “this just happened”, for example a purchase, with details like the order value and currency.
The platform matches that event to the ad click or view that came before it. That is how Ads Manager can show a cost per purchase, and how its bidding learns which people are likely to buy.
The catch: each platform has its own event names, capitals and code. Meta writes Purchase, Snapchat PURCHASE, and Pinterest calls the same thing checkout. One wrong letter and the event is ignored or counted as something else. Each name below comes from the platform’s own documentation, linked in the notes further down.
Shopping events by platform
These are the standard names for store actions. Copy them exactly, capitals included. A dash means the platform has no standard event for that action; use a custom event instead.
Meta, TikTok and Reddit
| Action | Meta | TikTok | |
|---|---|---|---|
| Purchase | Purchase |
Purchase ¹ |
Purchase |
| Add to cart | AddToCart |
AddToCart |
AddToCart |
| Start checkout | InitiateCheckout |
InitiateCheckout |
— |
| Add payment info | AddPaymentInfo |
AddPaymentInfo |
— |
| View product | ViewContent |
ViewContent |
ViewContent |
| Search | Search |
Search |
Search |
| Add to wishlist | AddToWishlist |
AddToWishlist |
AddToWishlist |
Pinterest and Snapchat
| Action | Snapchat | |
|---|---|---|
| Purchase | checkout |
PURCHASE |
| Add to cart | addtocart |
ADD_CART |
| Start checkout | initiatecheckout |
START_CHECKOUT |
| Add payment info | addpaymentinfo |
ADD_BILLING |
| View product | viewcontent or pagevisit |
VIEW_CONTENT |
| Search | search |
SEARCH |
| Add to wishlist | addtowishlist |
ADD_TO_WISHLIST or SAVE |
¹ TikTok’s Purchase replaced the older CompletePayment in 2025.
Pinterest names are lowercase, as in Pinterest’s own code examples, even though its event table capitalizes them.
Lead and sign-up events
Meta, TikTok and Reddit
| Action | Meta | TikTok | |
|---|---|---|---|
| Lead form | Lead |
Lead ² |
Lead |
| Sign-up | CompleteRegistration |
CompleteRegistration |
SignUp |
| Subscribe | Subscribe |
Subscribe |
SignUp |
| Contact | Contact |
Contact |
— |
| Book appointment | Schedule |
Schedule |
— |
| Start trial | StartTrial |
StartTrial |
— |
| Application | SubmitApplication |
SubmitApplication |
— |
Pinterest and Snapchat
| Action | Snapchat | |
|---|---|---|
| Lead form | lead |
— ³ |
| Sign-up | signup |
SIGN_UP |
| Subscribe | subscribe |
SUBSCRIBE |
| Contact | Contact ⁴ |
— |
| Book appointment | Schedule ⁴ |
RESERVE |
| Start trial | StartTrial ⁴ |
START_TRIAL |
| Application | SubmitApplication ⁴ |
— |
² TikTok’s Lead replaced the older SubmitForm in 2025.
³ Snapchat has no lead event. Use SIGN_UP or one of its custom event slots.
⁴ Pinterest lists these in its event table, but no official code example shows how to spell them in code. Test them in Pinterest’s tools before you rely on them.
Page views are sent by the base code itself: PageView on Meta, ttq.page() on TikTok, PAGE_VIEW on Snapchat, PageVisit on Reddit and pintrk('page') on Pinterest, where pagevisit is a separate event for key pages such as product pages.
GA4, Google Ads, Microsoft and LinkedIn
These four work differently. GA4 uses lowercase names with underscores, Microsoft lets you type any event action, and LinkedIn and Google Ads don’t use event names for conversions.
| Action | GA4 | Microsoft (suggested) | LinkedIn type |
|---|---|---|---|
| Purchase | purchase |
purchase |
purchase |
| Add to cart | add_to_cart |
add_to_cart |
add_to_cart |
| Start checkout | begin_checkout |
begin_checkout |
— |
| Lead form | generate_lead |
generate_lead |
lead |
| Sign-up | sign_up |
sign_up |
sign_up |
| View product | view_item |
view_item |
key_page_view |
| Search | search |
search |
— |
- GA4 names come from Google’s recommended events, which you send yourself.
- Microsoft Advertising doesn’t have fixed event names. Its custom events page says you can use any text, and offers a list of suggested actions that includes the names above (Microsoft Advertising Help). Whatever you use must match the event action in your conversion goal exactly.
- LinkedIn uses the optional
conversion_typefield with one of 13 codes (LinkedIn Help). - Google Ads sends every conversion with the event name
conversion. Thesend_tovalue (AW-CONVERSION_ID/CONVERSION_LABEL) picks which conversion action it counts for.
Purchase code and notes per platform
Each block shows a purchase with a value and currency, plus an order number or event ID where the browser code has a field for it. Replace the example values with real data.
Meta
fbq('track', 'Purchase', {value: 49.90, currency: 'USD'}, {eventID: 'order-10045'});
The base code fires PageView by itself. Purchase needs value and currency; the event ID goes in a fourth argument (Meta Pixel reference). Meta also has CustomizeProduct, Donate and FindLocation. The pixel event code generator for Meta writes any of the 17 standard events. For server events, see the Conversions API guide.
TikTok
ttq.track('Purchase', { content_type: 'product', value: 49.90, currency: 'USD' }, { event_id: 'order-10045' });
TikTok renamed two events in 2025: SubmitForm is now Lead and CompletePayment is now Purchase. Old names still work, but new setups should use the new ones. ClickButton and PlaceAnOrder are on their way out, with a sunset planned for 2027 (TikTok Help). New since 2025: ApplicationApproval, StartTrial and SubmitApplication. TikTok’s list also has CustomizeProduct, Download and FindLocation (standard events). The pixel events code generator for TikTok only offers the current names.
pintrk('track', 'checkout', { value: 49.90, order_quantity: 1, currency: 'USD', order_id: 'order-10045', event_id: 'order-10045' });
Pinterest’s purchase event is checkout, described as someone completing a transaction. Its list has 20 event types, counting the custom one, including viewcategory and watchvideo (Pinterest Help). Only value and order_quantity show up in conversion reporting. The conversion tag builder for Pinterest uses the spelling from Pinterest’s examples.
Snapchat
snaptr('track', 'PURCHASE', { price: 49.90, currency: 'USD', transaction_id: 'order-10045' });
The value field is price, not value. The base code already tracks PAGE_VIEW. Customer details such as an email address can only go in the setup line of the base code, snaptr('init', …), not in an event (Snap Business Help). There is no lead event, but there are five custom slots, CUSTOM_EVENT_1 to CUSTOM_EVENT_5. The pixel events generator for Snapchat builds clean code for each one.
rdt('track', 'Purchase', { value: 49.90, currency: 'USD', itemCount: 1 });
Reddit has eight standard events: PageVisit, ViewContent, Search, AddToCart, AddToWishlist, Purchase, Lead and SignUp (Reddit for Business). PageVisit is in the base code. Reddit suggests keeping that base PageVisit and sending details such as value and item count in a separate event on the same page (manual conversion events). Add a conversionId, such as the order number, only when you also send the purchase through Reddit’s Conversions API. The standard events generator for the Reddit pixel handles those details.
window.lintrk('track', { conversion_id: 12345, conversion_value: 49.90, conversion_currency: 'USD' });
LinkedIn has no event names in code. You create a conversion in Campaign Manager, copy its number, and fire it when the action happens. To send a changing value, add conversion_value and conversion_currency (LinkedIn Help). An event_id is only needed when you also send the same conversion through LinkedIn’s Conversions API. If you still use image-pixel conversions, LinkedIn asks you to switch them to Insight Tag conversions, which can use first-party cookies (LinkedIn Help). The Insight Tag conversion code generator for LinkedIn adds the value fields for you.
Microsoft Advertising
window.uetq.push('event', 'purchase', { 'revenue_value': 49.90, 'currency': 'USD', 'transaction_id': 'order-10045' });
The event action, purchase here, can be any text, but it must match what you typed in the conversion goal (Microsoft Advertising Help). The currency code must be in capitals. Old tags may still use an older code style with short keys like ea, ec and gv. Microsoft recommends moving to the 'event' style shown here (update your UET tags). The UET event code generator for Microsoft Advertising writes the new style.
Google Ads and GA4
gtag('event', 'conversion', { 'send_to': 'AW-CONVERSION_ID/CONVERSION_LABEL', 'value': 49.90, 'currency': 'USD', 'transaction_id': 'order-10045' });
Google Ads passes the value as a number with a period for decimals and the currency as a three-letter code (Google Ads Help). The global site tag is now called the Google tag; older conversion tags still work, but Google recommends the Google tag (Google Ads Help). The conversion tracking code generator for Google Ads fills in your ID and label.
For GA4, a purchase is the purchase event with transaction_id, value, currency and an items list. If you set a value, the currency is required (GA4 events reference).
Standard vs custom events
Use a custom event only when no standard name fits, such as finishing a quiz. The rules differ:
- Meta:
fbq('trackCustom', 'Name'), names up to 50 characters (Meta for Developers). - TikTok: custom events work for reports and audiences, not for campaign optimization. Names can have up to 50 characters and can’t reuse a standard or reserved name (TikTok Help).
- Pinterest: up to 100 characters of letters, digits,
_and-, treated as not case sensitive (Pinterest Developers). - Snapchat: the five slots
CUSTOM_EVENT_1toCUSTOM_EVENT_5. - Reddit:
rdt('track', 'Custom', { customEventName: '...' }). The name can have up to 64 characters, is case sensitive and must not match one of Reddit’s standard events (Reddit for Business). - GA4: names must start with a letter and are case sensitive (Analytics Help). GA4 doesn’t process names longer than 40 characters (event collection limits).
Event IDs and deduplication
If you send events both from the browser and from your server, each platform needs a shared ID to keep one copy. The field name differs, and so does how long the platform waits for the matching copy:
| Platform | Browser field | Window | Source |
|---|---|---|---|
| Meta | eventID |
48 hours | Meta |
| TikTok | event_id |
48 hours | TikTok |
event_id |
48 hours | ||
| Snapchat | client_dedup_id |
48 hours | Snap |
conversionId |
48 hours (two days) | ||
event_id |
not documented | ||
| Microsoft | event_id |
not documented | Microsoft |
“Not documented” means the platform’s page explains the shared ID but states no time window. Pinterest also accepts eventID or eid. Snapchat additionally matches purchases by transaction_id for up to 30 days.
Use a new ID for every action. An order number is ideal for purchases. Reddit warns that if the same ID is used for many events, those events are marked as duplicates and not counted. In Google Ads and GA4, the transaction_id plays the same role for repeat page loads: GA4 drops repeat purchases with the same ID, and Google warns never to send it empty (Analytics Help).
How to test each pixel
Most platforms offer a free browser extension that shows which events a page sends. Turn it on, then click through a product page, the cart and a test order.
- Meta: Meta Ads Data Advisor, the extension formerly called Meta Pixel Helper (Meta for Developers).
- TikTok: TikTok Pixel Helper (TikTok Help).
- Pinterest: Pinterest Tag Helper (Pinterest Help).
- Snapchat: Snap Pixel Helper. Snap suggests checking that
PURCHASEcarries price, currency and transaction ID (Snap Business Help). - Reddit: the Reddit Pixel Helper extension (Reddit for Business).
- Microsoft: UET Tag Helper (Microsoft Advertising Help).
- Google Ads and GA4: Tag Assistant, which shows which tags fired (Tag Manager Help).
Turn off ad blockers while you test.
When an event doesn't fire
Check these in order:
- Base code first. Every platform needs its base code on the page before the event code runs.
- Exact name. Copy names from the tables above. GA4, for example, treats
Purchaseandpurchaseas two different events. - Right moment. Purchase code belongs on the order confirmation page, or in the code that runs after payment. If your checkout skips that page, the event never runs.
- Consent. A declined consent banner can hold the tag back, as expected.
- Test it with the helper tools above, then place a real test order.
If you manage tags in Google Tag Manager, the GTM audit checklist helps you find duplicate and outdated tags across all these platforms.
Frequently asked questions
What are pixel standard events?
They are event names an ad platform defines for common actions, such as a purchase or a lead. Sent under its standard name, an action plugs straight into the platform’s reporting, audiences and optimization.
What is the purchase event called on each ad platform?
Meta, TikTok and Reddit use Purchase, Pinterest checkout, Snapchat PURCHASE and GA4 purchase. Microsoft lets you name the action yourself; purchase is one of its suggested names. Google Ads sends conversion with a send_to label, and LinkedIn fires a conversion_id.
What is the difference between standard events and custom events?
Standard events use the platform’s own names. Custom events use names you make up, for actions with no standard name. Some platforms limit them; TikTok, for example, says custom events aren’t used for campaign optimization.
What is an event ID and why does it matter?
An event ID is a unique code for one action, such as an order number. If you send the same event from the browser and from your server, the platform uses the matching ID to count it once. On Meta, the pixel’s eventID must match the server’s event_id (Meta for Developers).
Which pixel event should I use for lead forms?
Use Lead on Meta, TikTok and Reddit, lead on Pinterest, generate_lead in GA4 and lead as the LinkedIn conversion type. Snapchat has no lead event, so use SIGN_UP or a custom event. Fire it when the form is actually sent, not when it opens.
Why is my pixel purchase event not firing?
Common causes: the base code is missing or loads after the event code, the name is spelled differently from the platform’s list, a redirect skips the thank-you page, or consent settings hold the tag back. Check with the platform’s helper extension, such as Meta Ads Data Advisor (formerly Meta Pixel Helper) or Google’s Tag Assistant.