Advice on creating a successful newsletter

Note: this page is not publicly linked. I (Gergely) share it with people who reach out asking about either advice to grow their newsletter.

This article is my advice for people to grow their newsletters - and the story of how I did it.

Although this article offers less advice than most people look for, I have only heard good things about former Senior Director of Engineering Louie Bacaj and his Newsletter Launchpad product and course.

This article is full of survivor bias

Every time you read advice from anyone successful in sharing how they became successful: treat it with context. Their advice will be full of survivor bias. Some made it, while others did not. My advice is no different: do not assume that what I share is the real reason why my newsletter grew to where it did.

And this is not because I don't want to share what really worked for me. But here is the truth:

I don't even know exactly what worked.

This is not true just for my newsletter but for my other successful side projects.

Back in 2011, I built an app that had 14 million downloads. On Windows Phone. This made it probably a top 100 downloaded mobile app.

The app? A flashlight app called Flashlight 7. It was one of half a dozen Windows Phone apps I built, and no other app had similar success. I spent nothing on ads or promotions. Instead, it was one of the first apps that were able to use the phone's LED capability by using an undocumented API, which API usage was very clearly against the Windows Phone store guidelines. Microsoft still approved these apps: probably because they realized it's more embarrassing to have no flashlight apps, than to have ones that invoke the LED API via reflection.

Now that you know the 'secret,' is there applicable advice on building an app on Windows Phone that gets 14 million downloads? For one, Windows Phone is no more, and even if there's a new platform launching, it's unlikely that it would have no LED API to use. A better takeaway is that when a new platform launches, there's a 'gold rush' moment, and I got lucky with Windows Phone, and had enough experience with programming to know how you can use reflection to invoke private APIs.

My growth hacking advice

With the above disclaimers, the advice I do have. How do you grow a newsletter to 1,000 or 10,000 or 100,000 or more subscribers? Given my newsletter has passed these numbers, I should probably know, right?

Regarding growth advice, it might be surprising that I have little to offer. Here are approaches that successful newsletters writers have suggested that they employ:

  1. Cross-promote newsletters: via recommendations or just old-fashioned "I promote you, you promote me" setup.
  2. Use ads like the ones on Twitter, Facebook etc.
  3. Use referrals such as the ones Morning Brew does or ones that beehiiv offers.
  4. Respond to DMs quickly, especially if it's from reporters.
  5. Send out promotional emails to free subscribers (to get them to convert to paid) and include social proof like testimonials.
  6. Customize your welcome email and set expectations.
  7. Post often and recycle your content across channels.
  8. Say yes to going on all podcasts to talk about your newsletter.
  9. ... and many more.

Here's an article of such growth advice, but you can google "newsletter growth advice" and get a lot more.

I'm sure the above advice would work: except I've only done one of them: #6 (customizing the welcome email). For better or worse, I'm not a very good person to give growth advice, compared to people who have experimented with far more growth tools!

Ask yourself what your real goal with your newsletter is

Why did I not do any growth hacks for my newsletter to amass an even larger subscriber base? Because I asked myself what my goal of writing this newsletter was: and it was not about getting as many subscribers as possible. This is still not my goal, so I'm not spending time on activities that would result in higher subscriber numbers. It's why I don't do collaborations, podcasts, or other activities.

My goal is to learn something new about software engineering or the software industry every time I write an article and to share these learnings in a way that others will hopefully find it helpful.

My secondary goal is to operate a sustainable one-person business, and ignore the vanity metrics that might be fulfilling for the ego, but mean very little for my business, beyond unnecessary distractions.

Putting an 'overnight success' in context

It's easy to look at this diagram and assume that it's an example of an overnight success:  

Year 1 of The Pragmatic Engineer Newsletter. It's hard to not assume this is an overnight success.

But actually, I have been blogging online for 12 years before starting my newsletter. Here's how many visitors my blog had in years 7 to 9 - which was years 1-3 of my second - and more popular - blog, PragmaticEngineer.com:

Traffic for blog.pragmaticengineer.com for years 1-3. On average, fewer than 1,000 people visited the blog per month, despite semi-regularly publishing articles. 

I wrote a blog for 12 years before starting my newsletter

Even before I had my first professional job, I was blogging on the side. I started my first blog in 2009. I would share things I learned during my work here. My first few articles were on how to delete a workspace in TFS, how I built an AJAC tree control, and how I monitored the website load of a large site.

2009-2015, I kept posting these learnings on my site without much strategy, mixing personal news with interesting learnings.

In 2015, I grew frustrated that barely anyone was reading my blog, and wanted to get more readers. I read the article How To Achieve Ultimate Blog Success In One Easy Step from Jeff Atwood, the author of Coding Horror - a very popular blog at the time - and the cofounder of Stack Overflow. The advice of Jeff boiled down to this:

"When people ask me for advice on blogging, I always respond with yet another form of the same advice: pick a schedule you can live with, and stick to it. Until you do that, none of the other advice I could give you will matter. I don't care if you suck at writing. I don't care if nobody reads your blog. I don't care if you have nothing interesting to say. If you can demonstrate a willingness to write, and a desire to keep continually improving your writing, you will eventually be successful."

Fired up, I decided to follow the advice, and publish a new article every 2 weeks. I bought a new domain - blog.pragmaticengineer.com - subscribed to Ghost and decided to keep writing twice a month.

It lasted 3 months. And then I stopped. I ran out of steam.

For the next years, I would get the motivation to write every few months, and then it would die down again.

The more experience I had, the more interesting stuff I wrote

It was 2018 when my blog started to get more visitors.

Something changed from 2019, in year 4 of The Pragmatic Engineer Blog

What happened? I can only assume that a few things got together by that time:

  • I had been blogging for 10 years and started to develop my own style.
  • I now had closer to 10 years of experience working at the industry as a software engineer - and, recently, an engineering manager.
  • I started to work on some interesting problems at work, at Uber, and I sometimes shared generalized learnings.

The articles that were widely read at this time were:

Some of my favorite newsletters are written by industry veterans who have a lot of experience under their belts. Examples include former Amazon GM and Tech Director Dave Anderson

I never planned to monetize my blog, much less start writing a newsletter full-time

In what might be interesting, despite my blog doing well in visitor numbers, I didn't consider monetizing it. In 2019, I added an ad unit with the hopes of covering for the $300/year hosting costs - which ended up bringing in about $1,000/year, covering for that, and then, later, for my Mailchimp costs.

At the end of 2020, I quit my engineering manager job at Uber - by that time I was managing a group of about 30 engineers, with engineering managers reporting to me. My plan was this:

"I'm spending the rest of the year finishing my book on growing as a software engineer, and I'm validating startup ideas on platform engineering."

My thinking was that in 6 months, I finish that book and raise funding to start a startup, building a product that would solve a problem related to platform engineering. My plan B was to go back to working at a tech company, either as an engineering manager or an engineer.

I had many side projects in the past: most of them never took off; and that's ok

I did have a reasonably successful blog, and the Flashlight app was wildly successful by the number of downloads - even though it barely made any money. Over the years, I built a lot of side projects during my evenings or weekends. I did these for the fun of it and to scratch an itch, and not with the goal of making money or to spin them off as a business. Here they are:

My 15 years of side projects.

You'll notice that most of these projects are dead, and this makes sense. Because I did them for fun: when it stopped being fun, I stopped doing them. The ones that are still "alive" are ones where there's not much maintenance to do.

The pace of these side projects slowed down considerably from 2015. This was when I moved to Amsterdam to work at Uber. And the pace at Uber was intense, especially in the beginning.

Even though most of my side projects are 'dead,' they were all very valuable. I got to play around with technologies I would have not used without them, and got to give my ideas an honest shot. I learned how the success I imagine, and the reality often don't match, and started to understand why this might be.

I also learned when to shut ideas down that are not going anywhere. Over time, a lot of trial-and-error with side projects, combined with my learnings at work helped me build an intuition on things that could work, and things that won't work.

I saw a 'startup' opportunity in starting a newsletter

So what happened?

Well, for one, I did not finish my book on growing as a software engineer. However, in 6 months wrote 3 other books instead of that one I intended to:

I also created a dozen videos on YouTube, and spent a lot more time on Twitter.

Still, my self-imposed timeline of 6 months spent on writing was running out, and I felt the pressure to get a 'real' job: and either take the plunge in starting a startup, or do something else. But then, there was something else: paid newsletters were just starting off, and Substack was gaining momentum. And as I kept subscribing these newsletters, I had another idea.

I saw a gap in a specific software engineering newsletter on the market. One with in-depth content similar to what I wrote on my blog every few months: except doing this weekly. This observation was on the back of my mind for months before, but I was hesitant to give it a try, because doing so called for:

  1. Writing something original and in-depth every week around software engineering
  2. Not running out of topics
  3. ... doing this without an end in sight

#1 was my main hesitation because I knew the effort even one article takes. In the end, it was knowing that I wrote 3 books in the span of 6 months that gave me the validation that I can do it. And the truth is, I was really enjoying writing longer form and was very comfortable doing so.

I took a calculated risk

I took a deep breath and decided to give this weekly newsletter thing a go for 6 months and treat it like a startup. After 6 months, I would re-evaluate.

It was only at this time that my blog suddenly seemed valuable: all those articles about software engineering topics were read by people who could have been interested in my newsletter. I removed ads and added a link to the newsletter signup form: and my blog ended up becoming the biggest "traffic driver" for newsletter subscribers.

Also, a year before, I added a simple form for people to register for a monthly roundup. In 12 months, 9,000 people signed up, so I figured I'll have some traction.

I then announced my newsletter and went heads down to write as good of a publication as I could. The newsletter took off against most odds - considering the number of newsletters launched that do not get as much traction.

My advice is to ignore most generic advice

In what might be strange advice: I did not follow any mainstream advice on how to launch or not launch a newsletter, or how to monetize a blog or social media. Truth is, I wasn't really looking to do a newsletter, or turn my blog into anything that makes significant amount of money. I especially did not plan to not be working fulltime in engineering.

What I did was not about growing a newsletter: I saw a business opportunity and gave it an honest go. This business opportunity was launching a newsletter for software engineers and building on my experience gained and skills acquired - writing, software engineering, and having worked at interesting companies.

I am the first to admit that I don't know exactly why my newsletter is successful. But, since I know that it is, I'm not too worried about answering this. I am much more worried to keep writing in ways that remain interesting and worthwhile to read - and for customers to pay for.

Given all my advice has heavy survivor bias, you might want to ignore this advice, of course!

Further reading

Some more advice from me:

Here are a few articles that I appreciated reading: