Note: This is a loooooong post, almost 5,500 words, which originally appeared on Pat Flynn's Smart Passive Income blog. It details, blow by blow, exactly what I did to grow my email list by nearly 200,000 addresses. If you don't have time to read the whole thing, I understand, but be sure to check out this special 50% discount offer on the tool that made this possible. If you have an email list that you're looking to grow, you need to give this a try.
When the biggest opportunity of my entrepreneurial life showed up in my Gmail inbox, I did what I do dozens of times a day.
I archived it.
What was this opportunity?
At first glance it just looked like an email announcement for yet another contest.
The email was from Noah Kagan, founder of AppSumo. He was giving away five of his favorite books from Seth Godin to anyone who entered his contest.
I already have 150-plus books on my reading wish list, so the contest didn't appeal to me.
A couple of minutes later, I had second thoughts. I've used contests before to help grow The Sublime Text Tips Newsletter, and I was planning to do another one soon. Noah's a pretty savvy guy, I thought, so maybe I could learn something from how he's running his contest.
I dug through my archived items, clicked through to his contest landing page and entered my email address.
Then my jaw dropped.
Why most contests are broken
As I mentioned, I was no stranger to contests. I'd run two of them, and both were fairly successful.
But there was a fundamental flaw that always bothered me. I'll come back to that in a minute, but first, here's how I ran my first two contests.
First, I picked a giveaway. I'm selling a book about a programming tool called Sublime Text, so the most logical choice was a license for the software I was writing about.
Next, I wrote a short blog post announcing the contest. The winner would be randomly selected from my email list, so people had to opt-in to enter.
Then I shared the contest on social media and Hacker News, and hoped for the best.
Do you see the fatal flaw?
It's subtle, but in order for my contests to succeed, I needed people to act against their own best interests.
Imagine that you discovered a little-known lottery. Only 10 people had even purchased tickets, and one of those was a guaranteed winner. You have a 1 in 10 chance of winning.
Now, the lottery rules specify that there can only be one winner, so if another person enters, your chances of winning drop to 1 in 11.
What would you do? Are you going to tell all of your friends and neighbors about this contest, diluting your chances of winning further every time you open your mouth?
In the case of my contests, a few people were so excited about the giveaway that they did just that. My giveaway promotional tweets got a healthy number of retweets, and the announcement for the second giveaway landed on the front page of Hacker News due to all the upvotes it received.
But each of those tweets and upvotes was a little act of self-denial, and a majority of people made the rational choice and decided not to hurt their chances of winning by sharing the contest.
This built-in conflict of interest bugged me, and I kept trying to think of a way to overcome it.
What if the giveaway could harness self-interest instead of fighting it?
That's why Noah's contest floored me: He'd flipped this equation on its head, finding a way get people to share his contest rather than sitting on it.
Here's how it worked.
He sent out an email, inviting me and everyone else on his email list to enter a giveaway he was running for five of Seth Godin's most popular books.
All I had to do to enter was put in my email address.
After I entered, he sent a follow-up email asking me to confirm my entry, and offering a way that I could increase my chances of winning.
The email included a “lucky URL” that I could share with my Twitter followers and Facebook friends. For each person that entered after clicking my lucky URL, I'd get three extra chances to win!
Now I had an incentive to plaster my lucky URL all over the Internet, turning me and the rest of the contest entrants into list-building ambassadors and driving ever-increasing amounts of traffic to the giveaway.
It was engineered virality.
So how can I make my contest go viral?
Then I happened to notice a little badge on Noah's giveaway page:
Wait–you mean there's a tool that would let me do the same thing?
Yep, Noah and his taco-fueled ninjas had released the code behind this brilliant giveaway strategy in the form of a WordPress plugin called KingSumo Giveaways.
And it was only $197.
How to set up a viral giveaway
I'd wanted to run another contest this summer, but my internal struggle over what format to use had kept me from pulling the trigger.
That resistance vanished when I discovered KingSumo Giveaways, and I quickly sketched out my schedule.
I'd kick it off on Monday, July 7, immediately following the July Fourth holiday weekend in the U.S. My previous contests had each spanned more than a week to give me plenty of time to promote them, so I decided to run this contest through the end of July 17. I'd choose the winner the next day.
With my schedule mapped out, it was time to set up my contest.
What I needed
To run a contest with the KingSumo Giveaways plugin, I needed to have a few things in place:
- A website or blog that runs on WordPress
- The ability to install WordPress plugins (wordpress.com sites won't work)
- The ability to send emails from my website.
Installing the KingSumo plugin
KingSumo Giveaways is a premium WordPress plugin, and it installs just like install other plugins.
Once I'd purchased and downloaded the plugin, I logged in to my your WordPress site and clicked Plugins | Add New.
I clicked the Upload tab, then Choose File. Once I'd selected the
.zip file, I clicked Install Now, and I was ready to set the plugin up.
Configuring the plugin
Before I could run my first contest, I had to do a little setup in the KingSumo Giveaways settings page, located under Settings | KingSumo Giveaways in the WordPress sidebar.
Entering the license key and social media info
The General tab included fields for my license key, Facebook page and Twitter handle. These are important–they're included when people share the contest. I didn't bother with Facebook, since I mainly use Twitter. Big mistake! I ended up gaining a lot of Twitter followers during the contest, and I could have grabbed a ton of Facebook fans if I'd been smarter.
Customizing the emails
The Emails tab is where I customized the emails that went out to people who entered my contest, including the email addresses used in the From and Reply-To fields, as well as the subject line and body for the entry email (sent to every person who enters) and the winner email (sent after the contest ended).
The email templates support short codes that will customize the email with the name of the giveaway and other contest-specific info, so the same template can be used for multiple contests.
I tweaked the subject line and body of the default entry email to encourage more people to share the contest–more on that in a bit.
Adding a physical address
Under the Settings tab, I entered an address for display on the contest page. I have a P.O. box that I registered for use in cases like this where I don't want to broadcast my home address.
Connecting the plugin to an email provider (optional)
The Services tab offered the option to connect the plugin directly to my email provider, so everyone who enters the contest would be automatically added to my mailing list. (Aweber and MailChimp are supported at the moment, and I hear that the KingSumo team plans to support other major players in the future.)
However, I didn't connect the plugin to MailChimp, and I'm glad I didn't.
I say this for two reasons. First, my contest did better than I expected, and I would have suddenly found myself with a bill of more than $1,000 from MailChimp.
And second, a few people tried to cheat and submit a bunch of fraudulent email addresses to game the system, and this could have gotten my MailChimp account shut down.
If I'd been piping emails directly into my email service I would have been in trouble. Instead I opted to download the entries as a
.csv file and import them by hand.
Adding tracking scripts
Under the Advanced tab, there's a spot to paste extra code that will be included in the footer of the contest pages. I use Google Analytics for tracking, and this is where I installed it.
Setting up the contest
With the setup out of the way, it was time to create my actual contest.
To get started, click KingSumo Giveaways | Add New in the WordPress sidebar.
The fields on the Add New Giveaway page set the rules for the contest and customize the appearance of the giveaway page.
The contest rules options include the contest start and end date, when the prize is awarded, the number of entries a contestant receives when they refer a friend, the prize name, value and image, and the number of winners.
It also includes a “question” that contestants have to answer. This is designed to reduce the number of spam submissions, like a captcha, so I made the answer really obvious.
The title, description and images fields control how the contest's appearance.
The title text is included when people share the page on social media. I deliberately kept mine short and clear, and made sure to include the word “giveaway” so that all those tweets would attract attention.
I used the description field to “sell” the giveaway a little. I mentioned that contestants were giving me permission to add them to my email list, just in case they don't read the full rules before entering. (Everyone reads the rules, right?)
The plugin also has slots for a background image and several secondary images. I kept it simple and just used a screenshot of Sublime text.
Finally, I hit Publish and the contest was live!
Planning my promotional strategy
Once my contest was ready to go, I had to figure out how to promote it. I settled on a three-pronged approach:
- Send an email to my email list, which numbered exactly 5,500 subscribers at the time.
- Schedule a series of tweets, one per day, to promote the giveaway to my 13,400 Twitter followers.
- Email the editors of a half dozen or so email newsletters that focused on web development, hoping for a mention in their next issue.
Ready for launch …
The entire contest took about two hours to set up, including writing the copy for the giveaway page, customizing the entry confirmation email, writing and scheduling the email announcing the giveaway to my list, scheduling the tweets and contacting the other newsletters.
It was all set to go at 10 a.m. on Monday, July 7, and I did my best to forget about the whole thing.
Launching anything–even a free giveaway–gives me the jitters.
How I screwed up the launch
The email announcing the contest went out Monday morning as scheduled, and within minutes I got a barrage of replies telling me that the link to the giveaway was broken.
Apparently I got sloppy with my HTML formatting and forgot to double check everything. Dang.
I decided to fix the link and resend the email. This one went out around 11 a.m., and this time I got another reply from someone informing me that I'd left the plain text version of the email blank.
Well, this is off to a good start, I thought.
After that, I avoided my inbox for the rest of the day and tried to pretend the whole thing wasn't happening–it was stressing me out.
It wasn't until 7:45 p.m. that I summoned the courage to log in to Google Analytics to see how much traffic I was getting.
I almost fell off the couch.
More than 473 people were on my site at that very moment. This on a site that typically had less than five visitors at a given time. I watched as the number climbed to 510. Later it would soar to more than 750.
The most visitors I'd ever seen on this site in the past was around 60, and that was when the blog post announcing my last giveaway landed on the front page of a major news site for programmers. That was nothing compared to this.
And apparently it had been going on all day. 44,463 people visited my site in the first 14 hours–that's nearly 2.5 times as much traffic as I typically get in a full month.
Then I logged into my site and checked the KingSumo stats.
15,753 people had entered my contest? That couldn't be right. A bug in the plugin was inflating the numbers. Had to be.
I was in denial. Maybe the site was getting hammered by spammers submitting dozens of entries to try to game the system.
So I downloaded a
.csv file of the contestants and checked to see how many of the people who entered had clicked the confirmation link in the follow-up email. Nearly 39% had confirmed.
This was really happening. Even if I just looked at the confirmed addresses, I'd more than doubled my email list in eight hours.
The stress knot in my stomach tightened
I was stoked, but at the same time I started thinking about all of the things that could go wrong.
Can my server hold up under this beating? What if the traffic continues to increase?
Then, while I was going through the pile of email that had stacked up during the day, I found one that freaked me out:
Someone requested that the password be reset for the following account:
If this was a mistake, just ignore this email and nothing will happen.
Someone's trying to hack my site! I guess that's what happens when your site attracts a lot of attention. I did in fact have an
admin account that I never used. I quickly logged in and deleted it, along with several other unused accounts. Whew.
I was getting other troubling emails as well. Dozens of people responded to the confirmation email saying they were getting error messages back from my server when they tried to confirm their entry. Others complained on Twitter that they'd tried to enter the contest but couldn't even connect to the site, or that they got an error when they submitted their entry.
It was relentless, but there wasn't much I could do about it. I couldn't fiddle with my server while the contest was running. Any downtime for the site could mean losing the momentum I'd built.
And then my worst fear came true …
Around 11 a.m. on the second day of the contest, I was chatting with a coworker online and mentioned the giveaway. He wanted to see what all the fuss was about, so he went to check out my giveaway page.
Here's what he saw:
And then the emails and tweets started pouring in. Hundreds of people were trying to enter my contest at that very moment, and my server was coughing up blood.
Had I been hacked?
Had the tidal wave of traffic managed to corrupt my site's WordPress database?
Did my hosting company take the site offline because of the overload?
Inside I was freaking out. I have a private Linux server that I maintain myself, which meant I was on my own to figure out what was wrong.
I logged into the server and started fumbling my way through half-remembered Linux commands. Memory and CPU usage were fine–since my site was basically offline, the server wasn't doing any work at the moment.
Aha, the hard drive was basically full. This is a common problem for high traffic sites. The server keeps a record of every visit in a text file, and these log files can eat through disk space in a hurry.
I logged into my hosting provider and added as many gigabytes of extra space as my account allowed, then rebooted the server.
After about 30 minutes of downtime, my site was back up.
Did the crash kill my contest?
As the site came back online, I logged into Google Analytics. I relaxed a bit as I watched the real-time counter start to climb again.
By the third day, I couldn't take it anymore.
The endless stream of problems and complaints finally wore me down.
I felt like the guy who wrote Flappy Bird, a simple iPhone game that went viral a few months ago. The programmer who wrote it found himself making millions from the ads in his game–and feeling heat from haters. He quickly cracked under the pressure and yanked his game out of the App Store.
After three days of this contest, I decided to “pull a Flappy Bird.” I logged into my site and moved the contest end date up by a full week.
Within 24 hours, it would all be over. Relief swept over me.
They didn't share my joy.
No, instead they told me I was insane and begged me to let the contest run its course:
They were right, of course–this really could be a life-changing breakthrough in my business. I gritted my teeth and set the contest back to its original end date.
“Everyone in the world who is interested has already signed up.”
As it turned out, things settled down quite a bit on the fourth day. My traffic dropped from 500 to 750 simultaneous visitors down to a more manageable 250 or so.
The wildfire was starting to burn itself out.
“Probably because everyone in the world who is interested has already signed up,” joked Damian Hodgkiss, the lead developer for the KingSumo Giveaways plugin.
Throughout the contest, the KingSumo team provided excellent support.
For example, I'd collected so many email addresses by the end of the second day that it broke the plugin's
.csv export feature. Damian rewrote the code that handles the export to help me get my entries downloaded. He also fixed several minor bugs I reported and helped me troubleshoot a few issues that contestants were reporting.
As the traffic began to die down, I finally had time to breathe a bit and take in what was happening.
While I didn't yet know the final numbers, one thing was clear: I'd just grown my email list by tens of thousands of people, many of whom would someday become customers.
I felt like I'd won the lottery.
What will 11 days of viral traffic get you?
I'm no stranger to abrupt surges of traffic–I've published several successful blog posts that pulled 20,000 or 30,000 page views in 24 hours. I thought I understood viral, but I had no idea what is possible when something truly catches fire.
My site received 482,044 visits from *398,896 unique visitors**. For perspective, in a similar timeframe before the contest I got 7,593 visits and 5,806 visitors.
Thanks to the flood of tweets that mentioned the contest (and included my Twitter handle), my Twitter following more than doubled from 13,460 to 32,427:
This massive, sustained flood of traffic also had a huge impact on my site's Alexa ranking. I leapfrogged 2,043,911 other websites and became the 49,137th most popular site on the Internet.
I'm sure that's very temporary, but as of a couple of weeks after the contest, I'm still seeing a sevenfold increase in traffic over what I was getting before.
But how well did the contest perform in terms of collecting email addresses?
When the dust settled, I had collected 364,104 email addresses:
There were so many email addresses that I couldn't export the
.csv from the KingSumo plugin. Damian rewrote the plugin's data access code to be more efficient and released an update, but it still wasn't enough. The file was taking too long to download, and WordPress was timing out.
I had to make a quick manual hack to the KingSumo plugin to extend the timeout, and then I was finally able to export the file.
Even opening the file proved to be challenging. It was so big that it kept crashing Microsoft Excel, and I ended up using Sublime Text to do a lot of the editing.
When I finally got to see the numbers, they were astounding. I'd collected 66,320 confirmed addresses–these were from contestants who received the confirmation email and clicked the link it contained. (This number would have been higher if my server hadn't been so overloaded. People were emailing me to tell me they couldn't confirm.)
Of the remaining 297,784 unconfirmed addresses, I ended up deleting 146,553 obviously bogus entries. These bad addresses were mostly from people who figured out how to game the system, setting up bots to automatically submit thousands of fake email addresses.
I guess I was asking for that when I decided to run a contest for programmers…
One determined contestant managed to submit 101,962 variations of his own email address. (I disqualified him from the contest, along with anyone else who obviously cheated.)
This manual cleanup took several hours, but when I'd scrubbed most of the bogus entries, I was left with 121,671 unconfirmed addresses.
My grand total for the contest came to 187,991 email addresses.
But were all these people just interested in the giveaway?
That question gnawed at my mind as the contest wound down. It was going to be expensive to run an email list of that size: MailChimp would cost me nearly $900 a month for that many subscribers.
Initially I considered just using the confirmed addresses, but I decided to take a shot at salvaging the 121,671 unconfirmed subscribers as well.
I imported the entire list into MailChimp and blasted out a message welcoming my new subscribers. You can see the email I sent here. I used this email as an opportunity to introduce myself, explained why I was emailing them and invite them to unsubscribe if they didn't want to get future emails from me.
As it turns out, sending an email to 187,991 people is nerve wracking. I had no idea what to expect. Was I going to get a flood of hate mail? Would people report me as a spammer? Would MailChimp ban my account due to thousands of bounce backs from bogus addresses?
It wasn't as bad as I feared. My first couple of emails to the list did generate a ton of bounce backs–24,196 in total. And I got 11,472 unsubscribes and 179 spam reports. I also got a few angry emails, mostly from people who didn't win the contest, but they were outnumbered by positive responses from people who were excited to be getting my newsletter.
I've sent two newsletter editions out to these new subscribers, and both have received open rates of just over 31%. That's lower than I used to see on my smaller mailing list, but it's still very healthy.
After I send several emails, I'll trim my list down to a more manageable 80,000 or so by deleting anyone who didn't open any of the emails I sent.
What can you learn from all this?
It's hard to know exactly what magic ingredients combined to make my contest such a runaway success, but there were several factors that I believe worked together.
Here are my major takeaways.
People act in their own self interest
People are most likely to take an action when it benefits them directly.
There's nothing wrong with this: We're all faced with thousands of decisions every day, and if we did everything that anyone ever asked, we'd just run around in circles and never accomplish anything.
Self interest is a filter that screens out most of the messages we're bombarded with.
To get through that filter and get someone to act, you have to show them how what you're asking provides a direct benefit to them.
The KingSumo Giveaways plugin harnesses people's self interest by rewarding them for sharing your contest.
Offer + audience = success
When you're promoting anything, there are three main factors that play into your success: the offer, the audience and the presentation (including design, copy).
The offer and the audience together account for about 80 percent of the promotion's success. Get these right, and you're going to get some results.
In a giveaway, the offer is the prize. You need to pick the right prize. The best prize is one that meets the following criteria:
- It is highly desirable to your intended audience, but totally uninteresting to everyone else. When I talk to most people about doing a giveaway, their first instinct seems to be, “Cool, I'll do a contest and give away an iPad!” Bad idea. You'll get plenty of attention–who doesn't want a free iPad? But 99% of the people who sign up won't be in your desired audience.
- It has a clear, intrinsic value. Giving away your own products probably won't work (unless you're Apple). Choosing a prize from a third party lends credibility to your contest. AppSumo gave away Dropbox licenses, I gave away a Sublime license. We both have our own products, but it's better to use something that has an established market value.
Email is (still) king
Even though I had 2.5 times more Twitter followers than email subscribers, my email list was the key to getting the viral effect started.
How do I know?
A couple of weeks after my contest finished up, a friend of mine ran an identical contest for a Sublime Text license. When I saw his tweet about it pop up in my Twitter feed, I retweeted it from my @SubimeTxtTips account, which now has more than 32,000 followers.
So how'd it go?
He later told me that he got around 40 entries from that tweet.
When you send a tweet, typically only about 5% of your followers will actually see it.
By contrast, both of my announcement emails were opened by more than 40% of my subscribers.
My email subscribers flooded the zone with a rush of hundreds of shares, setting things in motion.
Communicate the benefits clearly
When I was setting up my contest, I made sure to emphasize the benefits of my contest at every step.
The name of my contest included the magic word “giveaway,” which wasn't an accident. That ensured that every time someone shared the contest link, their tweet or Facebook post would include that word.
I also customized the confirmation email that went out after people entered to emphasize the benefits of sharing, both in the subject line and in a P.S.:
Subject: Confirm your entry for the Sublime Text Giveaway (plus more chances to win)
Thanks for entering the Sublime Text Giveaway.
To confirm your entry, click here: [confirm_url].
P.S. To increase your chances of winning, be sure to share your lucky URL with your friends. You'll receive 3 extra entries for every person who enters via your lucky URL.
Your Lucky URL: [lucky_url]
While I don't have hard numbers to prove it, I know that this had a huge impact in terms of keeping the contest growing.
It allowed me to send an email to every person who entered with a reminder of what they stood to gain by sharing their lucky URL.
Give your contest a good shove
To get something to go viral, you need an initial burst of exposure.
I was able to get that from my email list.
If you don't have an email list of your own, see if you can borrow someone else's audience.
This does take some planning in advance, but the payoff is worth it.
One way to do this is through your prize selection. When you're trying to decide on a prize, take a look at whether the company or person who made the item has a large existing audience.
Pick several options for your giveaway, then approach each company or person before your contest starts and pitch them on the benefits of promoting your contest (more attention for them and their product with no additional work for them).
If you can get someone with a big megaphone to announce your giveaway, it'll go a long way.
Be prepared to handle the traffic
While there's no way to know if your contest will go viral like mine did, it's a good idea to plan for it.
If you have a small blog and mailing list, and you choose a highly targeted giveaway, you probably won't have trouble handling the traffic. But if you have a few thousand highly engaged people on your mailing list, it's best to be prepared.
WordPress tends to bog down under heavy traffic unless you do some work to improve its performance. My contest would have fizzled out long before it did if I hadn't had my site running on a private server with a caching system in place. If none of that makes sense, no worries: Hire someone to help you out.
I wouldn't let this stop you from running your own contest–it's almost always better to take action then to wait until you have everything perfect. But it's good to be aware of the issue.
Surround yourself with successful people
Fear of failure is powerful, but there's an equally powerful fear that sometimes accompanies success.
When I realized what was happening with this contest, I freaked out. What was I going to do with all of these new email subscribers? How was I going to pay for the extra cost with my email provider?
Almost overnight I'd gone from maintaining a small email list to having tens of thousands of subscribers, and it felt like a huge responsibility.
I almost pulled the plug and robbed myself of reaping the full benefits of this opportunity I'd been handed.
After the contest ended, the letdown I experienced had me wanting to just give up on this huge group of people who had trusted me with their email addresses.
If my mastermind group hadn't intervened, I would have sabotaged myself at multiple points during this experience.
There's a saying: “You are the average of the five people you spend the most time with.”
Pick those five people carefully, and they just might save you from yourself.
You never know when you're going to get an unexpected break
Most success stories involve an element of unpredictability–a “lucky break.”
It's easy to look at someone else who has gotten where you want to go, see those tipping points and think, “They just got lucky. That kind of thing doesn't happen to me.” I certainly feel this way sometimes.
While you can't control these kinds of events, you can manufacture them, in a way. When you show up every day and consistently put yourself out there, these unexpected breaks become almost inevitable.
I've been working on this side project steadily for two years, waiting (not so patiently at times) for my big break to happen.
It did, and I never saw it coming.
Ready to try a contest of your own?
I can't promise you'll see anything like the success I saw with my contest, but if you'd like to try one of your own, I can help.
Noah Kagan and the team at KingSumo gave me a discount that I could share that's good for a 50% discount on the KingSumo Giveaways plugin (and yes, I do get a commission if you use it).
But what kind of email marketer would I be if I didn't ask for the opt-in?
To claim your code, click here and enter your email address. I'll send it right over to you.
P.S. If you're interested in running a contest like this, don't hesitate. Like many good tactics, this approach to getting viral traffic for a giveaway will get less effective over time as more and more people catch on. Get your 50% KingSumo Giveaways discount today and start your own contest before it's too late!