How to Hack Together a Referral Program In Less Than 1 Hour ⏱

Dominic Coryell
Nov 12, 2016 · 15 min read

I’ve worked on referral programs for, Bonobos, TOMS, and a bunch of others. As you can imagine, I get a lot of people asking me how to build their first program. Here’s how the conversation usually goes…

Team with “amazing idea”: “Dom, we want to be viral — like Dropbox!”


Image for post
Image for post
Just kidding!!!

You can’t just tack virality onto your product.

Unfortunately, referrals don’t work for every product. And, to make it worse, even if referrals may be a great channel for your product, you may just not have a big enough of a customer base yet for them to have strong impact.

But, there is hope — never give up hope 🙏

My point is that you shouldn’t just blindly rush into building a referral program (which can take forever and cost A LOT) just because it famously worked for Dropbox and Airbnb. You should validate it first with a manual Smoke Test that will take less than one hour, which is what I’m going to show you how to do here!

By the end of this article, you’ll be able to string together a referral program to test if referrals is a good channel for you. So, this article is best for people who do not yet have a referral program and are thinking about implementing one. If you have a referral program and want to learn more about optimization techniques, the next article will cover that.

Before I Start, Why Should You Listen To Me

I’ve built lots of referral programs as Co-Founder of Talkable. During that journey here are a handful of companies I worked with:

And to be honest and fair, some of the programs I built, DID NOT WORK. Maybe the products weren’t shareable, the back-end systems were technically to challenging to conquer, they went stale because brands wanted to “set it and forget it”— lots of reasons.


So What Exactly Are Referrals?

Just to be clear, when we’re talking about referrals, we’re talking about Incentivized Sharing. We’re NOT TALKING about organic virality. Largely speaking, I break virality down into 3 major sub groups.

Image for post
Image for post

IMPLICIT: This is when the user actually is promoted to share with others in order to use the core functionality of your product because it enhances the experience.

ORGANIC: This is when the content just begs to be shared (i.e. kittens on rollerblades disco dancing).

INCENTIVIZED: This is when you give the user an incentive to share your product outside of enhanced functionality. This is essentially shifting ad budget from traditional publishers to “new media” (your users) to buy impressions in-front of an organic lookalike audience; very targeted when the incentive is structured well.

If you want to five more into types of virality in detail Josh Elman has a great post on The 5 Types of Virality which vary slightly from mine above.

Regardless, we’re talking about Incentivized sharing which is the behavior we want to reward for. A basic referral loop looks like this:

Image for post
Image for post
Conceptual credit

Ask: “Are Referrals Right For Me?”

Before jumping into this journey, you have to know if the “juice is worth the squeeze.”

Are referrals right for you? It’s hard to do early on. But here are a few ways to figure it out:

  • Ask for your NPS Score from your current customers (Are you a 9/10?)
  • Ask you customers to share without an incentive (is the share rate above 3%?)
  • Ask some obvious questions: Do I sell something embarrassing like weight loss supplements, anti-snoring meds, devious porn!? Probably focus on other channels (hint: search!!!)

Let’s Get On The Same Page

Now that we’re making the assumption that referrals will work for your business, let’s establish some definitions so we know we’re talking about to avoid confusion:

  • ADVOCATE: The person who you ask to share
  • FRIEND: The person the Advocate shares with

Since we’re smoke testing this, it won’t be automated. This is fine for our test. But, it means that our program has to have defined start and end dates, meaning its not evergreen. Why? Since we’re doing this manually we want the lowest amount of points of interaction (i.e., we don’t want to be looking up who referred who and sending manual rewards on a daily basis).

So this is how we run it:

1. Build referral strategy (audience and incentives)

2. Send an email asking for Advocates to share

3. Build the landing experience for the Friends

4. Track the Referrals

5. Send Rewards

Lastly, you can decide if this is a good channel for you based on some benchmarks I’ve documented:

Our Testing Process — “QUICK ‘n’ DIRTY”

We’re not going to build a world class referral system here. We’re going to use my system to determine if referrals work. AND….if they do work, you’ll have a great new organic channel to exploit and optimize! That’s when you can build a great program.

Here’s my framework for smoke testing referrals:

Image for post
Image for post
This Will Be Explained Step By Step Below

How I Will Demonstrate This Process

Since I love tutorials where there is a real life example, I’m going to do just that. I have a new growth series called GIMME GROWTH where I’ve handpicked some of the best mentors in growth to film MASTERCLASSES, created PLAYBOOKS based on these classes, and then host weekly GROWTH HUDDLES ONLINE to help people with their challenges.

You can imagine — REFERRALS IS HUGE FOR MY NEW BIZ. It’s actually the #2 Channel…which means the product is working well.

So rather than using my automated referral tool, Talkable, I’m going to do this manual approach to show you STEP BY STEP, in granular detail, how to do this. So by the time I publish this blog, I will have built this and sent it out to my customers.

These Are the Tools We’ll Use

We’re going to use some off-the-shelf tools to measure performance, this means that we don’t have to really build a referral program. These are the tools we’ll use (I’ll go through how in each step):

  • Email Program (Autopilot, mailchimp, intercom, etc): It really doesn’t matter what you use as long as you can append an email to the button people click.
  • Landing Form (JotForm): I used to use Typeform, but now they require you to have PRO+ which is $70 (Woah). JotForm isn’t as pretty, but has way more functionality for free (It’s a pretty remarkable tool!).
  • Landing Page: This can be anything, probably a home page variation. I love to use Unbounce since they have a startup plan for FREE.
  • Landing Alert: (HelloBar, SumoMe, etc): This will be what we use to deliver the coupon code to the Friend on the Sales Page after we collect the Friend’s email on the Landing Page.
  • Google Sheets: We’ll use google sheets to do a VLOOKUP and see who referred who, and make sure there is no fraud.

I’m going to show you STEP BY STEP how to use all these tools, above is just to outline them.


Define Your Audience

You have to make sure you ask the right people to share. You can’t ask too early in the Journey. This is why referrals is usually a bigger opportunity for companies that have a bigger audience. If you simply have an email list that hasn’t yet transacted with you, asking them for referrals will not be fruitful. That said, you can still find early promoters who will refer you, but it has to be way more “hands-on” and personal.

  • Best Advocate Audience: Existing Customers who have transacted more than once and within the last 30 days.
  • Ideal Size: At least 200 people


Getting people to share your product is really all about incentives. If your product is so unique or scarce, that in itself is an incentive itself, but that is rarely the case. Why? People are kinda lazy…ok, very lazy. So, you’re going to need an incentive. Incentives are tricky, so here’s a sub-section on incentives

  • Try to always offer double-sided incentives where both parties get an equal reward. Why? This makes the offer not be spammy. As soon as the Advocate earns more, you’re in spam land. As soon as the Friend earns more, you’re in jealousy land.
  • If you can only afford a one-sided incentive, reward the Friend, not the Advocate Note: This is only true for referral programs, not affiliate programs, but referral programs are for 1-to-1 acquisition, not 1-to-many.

Also remember that when you’re choosing the incentive for the Friend, you want to pick a reward that will attract the right type of customers (so don’t give a super big discount if you don’t want “cheap customers”).

Remember to not pick incentives that are TOO HARD to fulfill also. This is just a test, so PayPal cash, a coupon code for future order, a physical product, etc are all good options.

Here are some Incentive Strategies to Try

  • Share to get a reward: reward just for sharing something (kinda against most social platforms policies, but “shhh” you can get away with it for a while and it creates massive amounts of shares. aka “I didn’t know I couldn’t do that?”)
  • Invite to get a reward: most typical “get a friend to buy and earn a reward” type program.
  • Tiered Reward: The holy grail of referrals if done right. It has to be timed (so urgency is high — offer last for the next 7 days). There should be 3 tiers:

share and get X

refer a friend and get Y

refer the most friends of the whole base and get Z

You can add in other tiers too but it gets too confusing. Unless this type of campaign is really engaging, stick to simple levels at first.

AGAIN: The social benefit of sharing should be greater than the social cost.

In this example, we’re going to use a simple “invite reward” where the customer is asked to share with their Friends and both parties get $100. The Advocate gets a $100 PayPal cash reward and the Friend gets $100 off the course. This is really the only type of incentive you can track with this Smoke Test FYI.

I am also taking this one step further and offering this same incentive to people on my list who have not yet taken my paid course. Why? Many of them have taken my free course and may not have the funds to take the paid course, but are still an Advocate for my programs, so this makes my audience wider.

I wouldn’t do this if I had only received their email in exchange for a coupon on an eCommerce site though, for example.


Now that you’ve found your audience, we have to ask them to refer their Friends. This is the #1 place where people make a mistake: THEY DON’T ASK IN THE RIGHT WAY. In this example, for simplicity’s sake, we only ask our target audience to share via email, but there are many other places you can ask your customer to share when building an advanced program. I cover those in my Referral Marketing AMAs.

What you want to do is send an email that is neutral for both parties. This way the ADVOCATE can simply forward the email directly to their Friends directly form their inbox. This reduces friction. The Advocate doesn't’ have to go to a separate page to invite Friends, they can do it from their email client.

What makes these emails great is:

  • They explain the perks of the product
  • They are transparent and explain that both parties win
  • It’s easy to share
  • It’s easy to convert

Here’s an example from “TRY THE WORLD”

Image for post
Image for post

Notice how this email is equally valuable to the ADVOCATE and the FRIEND? I can easily forward it to my Friend without being perceived as spammy.

Or in this case, one of my good Friends Selcuk can do that…and now that I’ve published this, he can also earn free “Try The World” boxes.

LOL, you’re welcome Selcukatli.


  • it sets the mood for equality
  • it reduces friction

So, for our test, we’re going to use this method of notifying the Advocate to share rather than some on site mechanic that requires developers or onsite design.

Here is my example that I made in Autopilot. I personally like conversational text-based emails way more than HTML rich emails. Why? They are easier to make, they land in the inbox rather than promotions (usually), they show my personality and help me build a rapport with the recipient.

I actually WANT PEOPLE to reply to my emails, which is why I send them from my email. This may not be right for your brand, so decide what you want your voice to be by experimenting.

Image for post
Image for post

Note: the CLAIM URL leads to a copy of my landing page, where I have embedded a special JotForm form that I’m passing the email address of the Advocate into a “hidden field” with this link structure:

This structure will be different based on your email sending platform, but my hidden field in the form is called “email” and my autopilot merge field is called email “- -Email- -” (explained in greater detail in the next section).

MILD CAUTION: keep in mind that anyone who sees the unmasked URL could simply replace the variable with their email and then share that url and earn $100 cash if their Friends use the discount. In my case, I’m going to do a manual check on referral fraud at the end, so I’m all for this kind of “affiliate like” behavior.


Now that the invite has been sent, when the Friend receives the forwarded email, they will click through and land on a page setup just for referrals. In my case, it’s where I’ve embedded the JotForm and as I mentioned earlier, am passing the advocate_email through the URL to the form as a parameter called “email”. Then after the Friend enters the email address, I’m using the redirection function in JotForm to send the Friend onto a purchasing page where I apply the coupon code with a landing alert (explained more later).

Here is an example of the page when a Friend clicks through from an email

Image for post
Image for post

Here are the specific instruction from JotForm on how to pass parameters through the URL.


This is how you can track who referred who. The Friend enters their email to claim the deal, so now you have a database entry that relates the advocate_email to the email so later, you can look up all new purchases and see who was responsible for driving the sale so you can reward them.

So in my example, I can go back to JotForm and see the relation is recorded

Image for post
Image for post


This is also good because it’s a micro-conversion. Very few people will convert. More than normal paid traffic, but still not a 1:1 ratio. So by getting this email, you can re-market the Friend via email (and retarget them if you have a FB universal PIXEL on the page).

Once the Friend actually enters their email on this page, you want to make sure they get the code. This is why I put the redirect after they submit the form. Once it’s submitted, I’ll pass them to the purchasing page

It looks like this:

Image for post
Image for post

Now I’m using a purchasing page from Teachable, and they have auto-apply and alerts setup (great product decision Ankur Nagpal), but if your platform doesn’t have this, you could use HelloBar or SumoMe to notify the Friend of their promo code on landing.

You would do this by creating a smart bar that is triggered when the URL contains a certain set of characters.

In my case it would be “code=XUD73T” from the end of the $100 Discounted link

Then, in the copy, I’d write “Don’t forget to use your $100 off code XUD73T at checkout!”


Image for post
Image for post

Note that I didn’t make the Advocate email required here in case someone hits without a referral email. I don’t want to block them from claiming the discount.

Setup the redirect to the sales page upon the Button Submit:

Image for post
Image for post
Found in Form Settings: THANK YOU

Then you can embed it easily by just pasting this code anywhere on your site

Image for post
Image for post
Found in Form Settings: PUBLISH

And you can even setup email alerts to yourself and both parties

Image for post
Image for post
Found in Form Settings: EMAILS

Keep in mind that you don’t know if the Friend actually converted yet, so don’t send an alert to the Advocate saying “whoo-hoo, you’re getting paid!” — I just say…

“Your friend {{email}} claimed their code. We’ll let you know if they enroll, but thanks for sharing! Share your link anywhere to earn more rewards:{{affiliate_email}}.”


Once you’re ready to shut the campaign down on the scheduled end date, you can track your performance! Now you have this table with all your potential referrals in it from JotForm. Download that and then use this template to do a VLOOKUP.

By doing this we’re going to be able to be able to see how many people who purchased with this code were actually referred. Then, we can lookup who referred them, and send them a reward (explained in next section).

Here’s a video of how to do the VLOOKUP

Now in this case you can only track self-referrals by the same email address. So, essentially someone could refer themselves by using different email addresses. Thus, you want to really make sure that your incentive for having a new customer has a high enough bar that even if there is a self referral, it won’t kill you.

In my case, there is a potential $200 loss on my product. That justifies me having my VA go through and do more research before triggering payment. Automated referral systems will do all this for you, but no system is perfect.


Now the you know who referred who, you can actually send your rewards. I usually just use PayPal to send cash payments with an accompanying email thanking them for the referral letting them know I sent them cash via PayPal. I could also just send a coupon code. Or, if I’m sending a physical product, I probably already have their physical address, so I could do that and also send an email. This part is pretty simple.


Now it’s time to ask yourself…. Are referrals right for my business? Was this campaign a success?

Here’s what I’d look at as a success:

  • For every 100 emails sent, I can generate 40 new visitors (from email only, which is a very 1:1 relationship)
  • I can convert that traffic at 2x greater than my next best channel

If both of these are true, it means you can implement a more automated referral program asking customers to share at different parts of the journey and it will result in new sales. This is pretty great.

If not, maybe there is a break. If you believe referrals will work, redo the test in a new way. It only takes an hour!

After automating, I ultimately would like to see at least 10% of my sales coming from referrals within 6 months of optimization. I find this is healthy.

My next post will go into advance referral mechanics and optimizations for those of you who already have programs or who have run this test and found that referrals are a great channel for you.

OK! Thanks for reading. Hopefully this was helpful. I enjoyed writing it :)

And, if you have more questions, just comment below!

Image for post
Image for post
Image for post
Image for post
Image for post
Image for post

Startup Grind

Stories, tips, and learnings from and for startups around…

Dominic Coryell

Written by

VP Growth @Grabr - I’m hiring 4 growth+data ( Ex-Partner @500startups and Co-Founder @Talkable (YC/500). Creator of

Startup Grind

Stories, tips, and learnings from and for startups around the world. Welcoming submissions re: startup education, tech trends, product, design, hiring, growth, investing, and more. Interested in submitting? Visit our submission form here:

Dominic Coryell

Written by

VP Growth @Grabr - I’m hiring 4 growth+data ( Ex-Partner @500startups and Co-Founder @Talkable (YC/500). Creator of

Startup Grind

Stories, tips, and learnings from and for startups around the world. Welcoming submissions re: startup education, tech trends, product, design, hiring, growth, investing, and more. Interested in submitting? Visit our submission form here:

Welcome to a place where words matter. On Medium, smart voices and original ideas take center stage - with no ads in sight. Watch
Follow all the topics you care about, and we’ll deliver the best stories for you to your homepage and inbox. Explore
Get unlimited access to the best stories on Medium — and support writers while you’re at it. Just $5/month. Upgrade

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store