When you add the Meta Pixel to your website, you are not just telling Meta that someone visited a page. You are also reporting specific actions — what product they viewed, whether they added it to cart, and whether they completed a purchase. These specific actions are captured using standard events.
Standard events are Meta’s pre-defined conversion actions that the algorithm natively understands and optimises toward. Using them correctly is the difference between a pixel that passively collects data and one that actively improves your campaign performance. This guide covers every standard event, the parameters they require, and exactly which ones to prioritise for your business type.
What Are Meta Pixel Standard Events?
Standard events are specific JavaScript function calls that fire when a user takes a meaningful action on your website. Meta has pre-built these events into its advertising system, meaning the algorithm already knows how to interpret and optimise toward them without any additional configuration on your part.
There are three types of events in the Meta Pixel ecosystem:
- Standard events — Meta’s pre-defined list (PageView, Purchase, Lead, etc.). The algorithm natively understands these and can optimise campaigns toward them.
- Custom events — events you define yourself with a name that is not on Meta’s standard list. Useful for tracking niche actions, but the algorithm cannot optimise toward custom events directly.
- Custom conversions — rules you create in Events Manager that fire based on a URL visit or a standard/custom event. These can be used as campaign goals but have a 20-per-account limit.
For most advertisers, standard events cover everything needed. Use custom events only when you have a specific action that genuinely has no standard event equivalent.
The Complete List of Meta Pixel Standard Events
Meta currently supports 17 standard events. Here is every one with its primary use case:
| Event Name | When It Fires | Business Type |
|---|---|---|
| PageView | Every page load — fires automatically with base pixel | All |
| ViewContent | Product page, article, or key landing page viewed | Ecommerce, Publishers |
| Search | Site search performed | Ecommerce, Directories |
| AddToCart | Item added to shopping cart | Ecommerce |
| AddToWishlist | Item saved to wishlist or favourites | Ecommerce |
| InitiateCheckout | User enters the checkout flow | Ecommerce |
| AddPaymentInfo | Payment details entered | Ecommerce |
| Purchase | Transaction completed — order confirmed | Ecommerce |
| Lead | Form submitted, phone number shared, email captured | Lead Gen, B2B, SaaS |
| CompleteRegistration | Account created, sign-up completed | SaaS, Apps, Membership |
| Contact | Contact form submitted, live chat started, phone clicked | Services, Local |
| CustomizeProduct | Product configuration changed (colour, size, engraving) | Ecommerce (custom products) |
| Donate | Donation made | Nonprofits, Charities |
| FindLocation | Store locator used, nearest location found | Retail, Franchises |
| Schedule | Appointment or booking completed | Services, Healthcare, Hospitality |
| StartTrial | Free trial started | SaaS, Subscription |
| SubmitApplication | Job or membership application submitted | Recruitment, Education |
| Subscribe | Paid subscription started or newsletter signup | SaaS, Media, Ecommerce |
Standard Event Parameters: What to Pass and Why It Matters
Standard events become significantly more powerful when you pass parameters alongside them. Parameters give Meta’s algorithm richer data to work with — enabling more accurate reporting, better audience creation, and more effective optimisation.
The most important parameters for ecommerce:
| Parameter | Type | Used In | Why It Matters |
|---|---|---|---|
| value | Number | Purchase, AddToCart, InitiateCheckout | Enables ROAS optimisation and revenue reporting |
| currency | String (ISO) | Purchase, AddToCart, InitiateCheckout | Required when passing value; enables multi-currency reporting |
| content_ids | Array | ViewContent, AddToCart, Purchase | Powers Dynamic Ads — matches products to your catalogue |
| content_type | String | ViewContent, AddToCart, Purchase | Set to “product” for catalogue matching |
| contents | Array of objects | Purchase, AddToCart | Each item with id, quantity, item_price |
| num_items | Integer | Purchase, InitiateCheckout | Number of items in the order |
| order_id | String | Purchase | Used for deduplication between browser pixel and CAPI |
| search_string | String | Search | What the user searched for |
A Purchase event without a value is one of the most common and costly pixel mistakes. If Meta cannot see how much revenue each conversion is worth, it cannot optimise toward high-value customers. Always pass value and currency on your Purchase event.
How to Fire Standard Events: The Code Approach
Standard events are fired using the fbq('track', 'EventName', parameters) function. Your base pixel code fires PageView automatically. All other events need to be placed on the relevant page or triggered on the relevant user action.
Example — Purchase event on your order confirmation page:
fbq('track', 'Purchase', {
value: 89.99,
currency: 'GBP',
order_id: '12345',
contents: [
{ id: 'SKU-001', quantity: 1, item_price: 89.99 }
],
content_type: 'product',
num_items: 1
});
Example — AddToCart event on button click:
fbq('track', 'AddToCart', {
value: 89.99,
currency: 'GBP',
content_ids: ['SKU-001'],
content_type: 'product'
});
If you are using a platform like Shopify, WooCommerce, or BigCommerce, your pixel integration plugin typically fires these events automatically. However, always verify using Meta Pixel Helper and a tracking audit that the correct parameters are being passed — many plugins send events without value or with incorrect content_ids.
Firing Standard Events via Google Tag Manager
If you manage your pixel through GTM, fire standard events using a Custom HTML tag with the fbq function, triggered by the appropriate GTM trigger (button click, page view on a specific URL, form submission, etc.).
For the Purchase event in GTM, use a trigger that fires on your order confirmation page (typically a URL containing “/order-confirmed” or “/thank-you”). Pull the order value from the data layer using a GTM variable rather than hardcoding it, so each purchase sends the real transaction value.
A common GTM mistake is triggering events on page load rather than on the actual user action. For example, AddToCart should fire when the user clicks “Add to Cart” — not when the page loads. Use a Click trigger in GTM and filter by the button’s ID or class to ensure it only fires on the right element.
Which Standard Events to Prioritise for Ecommerce
For ecommerce stores, set up these events in priority order:
- Purchase — non-negotiable; this is your primary optimisation signal with value and currency
- InitiateCheckout — strong intent signal; use for campaign optimisation when Purchase volume is low (under 50/week)
- AddToCart — mid-funnel signal; good for retargeting audiences and Dynamic Ads
- ViewContent — product page views; essential for Dynamic Ads and top-of-funnel retargeting
- Search — intent signal for broad catalogue campaigns
- AddPaymentInfo — checkout abandonment signal for high-value retargeting
If you are running Meta Ads with fewer than 50 purchases per week per ad set, consider optimising toward InitiateCheckout instead. Meta’s algorithm needs a minimum conversion volume to exit the learning phase. Too few Purchase events and your campaigns will never optimise effectively.
Which Standard Events to Prioritise for Lead Generation
- Lead — primary conversion; fire this on any form submission or email capture
- CompleteRegistration — account creation or high-intent sign-up
- Contact — phone click, chat start, or contact form submission
- Schedule — appointment or call booking (extremely high value for service businesses)
- ViewContent — service page or pricing page viewed
For lead gen businesses, the Lead event is your Purchase equivalent. It should always carry as much customer data as possible (hashed email, phone, name) to maximise your Event Match Quality score, which directly affects how well Meta can build lookalike audiences from your leads.
Standard Events and the Conversions API
Standard events can be sent via both the browser pixel and the Conversions API. When using both together, each Purchase event should carry a matching event_id on both the browser and server sides. This allows Meta to deduplicate — counting the conversion once even though it received the signal twice.
Sending standard events server-side via CAPI ensures that iOS users who opt out of browser tracking still contribute to your conversion data. The CAPI event goes directly from your server to Meta, bypassing browser-level restrictions entirely. For high-volume ecommerce stores, using both pixel and server-side tracking together typically recovers 15 to 30 percent of iOS conversions that would otherwise be invisible.
Common Standard Event Mistakes
- Purchase firing on the payment page instead of the confirmation page — this causes duplicate fires for users who retry payment, and misses users who land directly on confirmation
- Missing value on Purchase — prevents ROAS bidding and makes revenue reporting useless in Meta
- content_ids not matching your product catalogue — Dynamic Ads will fail to show the correct product if your pixel IDs do not match your catalogue SKUs
- AddToCart firing on page load — inflates add-to-cart numbers artificially, distorting your funnel data
- Using custom events when a standard event exists — custom events cannot be used as direct optimisation goals; always prefer a standard event if one fits your use case
After setting up or changing standard events, always verify using Meta Events Manager’s Test Events tool. Run through your full purchase or lead flow and confirm every event fires at the right moment with the right parameters. Make this part of your regular tracking audit routine.
Related Articles
- How to Audit Your Facebook Pixel in 5 Minutes
- Meta Aggregated Event Measurement: What It Is and How to Set It Up
- Tracking Explained: How Every Ad Platform Tracks Your Ads
- Free Tracking Audit Checklist: Is Your Setup Working?
📋 Not sure where to start? Use our Free Tracking Audit Checklist to find out where your setup is losing data.
Book a free tracking audit → We’ll review your setup and tell you exactly what to fix.