Directory / plugin

Edgetally – Accurate Ecommerce Tracking for WooCommerce

v0.1.0 · by georget777

WooCommerce ecommerce tracking that runs on Cloudflare Zaraz, not on your server. Accurate GA4 events for Zaraz and Google Tag Manager.

View on WordPress.org

About this plugin

Tracking that does not slow your store down.

Server-side tracking done from WordPress means your own server calls Meta, Google or TikTok for every product view, add to cart and purchase, and runs extra requests to do it. On a busy day, a sale or a newsletter send, that work lands on your server exactly when traffic peaks.

Edgetally moves that work to Cloudflare. The plugin hands each event to Cloudflare Zaraz in the visitor’s browser, and Zaraz forwards it to your tools from Cloudflare’s network:

  • No load on your server: the plugin makes no outgoing requests, adds no database tables and runs no background jobs. Events are built from data WooCommerce has already loaded for the page.
  • Server-side delivery without your server: Zaraz loads tools server-side, from Cloudflare. Meta receives events through the Conversions API (with your access token in Zaraz), without a single call from WordPress.
  • Fewer scripts in the browser: instead of one script per pixel, your pages load one small Zaraz script, which helps page speed and Core Web Vitals.
  • Fully cacheable pages: product, category and shop pages stay in your page cache and on Cloudflare’s edge. Visitor-specific events never end up in cached HTML.
  • Available on every Cloudflare plan, including Free. Your site needs to be proxied through Cloudflare.

Zaraz’s e-commerce support covers Google Analytics 4, Meta (Facebook Pixel), TikTok, Bing, Pinterest and Amplitude. You turn on each tool once in the Zaraz dashboard and every event below reaches all of them.

Google Ads included. Zaraz’s Google Ads tool has no e-commerce support, so the plugin also sends dedicated events for it (gads_purchase, gads_begin_checkout, gads_add_to_cart, gads_view_item) with value, currency, order ID and product IDs in Google’s own parameter names. Add one Conversion action per event in Zaraz and Google Ads gets your conversions, without the Google Ads script on your pages.

Not on Cloudflare? The same events go to the Google Tag Manager dataLayer, with ready-made containers you can import: one for GA4, one for the Google Ads purchase conversion. You can use Zaraz and GTM at the same time.

Accurate data

The name is the promise: each event is sent once, with the right products and the right values.

  • The full GA4 funnel: view_item_list, select_item, view_item, add_to_cart, remove_from_cart, view_cart, begin_checkout, add_shipping_info, add_payment_info, purchase and search
  • Classic and block-based Cart & Checkout (Store API)
  • AJAX add to cart without double counting; quantity changes count as add or remove for the difference only
  • Purchase sent once, only on the buyer’s own thank-you page (valid order key) and only for paid orders, never on a reload
  • One spelling of product names everywhere (no “&” vs “&” duplicates in your reports)
  • Variations as parent ID + item_variant (or variation ID), brand, up to 5 category levels
  • Free gifts and items inside bundles are not reported as products the shopper chose
  • A search that finds a single product still counts (WooCommerce jumps straight to the product)
  • Every event carries an event_id for deduplication
  • Consent: with the WP Consent API option, no event is sent until the visitor has consented to the chosen category (works with consent plugins that support the WP Consent API, such as Complianz)

External services

This plugin does not contact any external service from your server, and it never sends any data to the plugin author.

Nothing is sent anywhere after activation: every destination is off until the site owner turns it on in WooCommerce Edgetally. When a destination is on, the store’s own ecommerce events go to the site owner’s own accounts:

  • If you enable Cloudflare Zaraz, events are handed to Zaraz in the visitor’s browser. Zaraz runs on your own Cloudflare account and forwards the data to the tools you configure there. Cloudflare’s terms: https://www.cloudflare.com/website-terms/ and privacy policy: https://www.cloudflare.com/privacypolicy/
  • If you enter a Google Tag Manager container ID, the standard GTM script is loaded from https://www.googletagmanager.com on your site’s pages. Google’s terms: https://marketingplatform.google.com/about/analytics/tag-manager/use-policy/ and privacy policy: https://policies.google.com/privacy

Plugin tags