Get your CartFlows tracking to 95%+ accuracy guaranteed in writing.
CartFlows lets you build SamCart-style funnels on top of WooCommerce — order bumps, one-click upsells, dynamic offers. But without proper dedup discipline, every funnel step fires Meta Pixel, Google Tag and TikTok Pixel multiple times, inflating reported ROAS and breaking Smart Bidding. We rebuild CartFlows tracking server-side with WooCommerce hook integration so every order step fires exactly once with the right value.
Free30 minutesNo obligation
CartFlows · what breaks
Why CartFlows funnels under-attribute
- 01
Multi-step funnels = multi-fire pixels
Each step fires Purchase. Meta + Google count duplicates. ROAS reads inflated. Algorithm starts trusting noise.
- 02
Pre-checkout offers and bumps confuse value
Order bumps applied dynamically can pass wrong value or wrong content_id to ad platforms.
- 03
WooCommerce + CartFlows plugin conflicts
Most stores have PixelYourSite + GTM4WP + CartFlows tracking all running. Triple-firing.
- 04
iOS gap on every redirect
Browser pixels lose iOS users between funnel steps.
CartFlows · the fix
Outcomes — CartFlows
Server-side WooCommerce CAPI
Hooked into woocommerce_order_status_processing
Every funnel step deduped
Main + bump + OTO + downsell — exactly once
Plugin chaos retired
One canonical tracking module replaces 3–4 plugins
iOS recovered
Server-side tracking survives every redirect
CartFlows · architecture
How a CartFlows order should reach the ad platforms
CartFlows sits on top of WooCommerce, which means you inherit WooCommerce's server access and add a funnel's worth of extra steps on top of it.
- 1
Click identifiers captured at first touch
Click IDs are captured at landing and written to the WooCommerce order as post meta, so they survive the whole funnel including one-click upsells after the main order.
- 2
The browser sends the fast, fragile copy
CartFlows steps fire browsing and checkout events through the WordPress data layer. Duplication risk is high here, because CartFlows, WooCommerce and a tracking plugin can all be firing.
- 3
The order itself is the source of truth
The WooCommerce order is the truth, plus each CartFlows one-click upsell order, which is a separate WooCommerce order.
- 4
A server container sends the authoritative event
WooCommerce hooks post the completed orders to a GTM server container on your own subdomain, keyed on each order ID.
- 5
Customer identity raises match quality
The order carries billing email, phone, name and address, hashed server-side.
CartFlows · events
The event set we build on CartFlows, and where each one comes from
A CartFlows funnel produces several WooCommerce orders per customer, and each needs to arrive as its own conversion.
| Event | Fires when, on CartFlows | Key parameters | Sent from |
|---|---|---|---|
| view_item | A CartFlows landing or offer step renders | item_id, value, currency, event_id | Browser + server, deduped |
| begin_checkout | The CartFlows checkout step loads | value, currency, num_items, event_id | Browser + server, deduped |
| purchase | woocommerce_payment_complete fires for the main order | order_id, value, currency, items[], hashed email/phone/name/address, event_id | Server authoritative |
| subscription_started | A one-click upsell creates and pays a further order | order_id, value, currency, plan, event_id | Server authoritative |
| refund | woocommerce_order_refunded fires | order_id, value, currency | Server only |
CartFlows · normal or broken
CartFlows on WooCommerce
You get WooCommerce's advantages and WooCommerce's plugin-collision problem, amplified by the funnel steps.
Normal, not a fault
Multiple WooCommerce orders for one customer
One-click upsells create separate orders by design.
Order status changing after the conversion
Normal WooCommerce state flow.
Ad platforms report more conversions than you have orders
Meta credits a 7-day click and 1-day view; Google credits on click date. Two platforms can each claim the same sale. Compare each one to your order records separately and never add them together.
Recent days always look worse than they finish
Conversions are credited back to the date of the click, so yesterday's return on ad spend is understated and will keep improving for several days. This is attribution working, not data arriving late.
Actually broken
CartFlows, WooCommerce and a tracking plugin all firing purchase
Three paths, one order. The most common CartFlows fault.
Upsell orders not tracked
Average order value understated by the entire back end of the funnel.
Firing on thankyou with no order guard
Refreshes multiply conversions.
CartFlows · prove
How we prove the CartFlows build is correct
The tag firing proves the tag fires. These prove the numbers are right.
Source of truth
WooCommerce order records
- Exactly one firing path per event, confirmed by inventorying CartFlows, WooCommerce and every active plugin.
- Upsell orders confirmed tracked as distinct conversions.
- Order-received refresh confirmed to produce no second conversion.
- Purchase count within a few percent of woocommerce order records for a fully closed week, matched on order ID rather than on totals.
- No order ID appearing twice in any platform's event log.
- Deduplication confirmed at every destination that supports it.
- Test and staff orders excluded, with the exclusion confirmed active rather than merely configured.
- The same reconciliation repeated 30 days later, because a setup that works once and then drifts is the harder failure to catch.
CartFlows · free audit
What we check in the free audit
- Multi-step funnels = multi-fire pixels
- Pre-checkout offers and bumps confuse value
- WooCommerce + CartFlows plugin conflicts
- iOS gap on every redirect
Checked against
WooCommerce order records
Free30 minutesNo obligation
CartFlows · when not to buy
When a CartFlows rebuild is not what you need
We would rather say this now than three weeks into an engagement.
- You run a single-step checkout with no upsells. Then the WooCommerce build alone covers you.
- Low volume and low ad spend.
- You have unresolved plugin conflicts. Fix those first.
CartFlows · what we deliver
Deliverables — CartFlows
Custom WooCommerce mu-plugin
CartFlows-aware dataLayer
Server-side gateway
Stape Pro or sGTM
Meta CAPI · Google EC · TikTok
Dedup-clean
Conflicting plugins retired
One canonical source
Notion runbook + 30-day support
Replicable
Written guarantee
95%+ tracking accuracy
Measured against 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
Foundation pixel install for your CartFlows store. Honest disclosure: this is a starting point only. If you spend $1K+/month on paid media you should be on the 1st-party server-side tier — rather than quote you a recovery percentage, we'll show you how to measure your own gap: compare what the platforms reported against the orders in your backend for the same week. That ratio is the entire argument, and it's yours to check — see trackingconsulting.com/measurement-accuracy-methodology.
- One-time fee · zero monthly · zero SaaS lock-in
- CartFlows dataLayer (clean spec)
- GA4 e-commerce events
- Meta Pixel · Google Ads tag
- TikTok Pixel · Microsoft UET
- Consent Mode v2 banner integration
- QA test orders + 7-day support
- No CAPI · no iOS recovery
1st-party server-side
Recommended$800One-time fee · most popular
The done-for-you package every CartFlows store running paid ads should start with. We build the entire 1st-party server-side stack on your subdomain — Meta, Google, TikTok, Microsoft, LinkedIn all fed from the server. Recovers the conversions iOS, Safari ITP, ad blockers and cookie deprecation hide today. You don't lift a finger. Built in 2–4 days · accurate data in 7 days.
- One-time fee · save vs SaaS subscriptions over 5 years
- Fully recovered + built in 2–4 days · accurate data in 7 days
- Everything in browser-side starter
- 1st-party server-side GTM (your subdomain)
- Meta CAPI · full advanced matching · 8+ EMQ
- Google Enhanced Conversions (Web + Leads)
- TikTok Events API · Microsoft UET server
- Deterministic browser ↔ server deduplication
- Live EMQ verification + screenshots
- Notion runbook + 30-day support · zero recurring
Full 1st-party stack
$1,800One-time fee · lifetime ownership
Every paid-media channel running 1st-party server-side, end-to-end. For CartFlows brands spending $30K+/month who can no longer afford attribution leaks. Pay once. Own everything. Includes Pinterest + Snap + Reddit + LinkedIn CAPI, Klaviyo identity stitching, BigQuery + Looker Studio.
- One-time fee · save 6-figure SaaS subscriptions over 5 years
- Everything in 1st-party server-side tier
- Pinterest · Snapchat · Reddit · LinkedIn · X CAPIs
- Klaviyo identity stitching (if used)
- BigQuery export (server logs + GA4)
- Looker Studio attribution dashboard (branded)
- Multi-region / multi-currency / EU residency
- GDPR-audit-ready Consent Mode v2 wiring
- 60-day support · optional retainer · no lock-in
FAQ
CartFlows questions, answered
Yes — bumps, OTOs, dynamic offers, A/B variants.
More on CartFlows
- GuideServer-Side Tracking Explained: What It Is, How It Works, and Who Actually Needs It (2026)
- GuideServer-Side Tracking for Shopify: The 2026 Setup That Actually Works
- Free toolFree CartFlows audit
- Enhanced ConversionsEnhanced Conversions enrich the conversions that already fire. First we make sur…
- Meta CAPIA one-click CAPI integration sends thin events. That's why your Event Match Qual…
- Cross-Domain TrackingYour checkout provider is the best performing traffic source in your GA4 account…
