The project was called Fusion: a new B2B payment feature designed to grow through existing customers. Our import–export customers were already paying their suppliers through the platform, and the bet was that those suppliers, whose first contact with us was a payment landing in their account, could become customers themselves. I ran the North America side of the launch, which meant the record design, the routing, and the lifecycle emails, with product in China, sales leadership in the U.S., and every record passing through three systems: Salesforce, HubSpot, and SalesLoft. Everyone reviewed the launch plan. The risk sat in the data.
The week the reports stopped agreeing
A referral program routes people into your funnel through paths your systems were never designed to recognize. A referred supplier doesn't click your ad or land on your form; their first touch is a payment email from someone they already do business with. If your systems can't say who they are and where they came from, every downstream report is fiction. And every team involved is working from a different fiction.
I know because my first attempt produced exactly that. Early on, I let referred suppliers flow into the standard lead process, and the numbers stopped agreeing almost immediately. In HubSpot, marketing's view counted them alongside organic signups. In Salesforce, the same people sat in the pipeline as stalled leads, because a supplier who showed up to receive one payment doesn't behave like a lead, and the pipeline velocity looked wrong to everyone reading it. Two reports in the same week told contradictory stories about the same humans, and both were “correct” by their own definitions. I'd seen it before. Blend the data once and nobody untangles it later. So I stopped scaling and fixed the record first.
A dedicated environment for referred users
My fix was to stop treating referred users as leads at all. I gave them their own source and environment: a distinct lead-source value in Salesforce, matching tags in HubSpot, and, the piece that mattered most, a lookup field linking every referred supplier back to the customer whose payment introduced them. Referral entry points carried UTMs that resolved to the referring customer's account, and a Zapier step I built wrote the association onto the record at the moment of creation.
That one design decision bought three concrete things. Routing: my automations pre-qualified, tagged, and enrolled leads into the right SalesLoft cadence, on the same Zapier layer I built out to 200+ workflows, and handoff dropped from roughly 12 hours of manual routing to one or two minutes. Attribution: I could finally show which customers were actually driving adoption, and referral volume clustered hard around a small set of them, the ones whose transaction volumes and partner networks made referring realistic. So I handed sales that shortlist along with the decks and one-pagers, and they ran the conversations. And a defensible success signal: because every record traced to its origin, I could measure the thing the business cared about, did this supplier complete a real payment after KYC, instead of counting registrations. The conversion figures themselves stay internal (fintech has opinions about that), but the concentration pattern reshaped where sales spent its time.
Marketing reports are often built on raw data pulled from multiple systems, stitched together with naming conventions that only make sense to the person who created them.
Naming, tagging, and source logic are documentation for people who weren't in the room. The person reading the report next quarter (finance, support, a new hire) shouldn't need the report's author present to interpret it.
Ship the MVP
The other discipline was scope. The launch stack I actually shipped was four assets:
- Retargeting audiences on Google Ads and LinkedIn, referred visitors who didn't convert stayed reachable
- A dedicated landing page, one destination, one measurable entry point, instrumented with GA4 and Hotjar
- A basic one-pager, enough for customers to explain the offer for us
- A SalesLoft cadence, written to read like a person checking in
Everything else waited for evidence. I judged the landing page on behavior before form fills, bounce rate, scroll depth, exit patterns in GA4 and Hotjar, because with a new product, pushing traffic into an unready sales flow just creates noise for everyone. And because I'd kept sourcing clean from day one, I could see what the MVP was and wasn't doing, and added pieces with evidence instead of instinct.
Write the state machine first
Referred suppliers didn't follow the standard lead lifecycle. Pretending they did was what broke the reports in week one. So I wrote the actual states down. A referred supplier enters as a limited user: usage caps on otherwise open features, so they could experience fast transfers and the FX dashboard before committing to anything. They become a full customer only after completing KYC. And they count as a success only after a real payment moves on the platform. Three states, three cadences, all written by me: nurture for leads, activation for limited users, onboarding for new customers, each with a distinct goal. Not every message pushed for action; some I wrote only to maintain momentum.
Sales deliberately entered late. Existing customers had told us directly they were uncomfortable with us contacting their suppliers too early, so I ran the early stages on product exposure, retargeting, and opt-in email until a supplier started registration on their own. At every stage, the trigger did more work than the copy. Lifecycle systems work best when the timing, the triggers, and the user's state are defined more precisely than the copy itself. Write the state machine first; the words are the easy part.
If you're launching anything referral-driven, here's what I'd do before briefing a designer or writing a single subject line: define the record. One source value, one tag scheme, one lookup field back to the referrer, three lifecycle states. Everything that worked in this launch, the four-asset MVP, the minutes-long routing, the report both teams finally trusted, sat on top of that.