MonsterInsights With Causality Engine: Read the eCommerce Report
By Joris van Huët
Enterprise Interim CMO & Marketing Leader · 15+ years · 50+ orgs
Published
2026-11-11
The short answer: the eCommerce report in your WordPress admin shows fewer sales than WooCommerce, the ad dashboards show more, and both can be right by their own rules. MonsterInsights, the WordPress plugin that installs Google Analytics 4 and reads its reports back into the admin, writes a WooCommerce order into GA4 when its status turns to processing or completed and takes it out again on a refund or cancellation (purchases guide). That addon sits on the Pro licence, $199.50 for the first year (pricing page, checked on 11 November 2026). Because it writes the purchase event, it also supplies the one thing a causal read needs. Export GA4's Attribution paths report and drop it on the start page of Causality Engine, which estimates what each channel caused from that single file. The first finding is free.
Disclosure: I founded Causality Engine and own it, and this page recommends it. Every claim about it links to Causality Engine's own pages.
Three sums before the store report goes into a budget meeting:
- The capture rate. For example, 1,173 GA4 purchases against 1,284 WooCommerce orders is 1,173 ÷ 1,284 = 91.4%. The other 111 orders never reached GA4, or reached it and were taken back out.
- The order list you already own. WooCommerce's Orders screen shows each order's status, and the plugin's rule says which statuses GA4 ever hears about. Filter by status before you blame the tag.
- The Referral row. If a payment provider's domain sits among the conversion sources, the buyer's session broke at checkout. MonsterInsights' FAQ names the return from a payment provider as one way an ID gets lost.
The plugin and the read, row by row
| Question | MonsterInsights | Causality Engine |
|---|---|---|
| What it is | A WordPress plugin that installs GA4 and shows its reports in the admin (entry) | A causal read of one GA4 export (entry) |
| What it adds to GA4 | Purchase events from WooCommerce and other store plugins, sent by direct API calls rather than browser JavaScript (FAQ) | Nothing; no pixel, no SDK (how it works) |
| When an order counts | Status processing or completed; out again on refund, cancellation, failure or trash (purchases guide) | Whatever converting paths the export holds |
| What it credits | Top Conversion Sources, and purchases and revenue per channel, read from GA4 (reports guide) | Each channel's caused share beside a last-click rebuild, with data health from 0 to 100 (how it works) |
| Campaign links | A URL builder under Insights » Tools; only Website URL and Campaign Source are required (UTM guide) | Adds no tags |
| Connection between them | None | None (integrations) |
| Price | Pro $199.50 first year, $399.00 at renewal (pricing, checked on 11 November 2026) | Free first finding; €99 a read, excluding VAT (pricing, checked on 11 November 2026) |
When a WooCommerce order becomes a GA4 purchase
The eCommerce addon needs no setting once its toggle is on, per the addon guide. What it sends is set by order status, and the purchases guide spells the rule out for WooCommerce:
- In: a new order that moves to processing or completed.
- Out: completed or processing to refunded or cancelled; on-hold to refunded; pending to cancelled or failed; on-hold, processing or completed to trash.
- Never in: completed orders created before the plugin was installed, which are not transferred (troubleshooting guide).
The removal half changes how you export: a late refund pulls a purchase out of a month that looked finished. Pull the paths report after your usual refund lag.
The admin reports then read GA4 back. Per the reports guide, the eCommerce report shows conversion rate, transactions, revenue, average order value, top products and Top Conversion Sources, with Time to Purchase and Sessions to Purchase below. The Traffic report lists each channel with its purchases and revenue. The guide names no attribution model. If those rows use GA4's session channel, Google's scopes page says session-scoped dimensions follow the paid and organic channels last click model whatever model the property selects, and a session started by direct entry takes that user's campaign values.
What GA4 needs to name each channel
MonsterInsights sends no visitors, but its builder writes the tags that decide a visit's channel. Google's default channel group wants a medium matching cpc, ppc, retargeting or paid for Paid Search and Paid Social, and email as source or medium for Email. The builder accepts a link with a Campaign Source and no medium. A source such as "spring_newsletter" with no medium matches none of those rules, and Google files what matches nothing as Unassigned.
Two settings in GA4 itself protect the session the purchase lands in:
- Your own subdomains. The FAQ asks you to exclude your domain as a referral in both MonsterInsights and GA4 when the shop sits on one.
- The payment page. Google's unwanted referrals page lists third-party payment processors as the first case to configure, up to 50 conditions per data stream.
Worked example: 1,284 orders, three ledgers
For example, with figures invented for illustration and no store behind them: a WooCommerce shop books 1,284 orders in October. MonsterInsights got 1,173 of them into GA4, filed by session channel like this:
| GA4 row | Purchases |
|---|---|
| Direct | 402 |
| Paid Search | 288 |
| Paid Social | 231 |
| Organic Search | 186 |
| Referral (58 of them from the payment provider) | 66 |
| Total | 1,173 |
Meta Ads Manager claims 377 purchases for the month and Google Ads 341, so the two platforms claim 377 + 341 = 718 against the 231 + 288 = 519 that GA4 gave their channels. Add GA4's other rows, 402 + 186 + 66 = 654, and the ledgers together claim 718 + 654 = 1,372 orders for a shop that booked 1,284: 88 too many, while 111 real orders reached no ledger at all.
Two fixes come before any model. The 58 payment-provider purchases belong to whichever channel started those sessions, and the unwanted-referral setting stops the next ones landing there. Direct, at 402, is the largest row and names no sender.
That row is where the read starts. Its how-it-works page describes Direct split back to the channels that sent those buyers, every channel shown beside a last-click rebuild from the same file, a data-health score from 0 to 100, and a next step of raise, cut or hold with a test in one region. If Paid Social's caused share lands far below Meta's 377, cut in one region first and watch WooCommerce orders there.
The free check, by hand
MonsterInsights documents no holdout, so this one is manual and costs nothing:
- Each Monday, write WooCommerce orders and GA4 purchases for the week in a sheet and keep the capture rate. A rate that holds steady lets you trust trends even when totals differ.
- Add the payment provider to unwanted referrals and watch the Referral row shrink over the next month.
- To test one channel, pause it in a single country or region for three weeks and compare WooCommerce orders by billing region against the regions where it kept running.
For every channel at once, Causality Engine, which I founded, takes the same export on the start page: the preview is free and worked out in your browser, and the full read is €99 once, refundable within 30 days (pricing, checked on 11 November 2026).
Where the pairing stops
- Per channel, nothing finer. Products, coupons, the checkout funnel and the User Journey addon's page-by-page path stay in MonsterInsights; the read reports channels.
- History. The start page asks for 12 months or more and your purchase key event. Since orders from before the install never reach GA4, a shop that switched the addon on in June holds five months of purchases, and the one-off read page says not to buy when history is that thin.
- Small spend. The homepage says the read declines when spend is too small for a signal.
MonsterInsights sells a revenue figure that lives inside WordPress, and its FAQ ties that figure to the licence: tracking and reporting keep working only while it stays active, at the renewal price current at the time. The store report a team learns to read every Monday is also the reason the $399.00 renewal gets paid, whichever rule produced its numbers.
See also
- MonsterInsights: the plugin, its licences and its complaints
- How to use MonsterInsights: WooCommerce sales into GA4, ten steps
- MonsterInsights on the marketplace: MonsterInsights' affiliate program terms
- Causality Engine: what the read is, costs and declines
- How to use Causality Engine: from export to a regional test
- Causality Engine on the marketplace: the affiliate terms, stated as the owner's
- MonsterInsights vs Google Analytics: the plugin against GA4 on its own
- How to export GA4 data for attribution: checks to run on the file
FAQ
Does MonsterInsights send anything to Causality Engine?
No. The plugin writes purchases into GA4, and Causality Engine reads a CSV you download from GA4 afterwards. Its integrations page describes a product with no connector at all, so the plugin's part ends at GA4.
Why does GA4 lose an order after the month has closed?
Because the plugin removes a purchase when the order is refunded, cancelled or trashed, as the purchases guide lists. Export after refunds settle.
Which attribution does the Top Conversion Sources box use?
The reports guide does not say. Open GA4's Attribution paths report beside it and compare the same month before you act on either.
ABOUT THE AUTHOR
I am Joris van Huët, an enterprise interim CMO. 15+ years, 50+ organizations, including ING, P&G, Nestlé, BNP Paribas, WeTransfer and Vinted. I take on innovation projects (venture building, design sprints), agentic marketing (setting up and running AI agents) and hands-on multi-channel work. See the track record.
I wrote and published this with AI assistance, and I answer for it. Claims about my own experience are limited to the track record above, and a statistic links to its source or is labelled as an example. I sell interim and fractional CMO work, which is why this site exists. How this site is written.
The agents in this article, built into your workflows and handed over to your team: the first one within two weeks.
With Joris van Huët, interim and fractional CMO in Utrecht. From EUR 5,000 a month, monthly cycles, a 30-day exit.