Post Affiliate Pro With Causality Engine: Weigh the Banner Sales
By Joris van Huët
Enterprise Interim CMO & Marketing Leader · 15+ years · 50+ orgs
Published
2026-11-11
The short answer: if your publishers' commissions keep rising while Shopify's order count holds still, the cause is usually a setting, not fraud. Post Affiliate Pro, Quality Unit's cloud software for running affiliate and publisher programs, credits a sale to whichever affiliate's cookie survives until checkout, and one checkbox, Overwrite cookie under Configuration, Cookies, decides whether that is the first affiliate or the last, per its configuration guide. GA4 runs a different rule on the same visits. Export GA4's Attribution paths report and take it to the start page of Causality Engine, a causal attribution tool built on that one export, where the first finding costs nothing.
Disclosure: I founded Causality Engine and own it, and this page recommends it. Every claim about it links to Causality Engine's own pages.
Before the next payout batch:
- Price the checkbox. For example, 402 sales credited in a month, 61 of them touched by two publishers: with Overwrite cookie off the first publisher is paid for all 61, with it on the second one is. The total stays 402. The checkbox moves money between partners and tests nothing.
- Use the order feed you already have. On Shopify, commissions are created only from order webhooks, per the Shopify integration page. Credited sales are real orders; the open question is who caused them.
- Read the medium on your banner links. A banner tagged utm_medium=banner lands in Display, not Affiliates, under Google's default channel group. Check before you compare anything.
Two rules, one table
| Post Affiliate Pro | Causality Engine | |
|---|---|---|
| In one line | Affiliate tracking, banners and commissions for in-house programs and networks (entry) | A read of the GA4 Attribution paths CSV (entry) |
| Credit rule | The affiliate in the cookie at purchase; first if Overwrite cookie is off, last if on; lifetime set in days (configuration guide) | Each channel's caused share beside a last-click rebuild (how it works) |
| Shared sales | Optional Split Commissions divides one sale among several referring affiliates (split article) | Splits Direct back to the channels that sent those buyers (how it works) |
| Link styles | Anchor, new style ?a_aid=, Mod Rewrite /ref/, DirectLink with no parameters, redirect links (configuration guide) | None added |
| GA4 channel | Affiliates only with medium affiliate; banner goes to Display; untagged blog clicks to Referral (Google's rules) | Whatever the export holds |
| Between the two | No integration | No integration (integrations) |
| What checking costs | Included | First finding free, €99 per full read excluding VAT (pricing, checked on 11 November 2026) |
How Post Affiliate Pro decides who sold it
The click writes a cookie. Its lifetime, set in days under Configuration, Cookies, is how long after a click the affiliate earns on that customer's purchases, per the configuration guide. When a second affiliate's link is clicked, Overwrite cookie decides: off, the first affiliate keeps the sale; on, the last one takes it. The guide calls these first-touch and last-touch.
The sale itself comes from the store. On Shopify you create a custom app, enable the Shopify API and notification handling plugin, and add a custom pixel for Buy Now checkouts; the Shopify page states that commissions are created exclusively via webhook. On WooCommerce, the WordPress plugin tracks orders, per-product commissions and coupons.
Three more pieces shape the count:
- Coupons. A coupon works like a banner in Post Affiliate Pro: it tracks the affiliate but gives no discount, so the same code must exist in the store too, per the coupons page. A coupon sale needs no click.
- Split Commissions. Under Configuration, Features, it rewards every affiliate who referred a sale instead of only the first or last, per the split article.
- Refunds. A refund or chargeback creates a new transaction that adjusts the commission, per the refunds page.
What GA4 needs from a publisher's banner
Post Affiliate Pro's parameters, a_aid and the rest, serve its own cookie. GA4 files the visit from its UTM tags or, without them, from the referrer. The defaults land in different rows:
- A new style or Mod Rewrite link on a blog, untagged: Referral, under the source of the publisher's domain.
- A DirectLink: no parameters at all by design, so Referral from the publisher's site, and nothing if the referrer is missing. Google's direct traffic page lists missing UTM tags and redirects that strip them among the reasons a visit becomes (direct) / (none).
- A banner tagged as Google's builder example suggests: Google's URL builder page gives banner as a sample utm_medium, and the channel rules send medium banner to Display.
Each banner in Post Affiliate Pro has its own destination URL, per the promo materials guide, so that URL is where the tags go: utm_medium=affiliate, utm_source naming the publisher, utm_content naming the banner. The vendor's own Google Analytics article proposes affiliate or referral as the medium. Only the first matches the Affiliates rule; referral files the visit as Referral. If you use redirect links, click one and check that the tags reach the store's address bar.
The worked example: a publisher program on Shopify
For example, with every number made up to show the arithmetic and no store behind it: a Shopify store books 2,955 orders and €197,420 in a month. Post Affiliate Pro credits 402 of those orders to publishers. Meta's dashboard claims 1,180 orders and Google Ads 1,465.
For example, the sum of claims is 402 + 1,180 + 1,465 = 3,047 orders, set against 2,955 booked, so 3,047 - 2,955 = 92 orders are counted by more than one system before organic search or email adds a claim.
For example, the same 402 orders in GA4, by last click:
| GA4 last click | Orders |
|---|---|
| Affiliates (banners tagged utm_medium=affiliate) | 133 |
| Referral (DirectLink and untagged links) | 96 |
| Direct | 71 |
| Organic Search (a banner clicked weeks earlier, then a brand search) | 64 |
| Paid Search | 38 |
| Illustration total: 133 + 96 + 71 + 64 + 38 | 402 |
Neither system is lying. One reports cookies alive at checkout, the other the last session it could name.
What Causality Engine adds is a third column of a different kind. Its how-it-works page says the read separates what each channel caused from what it only touched, shows that next to last-click with a data-health score from 0 to 100, and attaches a next step to test in one region first. When the read and the publisher report disagree, test before renegotiating rates: shorten the cookie lifetime for one campaign, or pause one publisher's banners in one country for a month, and compare store orders.
A free check, publisher by publisher
GA4 can do the first pass for free. Open Traffic acquisition, switch the dimension to Session source / medium, and list purchases for each publisher's domain or utm_source. Put Post Affiliate Pro's commissions for the same publishers and month beside them. A publisher with 40 commissions and 4 purchases in GA4, for example, is being paid mostly on cookies and coupons, not on visits that ended in orders. That ranking stands on its own.
The channel question comes next. Causality Engine, which I founded, takes the same export on its start page and returns a first finding at no charge, computed in the browser; a full read costs €99 once and is refundable within 30 days, per the pricing page checked on 11 November 2026.
Limits on both sides
The read works at channel level. It cannot tell one publisher from another, or one banner from the next; Post Affiliate Pro's own reporting does that. It also needs history and volume: 12 months of GA4 data or more reads best, per the how-it-works page, and the one-off read page says a channel under 1% both causally and on last-click is called too small to act on. Coupon-only sales, the ones with no click, reach the read only through whatever channel GA4 saw.
Post Affiliate Pro does the program's real work, and its pricing page lists it: banners, multi-tier commissions, fraud protection, payouts to partners. None of that is a measurement problem.
Its plans are metered in tracking requests, which the pricing page defines as the impressions, events, clicks and sales tracked each month, 10,000 on Starter (checked on 11 November 2026), so a program that records every banner view and every click costs more to run, and the meter grows with activity whether or not a click changed an order.
See also
- Post Affiliate Pro: plans by tracking volume, link styles, reviews weighed
- How to use Post Affiliate Pro: launching a publisher banner program in the trial
- Post Affiliate Pro on the marketplace: Post Affiliate Pro's affiliate program terms
- Causality Engine: what one read covers and costs
- How to use Causality Engine: from the CSV to a tested budget change
- Causality Engine on the marketplace: the owner's own referral terms
- Post Affiliate Pro vs Tapfiliate: request metering against capped plans
- How to export GA4 data for attribution: pulling the Attribution paths file
FAQ
Is there a Post Affiliate Pro plugin for Causality Engine?
No. Nothing connects the two; the read takes a GA4 export, so publisher traffic shows up only as the channel GA4 filed it under (integrations page).
Should Overwrite cookie be on or off for a publisher program?
That is a payment policy, not a measurement one. Off rewards the publisher who introduced the buyer, on rewards the last one, and Split Commissions shares the sale, per the configuration guide and the split article. State the rule in your program terms either way.
Why does GA4 show far fewer affiliate sales than Post Affiliate Pro?
Because Post Affiliate Pro counts any order while an affiliate cookie lives, coupons included, and GA4's Affiliates row counts only last visits tagged with medium affiliate (Google's rules).
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.