Writing · Growth · Dec 23, 2025 · 6 min

From B2C traffic buying to a B2B fintech affiliate program

Years of buying traffic for home improvement and clean energy taught me how affiliates behave. B2B fintech taught me the harder lesson: volume you can't qualify is volume you pay for twice.

1 emailtypical payout dispute
CPA → rev-sharepayout follows proof

I spent several years running affiliate programs in B2C: home improvement, clean energy. In those categories the job is mostly a volume problem: find partners who can send traffic, track it, pay for it, repeat. When I moved that skill set into B2B fintech, the mechanics carried over. Every assumption needed a rewrite.

In B2C, a signup was the finish line. In B2B fintech it's the starting gun: sales has to work the lead, support has to onboard it, compliance has to clear it. A partner who sends you a pile of junk signups has handed three other teams homework. So I built the program around a different question: what has to be true before volume is worth having?

One honesty note up front: this was fintech, so the actual performance figures are locked behind NDAs. Where I can't publish a number, I'll tell you exactly what I watched instead, the mechanics are all reproducible.

Infrastructure before volume

My first move was unglamorous: standardize the plumbing. I centralized tracking, attribution, and payouts on HasOffers (now TUNE). One system of record for every partner, no matter how they joined. One place where a click becomes an ID, an ID becomes a lead, and a lead becomes a payable event. Break that chain and every payout becomes an argument.

In parallel, I ran two recruitment motions at once. Direct affiliate management gave us tighter control and full transparency into who was promoting us and how. Affiliate networks gave us broader reach, at the cost of visibility. Running both was the fastest way to learn which trade-off the business could live with.

Verdict: direct won, and it wasn't close. When partners graduated to rev-share terms later, the program's highest bar, every one I can recall had come through direct management, or was one I'd pulled out of a network and moved onto direct terms. The network motion earned its keep a different way: it became the place I found partners, and direct management became the way I kept them.

Two recruitment motions
Affiliate networks · broad reachfound
Direct management · full transparencykept
Approved creative · exclusion lists
Rev-share · highest bar
Partners who reached rev-share via directall
Shortcuts straight to rev-share0
Every partner I can recall reaching rev-share terms came up through direct management, on the conservative-CPA-first path.

Constraints before scale

Most affiliate horror stories come from programs that scaled first and wrote rules later. I wrote four rules before recruiting anyone:

  • Restricted incentive structures and paid search activity. No partner bidding against our own campaigns or manufacturing intent with cash.
  • Scope limited to North American SMBs. The segment we could actually serve and qualify.
  • Required creative approval, every claim a partner makes is a claim we're accountable for, especially in fintech.
  • Exclusion lists, which I maintained to prevent overlap with internal campaigns, so affiliates couldn't get paid for demand we already owned.

All four exist for the same reason: partners follow the incentives you build.

Referrals are not affiliates

One structural decision mattered more than any single tactic: I ran two distinct models in parallel and refused to blur them.

Customer referrals I treated as a product feature. Modest incentives, organic sharing, driven primarily by trust. You don't optimize a referral program like a media channel. You make it easy for a happy customer to do something they already wanted to do.

Professional affiliates I evaluated like a business relationship: on economics, attribution accuracy, and payout reliability. Different cadence, different definition of success.

Collapsing these into one “partner program” is a common mistake, and it fails both audiences. Customers get spammy mechanics, professionals get amateur terms.

Prove quality, then pay for it

I started every new partner on deliberately conservative CPA. Easy to write in a policy doc, hard to hold in a live negotiation, because every new partner negotiates. The one I still think about was an affiliate with a large SMB finance email list, exactly the audience we wanted. First call, he asked to skip straight to rev-share plus a higher CPA floor, and quoted what a competitor was paying him. I said no: conservative CPA first, better terms after his traffic proved out. He passed, politely, and took the list to that competitor. That's what the rule costs, and I'd pay it again. A quality bar only means something if it survives contact with a partner you genuinely wanted.

What “proved out” meant was specific: did the partner's accounts activate, transact, and retain the way our direct signups did? Only after that held did I move a partner from pure CPA toward revenue share. Rev-share is the better long-term alignment, but it's only safe once you trust what you're sharing revenue on.

From CPA to revenue sharequality first, payout secondConservative CPAwhere every partner startsAccounts activatesignup was the starting gunAccounts transactvolume that survivesParity with directretention matched to oursRevenue sharethe highest barterms move only once parity holds, and they move in one directionThe verdict takes a full sales cycle plus an activation window, so CPA is paid months before the traffic is judged.
One affiliate had the exact SMB finance list we wanted. He asked to skip CPA, I said no, and he took the list to a competitor.

Attribution lives in the CRM

The tracking platform tells you what happened at the click. The CRM tells you whether it mattered. I built custom Salesforce fields so every inbound lead carried its source with it, the load-bearing one was a transaction-ID field on the Lead that stored the HasOffers transaction ID from the click, alongside the affiliate and offer IDs. On lead conversion, a workflow I built copied those fields onto the Opportunity. So when a deal closed, the revenue rolled up to a specific partner and a specific click with nobody touching a spreadsheet.

clickTXN-8127leadTXN-8127opportunityTXN-8127revenuerolls upone id survives every hop
The load-bearing field: the HasOffers transaction ID lands on the Lead, a workflow copies it to the Opportunity on conversion, and closed revenue rolls up to a specific partner and click.

That architecture kept affiliate-sourced, partner-led, and referral growth cleanly separated. When someone asked which motion was producing revenue, I could answer from the system. It's also why payout disputes stayed short: most were settled in a single email, because the transaction ID on our side matched the one in the partner's dashboard. Same data on both sides of the conversation.

Affiliate growth is a system. Everything that worked here reduces to three boring things: traffic quality, accurate attribution, and operational clarity. The network tests, the payout sequencing, the CRM plumbing were all in service of those three.

Questions I get asked

What makes B2B affiliate programs harder than simple acquisition channels?

The feedback loop. In B2C I could judge a partner in about a week: cost per lead in, contribution margin out. In B2B the verdict takes a full sales cycle plus an activation window, you're paying CPA months before you know whether the traffic was any good. Every rule in this post exists to survive that lag.

What should exist before partner volume starts scaling?

One tracking system of record, your constraint rules written down, payout logic that matches how your funnel qualifies, and a CRM path from click ID to closed revenue. My test: take one lead and trace it by hand from click to Salesforce opportunity. If you can't, don't recruit partner number two yet.

How do you know the program is actually working?

Watch how partner-sourced accounts activate and retain against your direct signups, and watch how long payout conversations take. When partner accounts behave like direct ones and payout emails are one line long, the program is healthy. Signup volume never made my dashboard.

Suggested posts