In my first month of blogging, I learned a ton of lessons, that have helped me improve as a writer, as a communicator and as a person.
Last week, I published a post titled "How I Started Existing on the Internet". The post primarily discussed my social media efforts, but I also tried to include some practical advice about writing successful blogs. I got a lot of feedback based on that post, and the most overwhelming request was for more meta content about the blogging process. When I received the following comment yesterday, it was the inspiration I needed to write this post.
Thanks Tim!
How to Write a Good Blog Post
Set the Right Expectations
The first, and most important tip to writing blogs, is to calm down. Out of all the conversations I've had with people who want to blog, but haven't yet, the only common factor is anxiety.
I believe that the common advice/support given to these people is toxic and only contributes to that anxiety. I can't even count the number of times I've seen comments such as:
Oh you're just in your head, your post is going to do very well
or
Great content speaks for itself, if it's quality people will read it
Look, it sucks that I have to be the one to tell you this, but that's all bullshit. I'm not saying those aren't genuine comments driven by a desire to positively impact others, they're just not factual.
No matter how amazing your writing/technical skills are, some of your content will do bad, and that's ok.
This is exactly what I mean by setting the right expectations for yourself. I see a lot of new bloggers spin a fantasy in their head of how things will play out. And even when things go well, if they don't match the fantasy exactly, those people feel disappointed. It's critical that you accept right now that you will produce a ton of flukes throughout your blogging career. It's normal, and it happens to EVERYONE! In fact, I would bet every dollar I own that INSERT-YOUR-FAVORITE-BLOGGER-HERE has written many posts that tanked, you just obviously never heard about those ones.
Another aspect of this is, what really constitutes a "bad blog post". For most people, a "bad blog post" is any blog post that doesn't do well. With a polarizing definition like that, it's not hard to see why people feel very anxious about writing blogs. You have to remember, there are so many factors that go into whether a blog post (or any content on the internet) succeeds or fails. Unfortunately, the quality of that content is not even the primary determining factor.
Accepting this as truth brings a ton of benefits. If you internally believe that a great post can do bad, you won't set unrealistic expectations that only serve to disappoint you. Keep in mind, just because you wrote a good post and it didn't do well, doesn't mean you can't improve. As I said, there are many aspects to producing a successful blog post outside of the writing quality. Here are a few...
- You distributed the post to the wrong audience.
- You didn't distribute the blog post at all.
- The formatting and organization of the post turned people off
- The title wasn't catchy enough
- You posted at the wrong time of day
- There was similar content out that hurt your visibility
"There was similar content out that hurt your visibility" is especially great, because this is a problem that also affects box office movies. Would you say that every movie that does bad at the box office is a "bad movie"? I wouldn't, in fact, some of the most critically acclaimed movies bombed at the box office.
By all standard measures, this movie bombed
Personal Note: I said that everyone writes unsuccessful posts and that definitely includes me. Out of all the posts I've written, the one I spent the most time on did the worst. Over the few weeks it took to write the post, I learned that it might not work well with my audience. Learning that ahead of time made it a lot easier to see the post not succeed. In the end, I enjoyed writing it and it helped me improve so it was just as worthwhile as a successful post.
Have a Goal
Having a goal when you start, will tremendously improve your writing quality, and increase the value that others distill from your work. The biggest advantage of being goal driven when blogging is the effect it has on the "focus" of your content.
"Content focus" is something that many people are aware of, but never think about. Have you ever read an article that was allegedly about X and somehow turned into a discussion of Y. A lot of the time, I'll see comments on one of those posts accusing the author of being "clickbaity". It's funny, because half the time they aren't even trying to write clickbait, they just got distracted when writing the article and lost focus on their goal. Remember, if someone clicked on your article, it was because they were interested in the value alleged by the title. The only way your post can be "bad" is if it doesn't fulfill the expectation you set.
Let's take this post for example. The title is "How to Write a Good Blog Post", which is a pretty lofty goal to deliver on. Keep in mind that you're not expected to please everyone. There's a good chance that someone will read this post and not get anything meaningful out of it, and again, that's ok. As long as I'm honest, on topic and striving not to waste the readers time, I've done my part.
On a more meta level, goals tie back into setting realistic expectations. I've seen many people set their high level goal as
Write my first blog post, it should also be successful.
How many times have you tried something for the first time and done it perfectly, how about even well? It's not just you, things take practice. A much more realistic goal would be
I will write 10 blog posts and one will succeed.
Lastly, it doesn't have to be externally validated goal, just a purposeful one.
Know Your Audience
Having an accurate "audience profile" is key to writing a good blog post. An audience profile is the set of defining characteristics of your average reader. Even if you have 0 followers, and have never written a blog post, you still have an audience profile. Although in that case, it would be mostly defined by audience profile of the sites where you post.
Audience Profile of a Few Sites
Site | Profile (Heavily Opinionated) |
---|---|
Devto | programming, tech, mostly beginners, discussion, friendly, very liberal |
Reddit (programming subs) | experienced, critical, attentive to detail, political (moderator based), |
Hacker News | tech, negative, overly critical, bitter, highly intelligent |
professional, no non-sense, critical, mixed experience |
Although it may not feel the most natural, writing content with your audience in mind will produce a more relatable and empathetic result. It helps me to think of each individual blog post as a full fledged product. This allows me to manage them like I would any other product, by prioritizing features (content) that solves a user need.
Knowing your audience allows you to focus your writing and deliver on the the core value of your post. For example, if you're explaining technical concepts, how much can you expect your average reader to know coming in? This is something I see a lot of writers struggle with, including myself. I'll see a post that is seemingly aimed at a highly technical crowd, but starts off teaching people about rudimentary programming concepts. Don't do that!
There are a lot of other potential ways to alienate your audience. The unfortunate reality is that your content will never be able to satisfy everyone, so your goal should just be to satisfy one group very well. There are some very common things that alienate audiences that I do my best to avoid.
- Memes that are only funny with context
- Using unnecessarily complex words when simpler alternatives are possible
- Title doesn't convey value of the post to the audience
- Excess references to pop culture or other time sensitive constructs
The last point is pretty easy to understand because you've all experienced it before watching older T.V. shows. Some shows are timeless and others become very dated very quickly.
Personal Note: I struggle to not alienate my audience more than anything else discussed in this post. I involve myself with a wide range of topics, so it's very hard for me to not rely on references to other topics and fields outside of audience comfort zone. I learn very relationally, so often times I struggle to explain a concept if it's not in the context of something else.
Create an Outline
The biggest improvement to my blogging came from outlines, and by quite a margin. I wrote quite a few posts before I started using outlines, and it was always a big time-wasting mess. I would often spend 1-2 hours writing before I realized that the pieces of my idea didn't really connect, or that the information didn't have a natural way to fit together.
Your brain also hates that empty space staring back at you. Intros are so crucial, so it's pretty daunting to start a post if the intro is the first task you have to tackle. To combat this, start your post by just jotting down a ton of topics. I usually try to organize these in logical sections, that way the outline provides starter info and structure.
In my experience, outlines also have a tremendously positive effect on "Decision Fatigue". Decision Fatigue is a scientifically studied phenomenon that describes how each decision we make (over the course of a day) inherently reduces the quality of future decisions we make. When it comes down to it, writing a blog post involves making a ton of micro and macro decisions. I have found writing an outline to be the most effective method of combating decision fatigue.
Personal Note: Here's the actual outline I used for this post.
As you may have noticed, some stuff changes. That's ok, the outline still did its job.
Start Writing
I actually have the least to say about this part of the process. Being a good writer is an entirely separate skill from being a good blogger. I'm not a bad writer, but I'm not a great writer. I do have some general tips that I find very useful.
- Don't be afraid to move on. There is no required linear path when writing a blog post, lol.
- If you can handle reading other similar posts to yours first without getting discouraged, do it. It will help you write more confidently and know which areas to spend more time addressing.
- Use a spell checker.
- Have a quiet place to work.
- Set aside enough time to not feel rushed.
Learning From Twitter
This tweet-storm is a great example of concise effective communication
I've started using Twitter recently (just since last month). Twitter provides a great opportunity to practice succinct and effective communication. I tend to be "unnecessarily verbose", and Twitter has really made me aware of the words I choose and the way I phrase things.
My learnings on Twitter eventually led to a strategy that I like to call "lossless blog compression". The goal is to reduce the length of a blog post as much as possible, without increasing the barrier of entry or losing meaning. This isn't an excuse to pull out the thesaurus and start swapping out words for their shorter, obscure counterparts. This is a casual, passive habit for me, so once or twice per blog post I read it over and put everything to the test.
Aim for a Peer Review
Having another person read your post before you publish is really helpful and can really boost your confidence. Unfortunately, this one is really hard to accomplish and most of the time it's not even possible. I would encourage you to send your post to personal friends and family before you release. Even if the readers aren't the intended audience, they can still provide valuable feedback on things like typos and grammar.
Conclusion
Writing a good blog post requires you to become a good blogger. As with everything, it takes practice. Go in with the right expectations and with the understanding that you'll need to walk before you run. Anyone can write good blog posts as long as they stay focused and work hard. The most important step (and most difficult) is to get yourself out there. I promise it's not as bad as you think.
For the record, there are a ton of other aspects of writing a good blog post such as
- Be passionate
- Be positive
- Have a unique voice
- Don't be religious about tooling and technology
- Use lots of headers
- Don't use un-cited data (or unfairly present the data like I did in this post)
- Etc
I ran out of room for this post, but I might even make a part two covering some topics I didn't address. Either this week or next week I will release a meta-article covering a blog post that I never released. In the article, I will discuss how I identified that the piece was bad and how I plan to fix it.
Top comments (21)
Nice! Lot's of good points here. Particularly the section about outlining resonates for me. Wrote something about that as well a while ago: dev.to/kahlil/just-fucking-ship-ta...
Glad you liked it! Saved your post for later.
I like your analysis of audiences on dev.to, reddit, hacker news, and facebook. I've always had a sense that these platforms are different. Seeing their properties written down concisely gave me a deeper sense of understanding of the factors that go into choosing a platform that fits what you are writing, or else choosing what to write based on the platform.
I had never heard of decision fatigue before. I encounter the problem of starting to write something, then getting stuck on a problem and getting distracted, and ultimately not making progress. I'm going to try switching to other areas in my outline if I run into a problem, and come back to the problem with fresh eyes later.
Overall I appreciate your perspective and attitude on writing. It seems a healthy attitude. I learned a lot from hearing how you approach the process of writing :)
P.S. Putting your outline for this meta-blogging post is meta to the extreme ;)
Apologies if I missed this, but what is the metric/are the metrics behind "does well/succeeds" and "doesn't do well/fails?" I'm inferring from the context that you're talking about number of readers and/or engagements?
I'm curious because these days, tech blogs is my business/living, so I've unexpectedly become a connoisseur of methods for evaluating the success of blog posts (at least as they relate to the success of an entire site/blog).
That's a very good question. For me, engagements and views are the primary metric because I don't have a call to action. If I had to a call to action, conversions would be my defining metric. Obviously, the accuracy of your measurement is heavily dependent on how well you understand your content and the market. For example, if I post a machine learning post on Dev.to and it gets 1000 views, that's a pretty good post. If I post the same content on Reddit and it gets 10000 views, that is equally successful (relatively).
With Dev.to it's really hard because they don't really give me a ton of information. With my personal blog site, I have a couple google analytics scripts that present my posts in terms of average read time, % of twitter follow, etc. I think comments are the best way to validate "successful" post because if you get comments but minimal views, it probably means its a good post for the wrong audience.
Thanks for taking the time to ask a great question like this. I should have talked about it in the core post!
I think defining success for blog posts could be its own standalone post, if not series.
Personally, I've developed a content planning system that involves each post having a (usually KPI-driven) mission. So, for me, success is "does it achieve the mission."
Missions might involve raising awareness of a concept (page views), getting people to click through to an asset (CTR), courting buyers (conversion rate), reaching new readers (social shares), or simply hobby blogging on my own site (did I enjoy writing the post). Anyway, it's a big topic.
FWIW, regarding measuring dev.to content performance outside of the medium itself, you can see in aggregate how it drives traffic to your site with your analytics. For instance, I'm attaching an image of referrals for one my sites over the last few days. If you go from there and add the secondary dimension of landing page, you can see which bacaklinks on dev.to are interesting readers the most and driving click-throughs, especially if you use UTM codes in those URLs.
Anyway, if you hadn't seen that before, I've found it's a helpful way to measure potential audience growth potential of share/syndication sites, even when those sites are sort of opaque with internal metrics and analytics. You can't really tell, say, time on page, but you can infer that it's pretty good if you have a high click-through rate on a link near the bottom of the post.
I am the former EIC of Linux Magazine. I've worked with hundreds of writers that never wrote previously. Writing technical articles is not the same as writing a novel; the parameters of what's required is different. However, the writer still needs to be effective.
One critical point: an outline is only effective if you know exactly what important information you want to relay to your audience. Identity the 1-3 points you want your readers to walk away with. (The information is the hook.) The rest of the outline should come along more readily.
You will want to establish context or even define who your audience is and describe what you want to relay and why it is important. Then you can provide your arguments, evidence, code examples, etc. Then close and hopefully you have achieved your goal.
hmmm....i think the hardest is more towards the imposter syndrome in being exposed as a fraud?
I had it every time I post a blog post cause I tend to worry about negative feedback from my post but I do it anyway.
The scariest that I had is probably the one I had written about is Why be a Full Stack Developer that is a bit controversial which during that point of time I was ready to combat any negative comments for it due to the subject matter.
Great points raised above.
I'd like to suggest people spend a bit of time on the title or "headlibne" as this is what first draws people.
Mainly; undersell. Titles or headlines often end up saying things that are not actually in the actually article. If a word is not in the article, don't put it in the title.
Instead?
Seek out the most unusual, eye-catching aspect of your article. For example, for this article, I might have written "Blogging - spending the longest time can bring the worst result", then structured the article around that premise.
Or, more positively, the shortest time brings best results!
I really should have had a section on title, can't believe I forgot. That's also a great tip Jason! I usually try to condense as much value in one sentence as possible.
I can definitely relate! My most popular post thus far I thought was going to be a very niche post. It caught the right eyes at the right time and has been by far my most "successful" post.
It's nearly impossible to guess what is going to stick so the lesson for me boils down to: keep trying and keep improving.
It's hard not to blame it on "luck" but it's really just too complex to analyze. There's definitely a lot of steps that you can take to make things predictable.
That's a great lesson to take away. Thanks for the great feedback!
Another tip, use tools like Grammarly.
To make the text appealing, one should consider all its aspects — from coherence to monotony. What I recommend is to find an excellent service with different writing tools like EduCat. If you're a writer, that platform will come in handy.
Haha. Fun reading. Thanks for publishing. Nice read.