Skip to content

Server-side events · Setup reference

Meta Conversions API via the Meta for WooCommerce (Facebook for WooCommerce) plugin checker

Meta's official WooCommerce plugin (Facebook for WooCommerce) injects the Meta pixel and also sends Conversions API events from your WordPress server. Each event gets a generated UUID event_id, which is reused on the pixel and server sides for dedup, and the plugin normalises and SHA-256 hashes customer data itself. Problems usually come from a second pixel plugin or theme snippet, or from a consent plugin holding signals.

Read from the official documentation on 9 November 2026. Sources are listed at the end.

Check your own setup

Useful when you capture a server payload, for example by logging the plugin's request. The checker verifies fbc/fbp format, that event_time is within 7 days, action_source, that customer fields are hashed, that event_id is present, and value/currency on Purchase. It does not inspect your WordPress install, so it will not find a second pixel plugin or consent holds. Paste your thank-you page source into conversion-tag-checker to spot an extra Meta pixel Purchase call.

Open the Meta CAPI Event Checker

Endpoint and authentication

POST https://graph.facebook.com/{API_VERSION}/{PIXEL_ID}/events

Plugin connects to Meta through its onboarding flow (Marketing/Facebook settings in WP admin); token handled by the plugin.

Standard event names

Spelled exactly as WooCommerce + Meta expects them. A near miss is treated as a different event.

EventUse it for
PageViewpage loads
ViewContentproduct page
ViewCategoryproduct category page (custom event name used by the plugin)
Searchproduct search
AddToCartevent_id stored in the WooCommerce session so pixel and server share it
InitiateCheckoutfired on the checkout form (classic and block checkout hooks)
Purchasehooked to order creation and the woocommerce_thankyou hook; the plugin stores per-order browser/server 'purchase tracked' flags to avoid re-sending
Subscribeorders that contain a WooCommerce Subscriptions subscription (needs the Subscriptions extension)
Leadform submissions such as Contact Form 7

Required and recommended fields

FieldWhat it needs
action_sourceplugin default 'website' ('physical_store' for offline/in-store orders)
event_timeplugin default: current server time()
event_idplugin-generated UUIDv4 per event
event_source_urlcurrent URL; dropped for physical_store events
user_datanormalised then hashed by the plugin

Match keys and hashing

KeyNormalise and hash
em, fn, ln, ph, ct, st, zp, country, external_idThe plugin normalises these, then hashes them with SHA-256 before sending. Do not pre-hash them yourself.
Advanced Matching (enable_advanced_matching / use_pii setting)Plugin setting that controls whether customer data is attached to pixel events.

Click ids

Click idWhere it comes from
fbcThe plugin reads the _fbc cookie, or builds fb.1.<creation_time>.<fbclid> from a ?fbclid= on the request when the cookie is missing or the fbclid changed.
fbpThe _fbp browser cookie. Meta's format is fb.${subdomain_index}.${creation_time}.${random_number}.

Deduplication

Time limits and batch sizes

How to test before you trust it

Why events arrive but don't attribute

Sources

Platforms change these rules without notice. If a source says something different from this page, the source wins.

Other platforms

All platforms