How to Write an SEO-Friendly Blog Post (Step-by-Step)
A practical step-by-step guide to writing SEO-friendly blog posts that rank on Google — covering keywords, structure, readability, links, and metadata.
A well-written blog post that nobody reads is just a journal entry. SEO bridges the gap between the content you create and the audience searching for it. Writing for SEO does not mean stuffing keywords into every sentence — it means writing content that answers a real question well, structured so both readers and search engines can make sense of it.
This step-by-step guide covers every decision from choosing a keyword to hitting publish, with an extra step for keeping old posts competitive over time. Follow these steps consistently and your posts will have a genuine shot at ranking.
Step 1: Start with a Keyword and Match Search Intent
Before you write a word, know what query you are targeting and what the person searching that query actually wants.
Use a keyword research tool — Ahrefs, Semrush, or even Google’s free Search Console — to find a specific phrase with real search volume. For a newer site, favor long-tail keywords (three or more words) that are specific enough to attract a defined audience and competitive enough to realistically rank for.
Then check search intent: Google the keyword and study the top five results. Ask yourself:
- What format do they use? (List post, how-to tutorial, comparison, definition)
- What depth do they go to?
- What angle do they take?
If every top result is a beginner tutorial, do not write an expert-level deep dive targeting that exact keyword. Match what the results show people want. For a thorough introduction to finding the right keywords, see keyword research basics.
Step 2: Write a Strong, Keyword-Rich Title
Your post title serves as the H1 heading and the foundation of your SEO title tag. It needs to:
- Include your primary keyword, ideally near the beginning
- Tell the reader exactly what they will get
- Stay under 60 characters so it displays in full in search results
- Avoid clickbait that sets expectations the post cannot meet
Good: “How to Speed Up WordPress (10 Practical Steps)” Weak: “Here Are Some Things That Might Help Your Site Load Faster”
If your SEO plugin separates the SEO title from the post title (Yoast and Rank Math both do), you can adjust the title tag independently without changing your on-page H1.
Step 3: Build an Outline Before You Write
Outlining before writing does two things: it forces you to think through the logical structure of the post, and it produces the heading hierarchy that Google uses to understand what the page covers.
Sketch out your H2 headings — the main sections. Add H3 subheadings under any section that benefits from it. At this stage, think about the full scope of the topic. What sub-questions does someone asking the main question also have? Each sub-question is a potential heading.
Tools like Semrush’s Topic Research or the “People Also Ask” boxes in Google can surface related questions worth addressing.
A solid outline for a 1,500-word post might have five to seven H2 sections with a few H3s underneath the more complex ones.
Step 4: Write a Compelling Introduction
The introduction has one job: convince the reader they are in the right place and that reading further is worth their time. Most readers decide within a few seconds whether to continue or bounce, and bounce rate is a signal that Google pays attention to.
Avoid long preambles about yourself or the history of the topic. Instead:
- Acknowledge the problem or question the reader has
- Briefly show that you understand it
- Tell them what they will learn or be able to do after reading
Mention your primary keyword naturally in the first 100 words. This is not a rigid rule, but it reinforces the relevance of the page to both readers and crawlers.
Step 5: Write for Readability
Good SEO writing is, above all, good writing. That means:
- Short paragraphs — two to four sentences, with line breaks that give the eye a rest
- Plain language — write at the level your audience actually reads, not to show off vocabulary
- Active voice — “Google indexes your page” beats “your page is indexed by Google”
- Lists and tables — use them where they help, not as padding
- Clear transitions — each section should logically follow the last

Avoid keyword stuffing. Use your primary keyword naturally a handful of times and weave in related terms (what SEO practitioners call LSI or semantically related keywords) the way you would if you were writing without any keyword in mind. Yoast’s readability analysis is a useful guide to common readability problems.
Step 6: Use Internal and External Links
Links connect your post to the wider web and to the rest of your site. Both types matter.
Internal links point to other pages on your own site. They help Google understand your site structure, pass authority between pages, and keep readers exploring your content. As a rule of thumb, add two to four contextual internal links per post. Use descriptive anchor text — the linked words should describe what the linked page is about. Read on-page SEO for WordPress for more detail on how internal links affect rankings.
External links point outward to authoritative sources. They add credibility to claims you make, give readers a path to deeper information, and signal to Google that you are citing real sources rather than making things up. Link to reputable sites — WordPress.org documentation, research studies, established publications — rather than to thin or commercial pages.
Aim for roughly three to five external links in a standard post. Do not add them for the sake of a number; add them where they genuinely help the reader.
Step 7: Optimize Images and Alt Text
Every image in a blog post is an opportunity and a potential liability. Images add visual interest and break up dense text, but unoptimized images are one of the leading causes of slow page loads.
Before uploading:
- Resize to the maximum display size (typically no wider than 1,200px for inline post images)
- Compress using a tool like Squoosh or a WordPress plugin
- Save in WebP format where your theme supports it
After uploading, fill in the alt text field. Alt text describes the image for screen readers and for Google’s image crawlers. A good alt text is specific and descriptive: “WordPress theme customizer panel showing font and color options” is better than “WordPress screenshot” or, worse, leaving it empty.
Use a keyword in alt text only when it genuinely describes the image. Forcing keywords into alt text that do not describe the image is a bad practice.
Step 8: Write the Meta Description
The meta description does not directly affect your ranking, but it heavily influences whether a searcher clicks your result. A compelling meta description can lift your click-through rate significantly, which does affect rankings indirectly.
Write a meta description that:
- Summarizes what the post delivers
- Includes the primary keyword (Google bolds matching terms in the snippet)
- Stays between 150 and 160 characters
- Ends with a subtle nudge to act or read on
Set it in your SEO plugin — Yoast and Rank Math both have a snippet preview that shows how it will look in search results.
Step 9: Optimize the URL Slug
WordPress generates a URL slug from your post title by default, which often produces long, unwieldy paths. Before publishing, edit the slug to be:
- Short (three to five words is ideal)
- Keyword-containing
- Hyphen-separated, no underscores
- Free of stop words like “the,” “a,” “and,” “in”
For example: /how-to-write-seo-friendly-blog-post is better than /how-to-write-an-seo-friendly-blog-post-for-your-website-in-2026.
If you are updating an old post with a better slug, set up a 301 redirect from the old URL to the new one to preserve any ranking value the old URL had accumulated. Tools like Moz have written extensively on best practices for URL structure.
Step 10: Update Old Posts Regularly
Publishing is not the final step — it is the beginning. Posts decay over time. Information goes out of date, competitors publish better versions, and rankings drift.
Schedule a content audit every three to six months. Look for posts that:
- Rank on page two or three (positions 11–30) and could be improved to reach page one
- Have outdated statistics, product versions, or screenshots
- Cover topics where you now have more comprehensive information to add
When you update a post, change the pubDate in your frontmatter to the revision date so readers and search engines know the content is current. Google rewards freshness for time-sensitive topics.
Backlinko and Search Engine Journal both publish good guidance on content refresh strategies if you want to go deeper on this.
A Quick Pre-Publish Checklist
| Element | What to Check |
|---|---|
| Keyword | Appears in title, intro, at least one H2, and slug |
| Meta description | 150–160 chars, includes keyword |
| Images | Compressed, descriptive alt text |
| Internal links | 2–4 contextual links to relevant posts |
| External links | 3–5 links to authoritative sources |
| Readability | Short paragraphs, clear headings, no jargon walls |
| URL slug | Short, keyword-rich, no stop words |
| Mobile preview | Post looks good on a small screen |
Conclusion
SEO-friendly writing is not a separate discipline from good writing — it is good writing with a few deliberate structural choices layered on top. Choose a keyword with real intent behind it, structure your post so readers and crawlers can follow it, link out to credible sources, and keep your posts up to date as information evolves.
If you want to go deeper on how individual on-page elements affect your rankings, the on-page SEO guide for WordPress covers each factor in detail. And if you are still building out your keyword strategy, start with keyword research basics before writing your next post.