Rewardful With Causality Engine: Check Affiliate Revenue
By Joris van Huët
Enterprise Interim CMO & Marketing Leader · 15+ years · 50+ orgs
Published
2026-11-11
The short answer: the affiliate figure in Rewardful keeps growing in months when no partner posted anything, and that is the rule working as written. Rewardful, affiliate tracking that reads payments from Stripe or Paddle, keeps a referral cookie for 60 days by default (cookie article), and once a visitor converts, that customer stays with the affiliate permanently (campaign settings). Every later Stripe charge on that customer can carry a commission. The fit is partial: it applies to a store that takes payment through Stripe, not to a standard Shopify checkout. If yours does, and GA4 records the purchases, Causality Engine, a causal read of one GA4 export, gives a free first finding at app.causalityengine.ai/start.
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 checks before the affiliate line goes into a budget deck:
- Count the months a referral can earn. For example, a customer who first bought through a partner's link in March and pays every month after it has produced 8 charges by October, and all 8 count toward the affiliate total unless the campaign sets a limit.
- Read the settings you already have. Open the campaign and note the Cookie window, the Attribution type (first-touch or last-touch), and the two commission limits, Maximum commissions per customer and Maximum commission period (campaign settings).
- Look for the Affiliates row in GA4. If it is empty, the partner links carry no utm_medium of affiliate, and the visits sit under Referral or Direct instead (Google's channel rules).
Rewardful and the read, row by row
| Question | Rewardful | Causality Engine |
|---|---|---|
| What it is | Affiliate and referral tracking on Stripe or Paddle (entry) | A causal read of the GA4 Attribution paths CSV (entry) |
| How a sale is credited | A referral link (a via parameter on your own domain) or a Stripe promo code; the customer is then tied to one affiliate (campaign settings, promo codes) | Each channel's caused share next to a last-click rebuild (how it works) |
| What a Conversion is | A successful charge or payment in Stripe (definitions) | Whatever purchase key events GA4 keeps (one-off read) |
| Link tagging | None by default; UTM values go into the campaign URL by hand (UTM article) | Adds no tag, no pixel |
| GA4 channel | Affiliates only with utm_medium of affiliate (default channel group) | Reads every channel the export holds |
| Connection between them | None | None (integrations) |
| What checking costs | Nothing extra | Free first finding; €99 once, excluding VAT (pricing, checked on 11 November 2026) |
Which stores this applies to
Rewardful credits a sale only when the payment processor reports it, Stripe or Paddle. Its help article on one-time purchases says it works for any Stripe charge or invoice tied to a Stripe Customer object, so a shop selling through Stripe Checkout, Payment Links or the Buy Button can use it. Payment Links need the option to save payment details switched on, because attribution rests on that customer object (Payment Links guide).
The Platform Integrations collection, read on 11 November 2026, covers subscription-box and course platforms such as Subbly, SamCart and Teachable. Shopify's own checkout is not among its articles. A Shopify store has nothing here to pair, and this page is for the others.
How Rewardful decides a sale is an affiliate's
The definitions article names three stages. A Visitor is a click on a valid link that loads the tracking script. A Lead is the moment referral data reaches Stripe. A Conversion is a successful charge.
The rules around them:
- Cookie window. 60 days by default, changed per campaign under Edit campaign (cookie article).
- Two partners, one buyer. The Attribution type picks first-touch or last-touch among affiliate links clicked before the referral is created (campaign settings).
- After that, permanence. The same article says a converted visitor is "permanently associated with that affiliate". Leaving both commission limits blank means commission on every payment with no time limit.
- Codes need no visit. A promo code attributes the customer at checkout, with no cookie and no site visit, and the first affiliate keeps the customer even if a second partner's code is used later (promo codes).
- Refunds adjust. A full or partial refund recalculates the commission, which is based on the amount the customer was charged after discounts (Stripe usage article).
For a subscription product this is sensible. For a store with repeat buyers, it means the affiliate total holds two kinds of order: the first purchase a partner may have prompted, and every reorder after it.
Getting partner traffic into GA4 under Affiliates
Rewardful's links need no redirect: the via parameter sits on your own site's address, as the cross-domain article shows with www.example.com?via=james-bond. GA4 does not read that parameter. An untagged click from a partner's blog arrives as Referral; one from a newsletter app or a PDF has no referrer, and Google's direct traffic page files that under (direct) / (none).
The fix is in the campaign's Website URL. The UTM article says to put the parameters there, and Rewardful appends each affiliate's token. Its sample uses utm_medium=referral, which Google files under Referral. For the Affiliates channel, Google's rule is a medium of exactly affiliate (default channel group). So use utm_source=rewardful&utm_medium=affiliate&utm_campaign=your_campaign, all three, as Google's URL builder page asks.
Two limits from the same article. UTM values are set per campaign, so different values per partner mean separate campaigns. And codes never produce a tagged visit at all: a buyer who types a creator's code arrives through search, an ad or the address bar, and GA4 credits that route.
The claim gap in a worked example
For example, with figures made up to show the arithmetic and no real store behind them: a coffee roaster sells beans and a monthly subscription through Stripe Checkout. In October Stripe records $61,920 in charges.
| Source | October claim |
|---|---|
| Rewardful, affiliate-attributed revenue | $9,840 (233 charges) |
| of which, first charges from new referred customers | $2,135 (61 charges) |
| of which, repeat charges from customers referred before October | $7,705 (172 charges) |
| Meta Ads Manager | $27,300 |
| Google Ads | $31,050 |
| GA4, Affiliates row, after tagging | $1,690 (49 purchases) |
| Stripe, all charges | $61,920 |
Three claims: 9,840 + 27,300 + 31,050 = $68,190, which is 68,190 - 61,920 = $6,270 more than Stripe took. Inside Rewardful's figure, 7,705 ÷ 9,840 = 78% is reorders. GA4 gives affiliates $1,690, against $2,135 of first charges, because 61 - 49 = 12 new buyers came back through another route inside the 60 days.
None of those is a lie. Each counts by its own rule.
The read adds a different column. Per the how-it-works page, it reads the export, splits Direct back to the channels that sent those buyers, and sets each channel's caused share beside last-click, with a data-health score from 0 to 100 and a next step to test in one region first. It reads per channel, so it says nothing about which partner earned a commission. If its Affiliates figure sits far below the reorders Rewardful counts, hold the commission terms and test before moving money.
A free split in Stripe first
No Rewardful setting runs a holdout, so this check is by hand. Rewardful writes the affiliate's details into each referred Stripe customer's metadata, and commission details into each invoice's metadata, so the two can be reconciled (Stripe usage article).
- Export one month of payments from Stripe with customer metadata.
- Mark every charge whose customer carries Rewardful's details.
- Split those by the customer's first charge: this month, or earlier.
- Set this month's first charges beside GA4's Affiliates purchases for the same dates.
That alone answers how much of the affiliate line is new buyers and how much is retention, and it costs an afternoon.
Where the read stops
- It needs GA4 to record the purchase. A sale that happens only inside Stripe, with no GA4 purchase event on the confirmation page, is invisible to it.
- History matters: the how-it-works page asks for 12 months or more.
- A channel under 1% of credit on both methods is called too small to act on, and Unassigned traffic is flagged with advice to fix tagging first (pricing for agents). A young program can land there.
- It does not pay partners, issue codes or catch self-referrals. Rewardful does those.
Rewardful's plans are priced by monthly affiliate-attributed revenue, with Starter capped at $7,500 a month, and a program over its cap is moved to the next tier in the next billing cycle (pricing, pricing schedule, checked on 11 November 2026). So the permanent customer tie and the blank time limit that swell the reorder share also raise the number Rewardful bills on.
After the Stripe split, the paid step is optional. Export the Attribution paths report and drop it on the start page: the first finding is free and computed in the browser. Causality Engine, which I founded, charges €99 for the full read, refundable within 30 days, excluding VAT (pricing).
See also
- Rewardful: plans, Stripe permissions and payout options
- How to use Rewardful: creator promo codes on Stripe, step by step
- Rewardful on the marketplace: Rewardful's affiliate program terms
- Causality Engine: the read, its prices and limits
- How to use Causality Engine: from GA4 export to a regional test
- Causality Engine on the marketplace: its affiliate program terms
- Tapfiliate vs Rewardful: metering by clicks or by revenue
- How to export GA4 data for attribution: the file the read needs
FAQ
Do Rewardful and Causality Engine exchange data?
No. Neither connects to the other. Causality Engine works from a GA4 file, and Rewardful's partners show up in it only as the visits their tagged links produced (integrations page).
Why is the affiliate total higher than GA4's Affiliates row?
Rewardful credits every charge from a referred customer, codes included, for as long as the campaign allows. GA4 credits a purchase to the session it happened in, and only files a session under Affiliates when its medium is affiliate.
Should I cap the commission period to clean up the number?
That changes what partners earn, so treat it as a commercial decision. For measurement, the Stripe split above separates first charges from reorders without touching anyone's pay.
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.