Title: Flow Analytics for WooCommerce
Author: DataBrief
Published: <strong>July 27, 2026</strong>
Last modified: July 27, 2026

---

Search plugins

![](https://ps.w.org/flow-analytics-for-woocommerce/assets/banner-772x250.png?rev
=3624093)

![](https://ps.w.org/flow-analytics-for-woocommerce/assets/icon.svg?rev=3624093)

# Flow Analytics for WooCommerce

 By [DataBrief](https://profiles.wordpress.org/databrief/)

[Download](https://downloads.wordpress.org/plugin/flow-analytics-for-woocommerce.1.1.1.zip)

 * [Details](https://wordpress.org/plugins/flow-analytics-for-woocommerce/#description)
 * [Reviews](https://wordpress.org/plugins/flow-analytics-for-woocommerce/#reviews)
 *  [Installation](https://wordpress.org/plugins/flow-analytics-for-woocommerce/#installation)
 * [Development](https://wordpress.org/plugins/flow-analytics-for-woocommerce/#developers)

 [Support](https://wordpress.org/support/plugin/flow-analytics-for-woocommerce/)

## Description

Flow Analytics for WooCommerce connects your store to [Flow](https://flow.databrief.sa/),
a marketing analytics and attribution service for online stores.

Instead of asking you to wire up a tag manager and a data layer, the plugin reads
WooCommerce directly. Prices, product ids, order totals, taxes, shipping and coupons
come from the same objects WooCommerce uses to bill your customer, so the numbers
in your reports match the numbers in your store.

#### What it reports

 * `page_view` — every page, handled by the Flow tracker
 * `view_item` — a product page
 * `view_item_list` — shop and category pages (optional)
 * `search` — a product search
 * `add_to_cart` and `remove_from_cart` — including AJAX add to cart
 * `view_cart` — the cart page
 * `begin_checkout` — the checkout page, classic or blocks
 * `purchase` — a completed order
 * `refund` — a refunded order
 * `$identify` — links an order or a signed-in customer to the visitor

#### Orders are never quietly lost

When a shopper comes back to your thank-you page, the browser reports the order,
which is the richest signal available. When the shopper never comes back — a payment
redirect that drops off, a closed tab, a blocked script, a gateway that confirms
by webhook minutes later — your server reports the order instead, a few minutes 
after the fact.

Both paths recognise each other, so an order is reported once and only once.

#### Attribution keeps working

The plugin keeps the Flow tracker’s visitor id with the order, so an order reported
by your server is still attributed to the campaign, ad click or referrer that originally
brought the shopper in. Nothing is credited to “Direct” just because the shopper
closed the tab.

#### Setup

Paste your Flow site key into WooCommerce  Flow Analytics, press “Test connection”,
and you are done. There is nothing else to configure.

#### Compatibility

 * High-Performance Order Storage (HPOS)
 * Cart and Checkout blocks, as well as the classic shortcode checkout
 * WP Consent API, when a consent plugin provides it
 * Do Not Track and Global Privacy Control browser signals

### External services

This plugin connects to Flow (Databrief), the analytics service the plugin was built
for. An account is required. Without a site key, the plugin sends nothing at all.

**1. Flow tracker script — `https://flow.databrief.sa/sdk/attr.js`**

Loaded in your visitors’ browsers. It assigns an anonymous visitor id, keeps a session,
and records the campaign, click id and referrer that brought the visitor to your
store.

**2. Flow collect endpoint — `https://flow.databrief.sa/collect`**

Receives the events listed above. Two senders use it: your visitors’ browsers, and
your own server for orders and refunds.

**What is sent:** the site key you configured; an anonymous visitor id and session
id; the page URL, referrer and campaign parameters (UTM tags and ad click ids); 
for each product, its id, name, SKU, chosen variant, category, brand, price and 
quantity; for an order, its order number, internal id, status, total, tax, shipping,
coupon, payment method title, the shopper’s billing country and whether it is the
customer’s first order; for a refund, the refund id and amount; and — for orders
and signed-in customers — the customer identifier, name, email address and phone
number, together with the SHA-256 hashes of the email and phone. The name, email
address and phone number can be excluded in the plugin settings, in which case only
the hashes are sent.

**What is not sent:** passwords, payment card data, and the contents of any WordPress
or WooCommerce table beyond the fields listed above.

Service terms: https://flow.databrief.sa/terms?lang=en
 Privacy policy: https://
flow.databrief.sa/privacy?lang=en

Both documents are published in English and Arabic; drop the `?lang=en` for the 
Arabic version.

Because the plugin transmits customer data to a third-party service, tell your visitors
about it in your own privacy policy, and gate it behind your consent banner if the
law that applies to you requires consent for analytics.

## Screenshots

[⌊The settings screen: site key, connection test and reporting options.⌉⌊The settings
screen: site key, connection test and reporting options.⌉[

The settings screen: site key, connection test and reporting options.

## Installation

 1. Install and activate the plugin.
 2. Go to WooCommerce  Flow Analytics.
 3. Paste the site key from your Flow account (Flow  Install).
 4. Press “Test connection”. A green answer means the store is connected.

If your Flow site restricts traffic to specific domains, add the domain shown on
the settings screen to that list.

## FAQ

### Do I need Google Tag Manager or a data layer?

No. The plugin reads WooCommerce itself. If you already push a data layer for another
tool, leave it alone — the Flow tracker never reads it, so nothing is counted twice.

### Will orders be counted twice?

No. The browser and the server both know whether the other one already reported 
an order, and the browser additionally remembers which orders it has reported.

### What happens when a customer pays and closes the tab?

Your server reports the order a few minutes later, with the visitor id captured 
at checkout, so attribution is preserved.

### Does it work with the Cart and Checkout blocks?

Yes, with both the blocks and the classic shortcode checkout.

### Does it work with High-Performance Order Storage?

Yes. The plugin uses WooCommerce’s order API and declares HPOS compatibility.

### Can I keep customer email addresses out of Flow?

Yes. Enable “Send only hashed email and phone” in the settings. Flow then receives
SHA-256 hashes, which are enough to recognise a returning customer but cannot be
read back.

### Where do I see errors?

WooCommerce  Status  Logs, under the `flow-analytics` source.

## Reviews

There are no reviews for this plugin.

## Contributors & Developers

“Flow Analytics for WooCommerce” is open source software. The following people have
contributed to this plugin.

Contributors

 *   [ DataBrief ](https://profiles.wordpress.org/databrief/)

[Translate “Flow Analytics for WooCommerce” into your language.](https://translate.wordpress.org/projects/wp-plugins/flow-analytics-for-woocommerce)

### Interested in development?

[Browse the code](https://plugins.trac.wordpress.org/browser/flow-analytics-for-woocommerce/),
check out the [SVN repository](https://plugins.svn.wordpress.org/flow-analytics-for-woocommerce/),
or subscribe to the [development log](https://plugins.trac.wordpress.org/log/flow-analytics-for-woocommerce/)
by [RSS](https://plugins.trac.wordpress.org/log/flow-analytics-for-woocommerce/?limit=100&mode=stop_on_copy&format=rss).

## Changelog

#### 1.1.1

 * Documentation: the External Services section now lists every field sent, including
   product SKU and chosen variant, order status, the shopper’s billing country, 
   the new-customer flag and the refund id.
 * Translations are now delivered through translate.wordpress.org instead of being
   bundled with the plugin.

#### 1.1.0

 * Send customer name with identify and purchase events so it appears in Flow reports.
 * Read the name from the billing address first, then the shipping address, then
   the user profile.
 * Omit the name when “Send only hashed email and phone” is enabled, alongside the
   other raw identifiers.

#### 1.0.0

 * First release.
 * Product view, product list, search, cart, checkout, purchase, refund and identify
   events read directly from WooCommerce.
 * Server-side order reporting for shoppers who never return to the store, with 
   de-duplication against the browser.
 * HPOS and Cart/Checkout blocks compatibility.
 * Do Not Track, Global Privacy Control and WP Consent API support.

## Meta

 *  Version **1.1.1**
 *  Last updated **1 day ago**
 *  Active installations **Fewer than 10**
 *  WordPress version ** 6.5 or higher **
 *  Tested up to **7.0.2**
 *  PHP version ** 7.4 or higher **
 * Tags
 * [analytics](https://wordpress.org/plugins/tags/analytics/)[attribution](https://wordpress.org/plugins/tags/attribution/)
   [conversion tracking](https://wordpress.org/plugins/tags/conversion-tracking/)
   [ecommerce](https://wordpress.org/plugins/tags/ecommerce/)[woocommerce](https://wordpress.org/plugins/tags/woocommerce/)
 *  [Advanced View](https://wordpress.org/plugins/flow-analytics-for-woocommerce/advanced/)

## Ratings

No reviews have been submitted yet.

[Your review](https://wordpress.org/support/plugin/flow-analytics-for-woocommerce/reviews/#new-post)

[See all reviews](https://wordpress.org/support/plugin/flow-analytics-for-woocommerce/reviews/)

## Contributors

 *   [ DataBrief ](https://profiles.wordpress.org/databrief/)

## Support

Got something to say? Need help?

 [View support forum](https://wordpress.org/support/plugin/flow-analytics-for-woocommerce/)