Three Years of Traffic Data, or: Everything the Internet Told Me About Growing an Audience Was Wrong
This year I did something I'd been avoiding: I exported three years of server logs from this website and actually read them.
I'd been writing here since 2021, roughly one post a month, give or take the months where I wrote nothing and called it a 'seasonal break.' I had a mental model of how the site was performing. That model turned out to be almost completely wrong.
Here's what the data actually said.
The Numbers, Plainly
Across three years and 41 posts, this site served about 380,000 page views. That sounds respectable until you learn that a single post — one post — accounts for 44% of them.
The top ten posts account for over 80% of all traffic. Which means the other 31 posts, the majority of everything I've written, collectively amount to rounding error. If I had published 31 posts and stopped, the site's total traffic would be nearly identical today.
I want to tell you that this realization was liberating. It was not. It was devastating for about a week. Then it became the most useful thing I've ever learned about publishing.
The Post That Ate My Traffic
The post in question is a 2019-era throwaway: a short tutorial on fixing a CORS error with a specific combination of a Node backend and a React frontend. I wrote it in forty minutes because I kept googling the same fix and wanted to stop.
It gets more traffic per month than the next seven posts combined. People find it through searches like 'cors error node react fix' — searches I did not optimize for, because SEO wasn't a word I associated with my personal blog. It just happened to answer a question that thousands of developers google every day, in plain language, with working code.
Meanwhile, the posts I knew would perform — the long-form essays, the carefully structured career advice, the piece I spent three weeks on about architectural decision records — they landed with a soft thud and stayed there.
What the Internet Promised Me
Let's audit the advice I followed over the years, and what the data says about each:
'Consistency is everything.' I published monthly for two years straight. My traffic chart shows no correlation between publishing cadence and traffic. The big post got big while I was on hiatus. Consistency builds skill and a body of work. It does not, in my data, build an audience.
'You need a niche.' My most-read post is a bug fix tutorial. My second most-read is a personal essay about burnout. My third is about CSS grid. There is no niche. There is only writing that answers something someone needed.
'Promote on social media.' Twitter/X and LinkedIn have driven a combined 4% of my lifetime traffic, and nearly all of it evaporated within 48 hours of posting. Referral traffic is a sugar rush. Search traffic is a slow-drip IV.
'Long-form performs better.' My posts over 3,000 words average fewer views than posts under 1,500. The internet is not rewarding my endurance. It's rewarding usefulness per minute of reading.
The Long Tail Is Genuinely Weird
The strangest finding: about 12% of my traffic comes from searches I can't fully explain. A screenshot in one post ranks for a query about a German keyboard layout. A throwaway comment about a discontinued hosting service brings in a trickle of people every week. Someone, somewhere, searches 'joseph khan blog about trees' monthly and lands on a post that mentions a tree once.
The long tail doesn't care about your strategy. It's just the internet being the internet — a giant, half-lit library where people wander in through windows you didn't know you had.
What I'm Changing
Three takeaways I'm actually acting on:
First, I'm going to write more useful, specific posts. Not SEO-farm content — I still can't stomach that — but honest answers to real problems, like the CORS post. The intersection of 'thing I genuinely learned' and 'thing people genuinely search for' is where this site earns its keep.
Second, I'm going to stop pretending the essays are traffic plays. I write essays because I need to think in public. That's a legitimate reason. It's just not a growth strategy, and I'm done confusing the two.
Third, I'm measuring differently now. Not views — I don't control those. I'm tracking which posts get cited, linked, or emailed to me. That's a smaller, truer signal of whether the work landed.
The Part That Doesn't Show Up in Logs
Here's the final honest thing: the posts nobody read still mattered. The burnout essay got 200 views and three emails — one from a friend I hadn't talked to in years. The ADR post got almost nothing and directly shaped how I work today, because writing it forced me to figure out what I believed.
The logs tell me what the internet wanted from me. They can't tell me what the writing did for me. Both are true, and only one of them fits in a chart.
If you're a few years into a personal site and feeling invisible: pull your logs. The numbers will humble you. They might also, weirdly, set you free.