Skip to content

Events

The free plugin sends five standard events. You switch the four shop events on or off on the WooCommerce tab, under Standard events. PageView is always sent while a platform is on.

Event When it fires Meta GA4 TikTok
PageView Every page PageView page_view PageView
ViewContent A product page ViewContent view_item ViewContent
AddToCart Add to cart, by AJAX and with a page reload AddToCart add_to_cart AddToCart
InitiateCheckout The checkout page, not order-received InitiateCheckout begin_checkout InitiateCheckout
Purchase The confirmed order-received page, for an allowed order status Purchase purchase Purchase

The other platforms get the same events under their own names. See Platforms for each list.

A few details:

  • AddToCart also works for buttons that add by AJAX on category pages. The server prepares the event and hands it to the browser with WooCommerce’s cart fragments.
  • InitiateCheckout keeps the same event ID for the same cart, so reloading the checkout does not create a new one.
  • Pages that Chrome prerenders report nothing until the visitor actually opens them.
  • The page address sent with page views and funnel events leaves out the order key and the thank-you page’s order parameters.

On the Events tab, the Transport panel decides which road each event takes. You choose Browser, Server or Both for each row. The default is Both.

Row What it covers
PageView Every page
ViewContent Product page
AddToCart AJAX and reload
InitiateCheckout Checkout
Purchase Order received
Search Site search
SignUp Registration
Login Sign in
Lead Form success
Custom and automatic Everything without a row of its own

The server road only exists for platforms with a key saved on their card. In the free plugin those are Meta (Conversions API) and OpenAI (Conversions API). With Pro, TikTok, GA4, Pinterest, Snapchat and Reddit join them. GA4 keeps its own switch on its card, because it cannot deduplicate. See Server events.

The WooCommerce tab, panel Purchase and identifiers, holds the rules for the purchase.

  • Statuses that count as a purchase: the WooCommerce statuses that allow the purchase to be sent. Processing and Completed are ticked by default. Add On hold only if that status means a real order in your shop. Avoid Pending, Cancelled, Refunded and Failed.
  • Send once per platform: records on the order which platforms already received the purchase, so a reload of the thank-you page never counts it again. Keep it on in production.
  • Hold the purchase for unpaid orders until they are completed: cash on delivery, cheque and bank transfer take the order before the money. With this on, the thank-you page sends nothing for those orders; the purchase leaves from the server once the order is completed or marked paid. It needs a server destination, such as Meta Conversions API.
  • Skip orders worth nothing: no purchase when the order total is 0.
  • Content ID: the product identifier sent in content_ids and items. Product ID, SKU, or Parent product ID, for variations. Use SKU only when every platform and feed uses exactly the same SKUs.
  • Purchase value: Order total or the product subtotal. Order total matches the revenue paid and the WooCommerce reports.

If your shop sends buyers to its own thank-you page instead of the WooCommerce one, use the Custom thank-you page panel.

  • Recognise the custom page: allows the purchase on the configured URL, only when the order ID and the order key in the address are valid.
  • Redirect the standard WooCommerce page: once the order is confirmed, moves the customer from order-received to your page, keeping the identifiers. Leave it off if another plugin already handles the redirect.
  • URL thank-you custom: the full URL of your page. It must be on the same domain.
  • Order ID parameter and Order key parameter: the names of the two parameters in the address. The defaults are order_id and key.

The Automatic events panel on the Events tab has 14 switches. Each one is sent as a custom event to every configured platform, with nothing else to set up. All are off by default.

Switch Event name What triggers it
Outbound link outbound_link A click on a link that leaves the site
Internal link internal_link A click on a link to another page of the site
Phone number tel_click A click on a tel: link
Email address email_click A click on a mailto: link
File download download A click on a link to a file whose extension is in Download extensions
Any other form form_submission A form submit. Forms of a supported form plugin are skipped, since they report their own success
Video playback speed video_speed A viewer changing the speed of an HTML5 video
Time on page time_on_page The visitor stays the number of seconds set in Seconds before time on page fires (1 to 3600, default 30). Counts only while the tab is in front
Site search site_search A search, with the term and how many results it returned
Page not found page_404 A 404 page
Rage click rage_click Three clicks in the same spot within a second
Registration signup A new WordPress account
Login login An existing account signing in
Comment comment A comment left on any post

Download extensions takes a comma separated list without the dot. The default is pdf,doc,docx,xls,xlsx,ppt,pptx,zip,rar,csv,mp3,mp4.

A form event never reads a password, card or hidden field, nor anything inside a login, checkout or payment form.

Pro adds six more funnel events on the WooCommerce tab, custom events with your own triggers, and lifetime value and cohort events on the purchase. See Pro.

On the WooCommerce tab, Record where visitors came from keeps the first and the last touch in a first-party cookie, and the order stores them when it is placed. Keep the cookie for (days) sets how long the cookie lives (default 90, up to 365). The cookie waits for marketing consent. The landing page is recorded by the browser rather than PHP, because it is usually served from the page cache.

The Server tab uses this to show where each order came from. Pro builds the sources report on it.