You wrote a blog post. You got a few comments and people seem to like it. Cool.
Two weeks later, you receive an email out of the blue to tell you that your site is booming. Wait… what?
Someone linked your article on Hacker News/reddit and it’s doing great! It’s on the front page. You’re about to get a bazillion visitors. Maybe more visitors than there are people in your home town? Who knows?
The world is finally acknowledging your great writing skills and awesome persona. Well, either that or you got really click baity titles, that works too.
The fame doesn’t last long. Your site is crushed under its first thousand visitors. All that’s left from your hard work is an error page.
You were not prepared for success, were you? Did you try to host a blog on your home microserver (or a $5 VPS). That explains a lot. You were doomed to fail.
So, how much traffic do you have to prepare for?
Your site will get from 10k to 100k visitors in the days after hitting the HN front page.
Let’s see how some of my well performing articles performed.
The articles are:
- Docker in Production: A History of Failure
- Docker in Production: An Update
- Google Cloud is 50% cheaper than AWS
- How to present a GitHub project for your resume
- What Does It Really Take To Track A Million Cell Phones?
- What’s The Best NoSQL Database? Cassandra vs MongoDB vs Redis vs ElasticSearch
A bit of context:
Docker: Stayed on the HN front page for 2 whole days, while simultaneously reposted on no less than the entire internet. The initial spike persisted flat for 4 days!
Google Cloud: Discovered by reddit/twitter (day 1 traffic). Posted on HN on day 2 (the red spike).
NoSQL: Reached the front page and got deleted by a moderator for no apparent reason. There were 2000+ HN visitors in only 1 hour, before the deletion.
The front page of Hacker News instantly brings 10k or 30k visitors once you hit the front page. Typically, it takes a few hours (10k visitors) to a day (30k visitors) until the article fades off the front page, then there are no more visitors from there.
Articles are reposted on reddit/twitter/other, bringing some more traffic during the next few days.
Your article disappears from all the latest news within one or two weeks. Then you’re left with a slow regular traffic coming from Google Search and links disseminated on the web. At this point, you should be a top google result on the relevant topics. My blog is first result page for thousands and thousands of terms.
Awesome Fact: In November 2016 after the article on Google Cloud, this blogs became the first internet result when looking for “google” in Google. It was displayed to more than 4 million searches over 2 days, as measured by Google’s own webmaster tool.
It’s actually pretty difficult to know where people come from. It should be done by looking at the referer but nowadays a lot of browsers hide the referer.
That’s the stats WordPress gives me site-wide on the week of the article:
Half of the users have no referer. It’s not very accurate. It’s just enough to find out what major media are linking back.
Hardware and Bandwidth
With an ad blocker, this page takes 83 requests to load a total of 2.31 MB.
Without an ad blocker… wait, what kind of crazy people browse the web without an ad blocker. Do you do sex without condoms and walk in the desert naked too? Go get uBlock for Firefox or uBlock for Google Chrome quick before your computer dies.
One could argue that it’s a lot of requests. More than half of the requests are images. There is a ton of icons, thumbnails and illustrations. Maybe we should make a case a case that images are killing the web, not ads.
Overall, WordPress is very well optimized. The pictures are resized and compressed automatically depending on page/container width. The most important things are loaded first so you can start reading. The content is resized and adapted automatically on mobile readers. It’s pretty good!
At 3MB times 10k users in a day. A fairly small and unsuccessful article. That’s 30 GB of traffic to serve. It would take 3 entire days to send from a good home broadband (1 Mbps upload).
At 6MB, largely due to a pair of funny GIF, times 138137 views. The docker article costed me 828 GB of traffic the week it was published.
What is 828 GB of traffic worth?
- More than 10 million HTTP requests
- $75 in Amazon AWS network fees. A bit more with Cloud Front.
- It would take 74 days to serve from a good home broadband (1Mbps upload).
- It would take 23 hours to serve from a dedicated server (100Mbps Ethernet).
- Tons of CPU power to generate the pages.
There are two kind of people in the world. People who think they can run a successful site on a cheap VPS and people who run a successful site.
The numbers are accounting for human visitors only. The analytics are almost perfect at excluding bots, scrapers, scanners and indexers. It could be a lot more if they were included, I’ve seen as high as 5 times on real websites. This should be factored in your capacity and costs planning if you have to pay for them (I don’t).
To be fair, it’s getting pretty challenging to host a blog at this scale. Assuming I want to spend neither $1000 dollar in hosting fees nor weeks in setup.
Before HN => 20 views a day.
During HN => 20000 views a day.
After HN => 200 views a day.
Every day with no marketing is a day where you are getting 10 days behind yourself and your competitors.
“Build it and they will come”, a popular quote from the internet and my last manager, is the worst thing you could ever do to your product. Sell it. Go fucking sell it!
Thanks for reading. Please share this article. With enough shares, it will surely manage to become the first search result for “Hacker News” in both Hacker News and Google.