In brief
Affiliate program software keeps one ledger in eight steps. A click, a referral, a lead, a customer, a sale, a commission, a balance, a payout. Every tool keeps some version of the ledger. They differ on which link parameters they read, which billing systems they connect to, how the rule handles refunds, whether balance is kept apart from commission, and who sends the money. A balance is what you owe an affiliate right now, after the hold and refunds. Keeping it separate makes the payout batch easier to check. AffiliateRail's defaults: a 20% flow, a 14-day hold, a $20 minimum.
No card. Cancel in one click.
What does affiliate program software do?
In shortEight things, in a fixed order. It records a click. It turns the click into a referral. It watches for a lead, then a customer. It reads the sale from your billing system. It works out the commission. It keeps a balance of what you owe. And it sends the payout. Every tool in the category does some version of this chain. The differences are in how well each link is done.
The research method was simple. I took the ledger every affiliate tool keeps, in the order the money moves. For each step I read what the vendors' own docs say they do. The twenty tools and their prices are on the affiliate software for SaaS page. This page is about the job itself. It is also the answer to "affiliate management software". That is the same category under a longer name.
Three words first. A referral is one unique visit that arrived through an affiliate's link. A commission is the money an affiliate has earned on a sale, before it is paid. And a balance is the total commission you owe an affiliate right now. It is counted after holds and refunds. The software is a ledger with those three columns and a payout button at the end.
Holding period (14 days by default)
| Step | What it is | What the tool has to do | Where tools differ |
|---|---|---|---|
| Click | A visitor arrives on an affiliate's link | Record it and store the affiliate in a cookie on your domain | Which link parameters it reads; whether it needs consent first |
| Referral | One unique visit, so repeat clicks do not double | Count it once; decide first or last click | The attribution window, and whether you can set it |
| Lead | The visitor creates an account | Bind the account to the affiliate | Whether a lead is tracked at all, or only a sale |
| Customer | The account is now a billing customer | Carry the affiliate onto the billing record | Which billing systems it reads |
| Sale | An invoice is paid | Read it from the billing system by webhook | Whether refunds and upgrades flow back |
| Commission | The affiliate's share of that sale | Apply the rule: rate, duration, conditions | Gross or net; recurring or first sale; per product |
| Balance | What you owe, after the hold and refunds | Hold, deduct, roll below the minimum | Whether balance is separate from commission |
| Payout | The money leaves | Batch by term and send it, or hand you a file | Who holds the money, and what it costs |
How does the click become a customer?
In shortA script on your site reads the link and saves a click id in a first-party cookie. When the visitor pays, that id travels into your billing system as a reference field. The billing system sends the sale back to the tool by webhook. The id is on it. The tool matches the id to the affiliate.
A click id is the short code that names one visit from one affiliate link. A first-party cookie is a cookie set on your own domain, which browsers treat as yours. A webhook is a message your billing system sends to another service when something happens, such as a paid invoice. Those two carry the whole chain. On Stripe the field is client_reference_id on a hosted checkout, or a metadata field your server sets. On Paddle it is custom data on the transaction. Paddle copies it to every renewal. The Stripe integration page shows how thirteen tools do it.
The first two differences on the table live here. Which parameters the script reads decides whether links published on an old tool keep working after a move. AffiliateRail's script reads nineteen, including the other platforms' names. Whether the script waits for consent decides whether it respects a consent banner. AffiliateRail's script waits when you add one attribute. It stores nothing before the signal.
The attribution window is the next one. It is how long after the click a sale still counts. AffiliateRail's default is 60 days. Lemon Squeezy's built-in program lets you pick first or last affiliate when a customer visited several links. Decide both before you invite anyone. Changing them later changes who gets paid.
How is the commission worked out?
In shortBy a rule you set, applied to each sale the billing system reports. The rule has a rate, a duration, and conditions. Twenty percent of every invoice for twelve months is a rule. Thirty percent of the first invoice only is another. The tool's job is to apply it without you touching each sale.
The differences that matter are on the table. Gross or net decides whether commission is on what the customer paid, or on what reached you after the billing system's fee. It matters most on a merchant of record like Paddle. FirstPromoter has a toggle for it. Recurring or first-sale decides whether renewals earn. Per-product rules let one product pay more than another. AffiliateRail's flows carry conditions on billing type, interval, coupon, plan, country and group.
Refunds are the rule's test. Let's say a customer pays $100 on the 1st. The affiliate earns $20. The customer refunds on the 10th. A tool that reads refunds reverses the $20 before it is paid. One that does not leaves you paying commission on money you gave back. Every tool that reads its billing system's refund event handles this. Check that yours does. Check what it does when the commission was already paid. AffiliateRail's commission guide covers the rate and the refund rule together.
What is the balance, and why does it matter?
In shortThe balance is what you owe an affiliate right now. It is the commission, less the hold, less refunds. It rolls forward when it is under the minimum. Many tools fold it into the commission column. Of the four tools torn down for AffiliateRail's own spec, only Tapfiliate kept it separate. Keeping it separate makes the payout batch easier to check.
Three settings feed it. A holding period is the wait between a sale and the commission becoming payable, so refunds can land first. AffiliateRail's default is 14 days. Lemon Squeezy's built-in program holds 30 days, and its help centre lists no setting for it. A minimum payout is the balance an affiliate must reach before you send anything. AffiliateRail's default is 20.00 in your currency. It can be set per partner. And the payout term is when the batch runs. AffiliateRail offers NET-15, NET-30 and NET-60. That means 15, 30 or 60 days after the month ends.
Imagine an affiliate who earns $15 a month. Against a $50 minimum, the first payout arrives in month four. Against $20, in month two. The minimum payout page works that through for each tool, and the hold-period page does the same for the wait.
Who sends the payout, and what does it cost?
In shortEither the tool does, from money it has taken from you first, for a cut. Or your own PayPal or Wise does, called by the tool, for nothing from the tool. Or the tool hands you a file and you send it yourself. Every tool that publishes its route is one of those three. The price difference between the first two is the biggest number on the bill.
The first kind is custodial: the tool holds the money for a while. Dub takes 5% of every payout for it. PartnerStack takes 10%. Rewardful takes 3% on Managed Payouts. Tolt takes 2% plus $8 an invoice. Reditus takes 2% by invoice or 5% by card. Impact includes $2,500 a month and takes 20% above it. The second kind is non-custodial. The tool computes the batch and calls your own account. AffiliateRail, Partnero on its own route, Refgrow and LeadDyno do that. They take nothing. refVenue is close: you pay each affiliate yourself, to their Stripe Connect account. The third kind, the file, is PromoteKit, Ambassly and Trackdesk.
The automatic payouts page puts every vendor's own payout page beside the others. The custody page quotes each one on who holds the money. And the payouts guide covers the payout methods themselves, PayPal beside Wise, with the fees each charges.
What else does the software need to do?
In shortTwo things the ledger does not show. A portal, where each affiliate sees their clicks, sales and balance without emailing you. And tax forms, if you pay anyone in the United States. Both are on most tools. Both are where a cheap tool shows its price.
The portal is the affiliate's whole experience of your program. It is where they get their link, watch it convert, and see the payout date. On a tool with a network, the portal is also where affiliates find you. PartnerStack, Reditus and Dub are three. On the rest, you find them, and the first-ten-affiliates guide covers how.
Tax forms are the piece founders forget. Pay an American $2,000 in a year and a form is due. Pay from your own account and the form is your job. Pay through a custodial tool and it is the tool's. That is part of what the cut buys. The tax-forms page says which tools collect them and which leave it to you, and the W-9 article covers the rule itself.
That is the whole job. Eight steps, a portal, and a form. Pick the tool by the steps it does well, for your billing system and your size. The twenty-tool table is where to start, and the calculator puts your own numbers through all of them.
The whole ledger, from click to payout, from your own account
Unlimited affiliates, a 20% flow seeded on day one, a 14-day hold and a $20 minimum by default, and payouts from your own PayPal or Wise at 0%. Fourteen days, no card.
Every figure on this page was read off the vendor's own pricing page or docs on the date beside it in the sources. Defaults and fees change. Read the vendor's page before you set anything.
Common questions
What is the difference between affiliate program software and affiliate management software?
None that the tools observe. Both names cover the same category: a tool that gives affiliates links, reads sales from your billing system, works out commissions and pays them. Partner program software is the wider cousin, built for resellers and deal registration as well as affiliates, and priced for it.
How does affiliate software know which affiliate sent a sale?
A script on your site saves a click id in a first-party cookie when the visitor arrives on an affiliate's link. When they pay, that id travels into your billing system as a reference field, such as client_reference_id on a Stripe checkout or custom data on a Paddle transaction. The billing system sends the sale back by webhook with the id on it, and the tool matches it to the affiliate.
What is a holding period in affiliate software?
The wait between a sale and the commission becoming payable, so a refund can land first. AffiliateRail's default is 14 days. Lemon Squeezy's built-in program holds for 30 days, and its help centre lists no setting for it. Set it to cover your refund window, because a commission paid on a sale that is then refunded is money you have to claw back.
Who actually sends the affiliate's money?
One of three. A custodial tool takes the money from you first and pays the affiliate itself, for a cut: Dub 5%, PartnerStack 10%, Rewardful 3% on Managed Payouts, Tolt 2% plus $8 an invoice. A non-custodial tool works out the batch and calls your own PayPal or Wise, for nothing from the tool: AffiliateRail, Partnero on its own route, Refgrow, LeadDyno. On refVenue you pay each affiliate yourself through Stripe Connect. Or the tool hands you a file to send yourself: PromoteKit, Ambassly, Trackdesk.
Where these facts come from
Fact-checked and reviewed by Jimi Barkway on 7 September 2026. Every figure above was read off the document named here on the date beside it. To contact AffiliateRail about one, email support@affiliaterail.com and the figure is corrected and the date moved.
- AffiliateRail docs, program setup: the 20% flow, the 14-day holding period, the 20.00 minimum with per-partner overrides, NET-15, NET-30 and NET-60checked 6 September 2026
- AffiliateRail docs, attribution: the first-party cookie, the 60-day default window, nineteen parameters, consent modechecked 6 September 2026
- AffiliateRail docs, flows: commission conditions on billing type, interval, coupon, plan, country, group and after the first yearchecked 3 September 2026
- AffiliateRail docs, Connecting Paddle: custom_data.rail_referral copied by Paddle to the subscription and every renewalchecked 6 September 2026
- FirstPromoter docs, Paddle: the Exclude Paddle's fees toggle, commission on gross or netchecked 6 September 2026
- Lemon Squeezy help centre: the 30-day hold and the fixed calendar on the built-in program; first or last affiliatechecked 6 September 2026
- The calculator's data file: each vendor's payout fee and route, from its own pricing and payout pageschecked 6 September 2026
- The W-9 article's source on the $2,000 reporting threshold under P.L. 119-21checked 6 September 2026
- The competitor teardown behind AffiliateRail's spec: of Tolt, Dub, Tapfiliate and Rewardful, only Tapfiliate keeps balance separate from commissionchecked 6 September 2026
- Dub pricing: 5% payout fees on Business and Advancedchecked 5 September 2026
- PartnerStack, Spark: 10% of commissions paid outchecked 6 September 2026
- Rewardful pricing: 3% on Managed Payoutschecked 7 September 2026
- Tolt pricing: 2% on auto payouts, plus the invoice fee in its help centrechecked 7 September 2026
- Reditus pricing: 2% by invoice or 5% by card on automated payoutschecked 6 September 2026
- impact.com help centre: $2,500 of payouts included, 20% abovechecked 6 September 2026
- IRS, Instructions for Forms 1099-MISC and 1099-NEC: the threshold increased to $2,000 under P.L. 119-21checked 4 September 2026