Self-host Pay $99 once. Run it on your own server with no monthly bill. See pricing →
Affiliate tracking for SaaS and ecommerce

Affiliate tracking that holds fraud before you pay it.

Other tools flag fraud on a dashboard. Then pay it anyway. Here, a flag freezes the commission until you say so.

Self-host for $99 Join the cloud waitlist
$./affiliate-engine -listen :8080 # that's the whole install
19,613
clicks a second, on one machine
270+
tests passing, race detector on
12
fraud rules, run before any credit
1
commission, even if a webhook replays 100 times
Measured Sep 2026 on an Apple M2 with file-backed SQLite. Run make bench in the repo to check.
§ 01 · The leaks

Four ways affiliate programs lose money.

We went through 206 low-star reviews of affiliate tools. The same four problems kept showing up. Here's each one, and what we do about it.

1

Coupon hijack

Browser extensions paste your codes at checkout. The sale goes to them, not the creator who earned it.

→ A code used by a buyer who already has an affiliate gets held for review.

2

Webhook replays

Stripe retries an event. A lot of tools count it twice. You find out at payout.

→ Each event is stored once by its ID. A replay changes nothing.

3

Lost cookies

Ad blockers and Safari wipe the cookie. The sale still happens. The affiliate gets nothing.

→ Coupons, customer history and signed tokens decide credit. The cookie is backup.

4

The growth tax

Revenue caps. Per-click overages. A cut of every sale. Your program grows, and so does the bill.

→ $99 once to self-host. Or a flat monthly plan with no caps.

§ 02 · Fraud engine

A fraud flag should stop the money.

12 rules run the moment a sale comes in, before anything is credited. If one fires, the commission is held. You see the evidence. Then you release it or uphold it.

New rule? Run it in dry-run first. It scores sales without holding anything.

Coupon hijack Self-referral Gmail alias tricks Click velocity Conversion velocity Odd click-to-buy timing Datacenter IPs IP overlap Duplicate accounts Geo mismatch Bot traffic IP fallback anomalies
14:32:07 UTC
A sale comes in
Stripe sends the event. Annual plan, $1,550, coupon SAVE40.
14:32:07 UTC
All 12 rules run
Before a cent is credited to anyone.
14:32:07 UTC
$620 is held
The coupon hijack rule fired. The evidence is attached. Payout is blocked.
When you're ready
You decide
Release it, or uphold it and claw it back. Both go in the audit log.
§ 03 · Attribution

Who gets credit when the cookie's gone?

The server decides. In this order.

Checked 1st

Coupon code

If a code was used, its owner gets the sale. Works for podcasts, TikTok and print.

Checked 2nd

Existing customer

A referred customer stays with their affiliate. Every renewal follows them.

Checked 3rd

Signed link

Set on click. It's signed, so nobody can edit it in the browser.

Last resort

IP match

Always flagged, so you can check it.

§ 04 · Ledger

Your affiliates can check the math.

Every cent is written down twice. Once where it came from, once where it went. That's a double-entry ledger, same as your accountant uses.

Entries are never edited. Mistakes get reversed, with a note. Each affiliate sees their own ledger, and it always adds up to zero.

Good affiliates stay where they trust the numbers.

Affiliate ledger
Sara Mendes
✓ Balanced
ENTRYWHATDEBITCREDIT
1041Sale · Pro plan48.00
1042Renewal · month 248.00
1043Partial refund12.00
1044Payout · Wise84.00
Total96.0096.00
Sample data
§ 05 · The rest

Everything else you'd expect. Done properly.

Built for AI SaaS

Commission on usage, not just plans.

Credits, tokens, metered billing. Each usage event settles the difference, so affiliates earn on what customers actually spend.

usage.credits · 12,000+ $36.00
usage.credits · 4,500+ $13.50
refund · 2,000 credits− $6.00

Recurring and lifetime

Upgrades, downgrades and refunds each recalculate the commission.

Multi-tier

Partners recruit partners. Set the depth, the rates and the caps.

Payouts

Stripe Connect transfers, or PayPal and Wise batch files. Thresholds and NET terms.

Your brand

Portal on your domain, in your colors. Or embed it with one script tag.

Leaderboards

XP, levels and badges. Earned from paid commissions only, so nobody games them.

Ask your data

Read-only MCP server. Ask Claude or Cursor how your program's doing.

GDPR tools

Trim IPs before they're stored. Export or erase an affiliate on request.

Audit log

Every change, by whom, and when. Append-only.

§ 06 · Integrations

Works with your billing. Not just Stripe.

Stripe Paddle Chargebee Recurly Lemon Squeezy REST API

Something else? Send server-side events or postbacks from any stack.

Switching

Bring your program with you.

Export a CSV from your current tool. Run the import as a dry run, read the report, then import for real. Changed your mind? Roll it back.

RewardfulCSV import
FirstPromoterCSV import
TapfiliateCSV import
ToltCSV import
§ 07 · Pricing

Pay once and host it. Or let us run it.

No revenue caps on any plan. No per-click fees. No percentage of what your affiliates bring in.

You host it

Self-host

Every feature, on your own server. No monthly bill from us.

✓ Everything in Scale, run by you✓ One binary, SQLite built in✓ Postgres when you outgrow SQLite✓ 1 year of updates included✓ Your server, your data
$99
USD · one-time payment
Buy self-host for $99
Full refund within 14 days. After 1 year your version keeps working, you just stop getting updates. You pay for your own server.

Cloud

Not live yet
USD · billed monthly · or 2 months free when you pay yearly
Starter
$49/mo
or $490/yr
✓ 1 program, unlimited affiliates✓ All 12 fraud rules and money holds✓ Recurring and lifetime commissions✓ PayPal and Wise payout files✓ We run hosting, backups and upgrades
Join the waitlist
Business
$99/mo
or $990/yr
✓ Everything in Starter✓ Unlimited programs✓ Portal on your domain, your branding✓ Multi-tier and usage-based commissions✓ Server-side postbacks and MCP
Join the waitlist
Scale
$149/mo
or $1,490/yr
✓ Everything in Business✓ Multiple brands in one account✓ Stripe Connect auto payouts✓ Embed the portal in your app✓ Import from your old tool
Join the waitlist

Get an email when cloud opens

One email when it's ready. No card, nothing to pay until then.

§ 08 · Compare

How we compare.

From each tool's public homepage and pricing page, checked 28 Sep 2026. Spotted something out of date? Tell us.

affiliatetrackingRewardfulFirstPromoterTolt
Self-host on your own serverYesNoNoNo
Starting price$99 once$49/mo$49/moNot on homepage
Caps on affiliate revenueNoneNot checked$5k to $15k/mo by planNot checked
Fraud checks12 rules, money heldSelf-referralSelf-referral, suspicious leadsNot listed
Coupon hijack detectionYesNot listedNot listedNot listed
Ledger affiliates can checkYesNot listedNot listedNot listed
Billing providers5, plus APIStripe first5, plus API3
Multi-tier commissionsAny depthNot listedUp to 3 levelsNot listed
§ 09 · For developers

Running in 5 minutes. One file.

No Docker Compose. No Redis. No queue to babysit. Download it, run it, point your links at it.

terminal
# 1. Run it
$ ./affiliate-engine -listen :8080 -db sqlite:affiliate.db
# 2. Make an admin key
$ ./affiliate-engine -db sqlite:affiliate.db keygen --scope admin --name ops
# 3. Check the books
$ ./affiliate-engine -db sqlite:affiliate.db doctor
✓ 6 of 6 integrity checks passed
§ 10 · FAQ

Fair questions.

What do I get for $99?

The self-host binary, a license key and 1 year of updates. You pay once and run it on your own server. After a year it keeps working, you just stop getting updates. Not happy? Full refund within 14 days.

What happens when a commission is flagged?

It's held, with the evidence attached. It can't be paid out until you release it.

Can I move from Rewardful or FirstPromoter?

Yes. Export a CSV, run the import as a dry run, read the report, then import for real.

Do you take a cut of affiliate sales?

No. Self-host is $99 once. Cloud is a flat monthly price with no percentage on top.

Does it work for ecommerce, or only SaaS?

Both. If your store can send a billing event or a server-side postback, it works.

Is it GDPR friendly?

You can trim IPs before they're stored. You can export or erase an affiliate's data on request, and the books still balance.

Stop paying commission on fraud.

Buy self-host for $99 and run it today. The cloud waitlist is open.

Buy self-host for $99 Join the waitlist