Meta Conversions API setup for WooCommerce
WooCommerce Meta setups usually have more sending paths than anyone remembers — the official Meta for WooCommerce plugin, a general tracking plugin, a container, and sometimes a theme snippet. Each mints its own event ID. One path, with the WooCommerce order ID as event_id, is the fix.
Free30 minutesNo obligation
WooCommerce + Meta CAPI · what breaks
What goes wrong on WooCommerce
- 01
The same order counted several times
The order-received page is refreshable, bookmarkable and shareable.
- 02
Different gateways returning differently
Card, PayPal and offsite redirects each land the customer somewhere different, and the untested one is where conversions go missing.
- 03
Plugin conflicts
A tracking plugin and a hand-built tag both firing a correct purchase produces two correct purchases.
- 04
Orders paid later never counted
Bank transfer and cheque sit in on-hold and complete outside any browser session.
WooCommerce + Meta CAPI · the fix
What changes — WooCommerce + Meta CAPI
One conversion per order
Fired from a status change, not a page view.
Refreshes and back-buttons harmless
Because the page no longer triggers anything.
Every gateway path covered
Including the ones that redirect twice.
WooCommerce + Meta CAPI · architecture
How Meta tracking behaves on WooCommerce
Duplication is the norm on WooCommerce Meta setups, because the plugin ecosystem makes adding a second path trivial.
- 1
Count the plugins that could be sending
Meta for WooCommerce, general tracking plugins, containers, theme snippets.
- 2
Order ID as event_id on both paths
Available to PHP and the browser identically.
- 3
Purchase server-side from the order hook
Pixel stays browser-side for fbp and fbc.
- 4
Normalize before hashing
The order object has clean customer data; use it rather than form fields.
- 5
Verify the Deduplicated indicator
Over a week, before removing anything.
WooCommerce + Meta CAPI · diagnose
Where WooCommerce tracking breaks, in diagnostic order
Each check rules out a class of cause, so by the last one there is usually a single explanation standing.
- 01
Refresh a confirmation page and watch
The fastest reproduction of the most common WooCommerce fault.
- 02
Match platform purchases to order IDs
Repeated IDs prove duplication rather than over-attribution.
- 03
List every tracking-adjacent plugin
Then check the ones nobody mentioned.
- 04
Test each gateway's return path
They differ more than people expect.
- 05
Check whether a caching plugin is active
And whether the confirmation page is excluded from it.
WooCommerce + Meta CAPI · prove
The QA evidence — WooCommerce + Meta CAPI
Run on WooCommerce specifically, on a live conversion rather than in preview mode.
Source of truth
your WooCommerce order records
- Confirmation page refreshed repeatedly with no additional event.
- Every gateway return path tested with a real transaction.
- No order ID appearing twice at any destination.
- Purchase count within a few percent of WooCommerce orders for a closed week.
- A real refund issued and confirmed reversing.
- Reconciled over a fully closed window, matched per record rather than on totals.
- Re-checked 30 days later, and after any platform update.
WooCommerce + Meta CAPI · free audit
What we check in the free audit
- Refresh a confirmation page and watch
- Match platform purchases to order IDs
- List every tracking-adjacent plugin
- Test each gateway's return path
- Check whether a caching plugin is active
Checked against
your WooCommerce order records
Free30 minutesNo obligation
WooCommerce + Meta CAPI · when not to buy
When you don't need this on WooCommerce
Worth reading before you buy anything, from us or anyone.
- If your purchase count matches your WooCommerce order count and refreshing the confirmation page fires nothing extra, you don't have the classic WooCommerce problem and probably don't need us.
- Filtering duplicates out in GA4 is not a fix — the ad platforms still received them and bidding still optimized on them — but if you genuinely only care about reporting, it's cheaper than a rebuild.
- Moving purchase to the order hook is something a competent WordPress developer can do. If you have one, hand them this page.
- Reconcile a closed week on order ID first. It costs an hour and tells you whether any of this is worth paying for.
WooCommerce + Meta CAPI · what we deliver
What gets built for Meta on WooCommerce
A shared event ID on both paths
The WooCommerce order ID, available identically to PHP and to the browser.
Standard event names, exactly cased
Meta matches on name and ID together, so a case difference alone produces two events.
Customer data normalized then hashed
Lowercase and trimmed email, phone in E.164. This is where nearly every low match quality score comes from.
fbc and fbp forwarded from the browser
fbc only exists if fbclid was captured on landing — a very common gap.
Written guarantee
95%+ tracking accuracy
Measured against your WooCommerce order records. Miss it and we keep working at no cost.
Pricing
Pick the package that fits your ad spend
Browser-side starter
$400One-time fee · lifetime ownership
Repairs and verifies the browser-side setup you already have, on a live conversion. Honest about its ceiling on this platform.
- Root cause fixed, not worked around
- Verified on a live conversion
- Reconciled against your own records
- Written handover
1st-party server-side
Recommended$800One-time fee · most popular
Money events sent from your own records through a first-party container on your subdomain, so the browser can no longer lose them.
- First-party server container on your own subdomain
- Money events from your records, not the browser
- Deduplicated on a shared event ID at every destination
- First-party cookies beyond Safari's 7-day cap
- 95%+ accuracy and 8+ Meta EMQ, guaranteed in writing
Full 1st-party stack
$1,800One-time fee · lifetime ownership
Every paid channel server-side plus the offline loop, with monitoring so the next break surfaces in days.
- Everything in 1st-party server-side
- Pinterest, Snapchat, Reddit and LinkedIn CAPI
- CRM and offline conversion loop
- Refunds and cancellations corrected wherever each platform allows it
- Monitoring on every destination
FAQ
WooCommerce + Meta CAPI questions, answered
Almost always more than one plugin sending. Meta for WooCommerce plus a general tracking plugin plus a container is three paths.
The WooCommerce order ID. PHP and the browser can both produce it identically.
Yes. It supplies fbp and fbc, which raise match quality. Both paths deduplicated beats either alone.
The Deduplicated indicator in Events Manager over a full week, plus a purchase count within a few percent of your orders.
Free · 30 min
Get Pixel and CAPI counting once on WooCommerce
Free30 minutesNo obligation
