Install on WooCommerce
Last updated Nov 13, 2026
Conversion tracking for WooCommerce: install the WordPress plugin, paste an eight-character pairing code, and verify with a test-mode order that runs the real checkout.
On WooCommerce, TraceLog is a WordPress plugin. You connect it with a pairing code instead of copying keys, and the purchase path comes already declared. See what it does for a store on TraceLog for WooCommerce.
Install and pair
- In WordPress, go to Plugins › Add Plugin, search for TraceLog, then install and activate it (its page in the directory).
- In Plugins, press Enable auto-updates in TraceLog's row, so a later release of the plugin reaches your store without you doing anything.
- In TraceLog, open the project's Installation and keys page and press Create a pairing code — eight characters, valid for fifteen minutes, usable once.
- In WordPress, open TraceLog in the admin menu, or Settings in TraceLog's row in Plugins, and paste the code.
Spaces, dashes and upper or lower case are accepted. Neither of the project's keys is shown or pasted into a page.
What the plugin sets up
The plugin emits the purchase template without you configuring anything:
- Steps:
view_item,add_to_cart,begin_checkout - Conversion:
purchaseon the order-received page, identified by the order number, with the order total, the store's currency and the order's items
From version 0.2.0 the plugin also sends what was bought: each item is a
product, by its ID and name — a variation counts as its product — with its
quantity and its unit price before discounts. The purchase and the server
confirmation carry the order's items, view_item the product shown and
begin_checkout the cart. Nothing about the buyer is sent.
From version 0.5.0 the plugin also says whether an order is the customer's first: it looks in the store's own orders for an earlier paid one with the same email, and sends only the answer, never the email.
When an order becomes paid, the store's server sends a confirmation carrying the same order number, so a shopper who closes the tab at the moment of payment does not lose the conversion. Browser and server evidence of one order reconcile into one conversion — the order number is what makes that possible. When GA4 or Meta miss purchases of orders paid on another site, see WooCommerce orders missing in GA4.
From version 0.6.0 the confirmation is sent whatever the gateway, an order paid by bank transfer, on delivery or marked paid by hand included; before that version, only a gateway that completes the payment online sent it.
From version 0.7.0, when an order is marked failed the store's server tells TraceLog the payment method's id, and nothing else of the order.
A WooCommerce Subscriptions renewal is sent from neither side: it renews what an earlier order bought, so it is not a conversion. A renewal another subscription plugin records is still sent.
Consent
TraceLog captures nothing until your store allows it. What to do depends on how your store asks for consent:
- A cookie plugin compatible with the WP Consent API, such as Complianz,
shows your banner. Also install the
WP Consent API plugin, from Plugins › Add Plugin: through it,
TraceLog follows your banner's
statisticscategory. It starts capturing when the visitor allows statistics and stops when they withdraw it, on the same page load. Without that plugin, the cookie plugin's decision never reaches TraceLog. - Your store shows no consent banner at all. Tick "This store shows no consent banner. TraceLog may capture the declared conversion path from page load." on the plugin's settings page. TraceLog then captures from page load. With a known cookie plugin active, such as Complianz, this box does not apply, and the settings page says so.
- Your banner is your own code. TraceLog waits. Call
TraceLog.consent.grant()from your banner's code on the page where the visitor accepts, and again on every later page while their consent stands, andTraceLog.consent.deny()if they refuse.
If the WP Consent API plugin is installed and no cookie plugin is active, WP Consent API answers yes and TraceLog captures. The plugin's settings page states which of the three cases your store is in, and counts this one as the first. A test order follows the same rule: without consent it captures nothing, and the Installation and keys page says so.
Verify with a test order
Put a payment gateway into test mode and place an order. The browser and the server both mark the order as verification traffic: the real checkout runs, and nothing counts towards your limit, your bill or your figures. The order stays visible on the Path page afterwards.
Keep the project's Installation and keys page open while you do it: the checklist under Your conversion path ticks from the events as they arrive, and the browser and server evidence appear under one identifier.
If the checklist does not tick
No events from the store.
The TraceLog plugin has not reported from your store yet — is it activated and paired?
The plugin's configuration is not valid.
Pair the store again from the TraceLog plugin's settings with a fresh pairing code: the plugin holds the project's key, and nothing is pasted by hand.
A conversion arrives without its identifier.
The plugin sends the order number with each purchase. If you see this, write to info@tracelog.io.
The full matrix, with what each condition does to verification, is on install with a script tag. The plugin is GPLv2-or-later. Its header declares the WordPress, PHP and WooCommerce versions it requires and the WooCommerce version it was tested up to; its readme, the WordPress version it was tested up to.
After a theme or checkout change
The plugin emits the declared events, so a theme change does not remove them. A checkout or consent plugin change can. What to check after any change is on verify after a replatform.