Almost everyone picks keywords for blog posts the wrong way: they sort a keyword tool by search volume, grab the biggest numbers they can spell, and start writing. Three months later the post is buried on page four and they blame the algorithm. The problem isn’t the algorithm. Volume tells you how many people search a term — it says nothing about whether you can rank for it, or whether the people searching it want a blog post at all. This guide gives you the system a practitioner actually uses: a filter that kills bad targets before you waste a draft, a scoring method for difficulty, a worked example with real numbers, and the newer question nobody’s answering — how to pick terms that surface in AI answers, not just blue links.
Why Volume-First Keyword Selection Fails
Search volume is the most visible metric and the least useful one for a blog. A term with 8,000 monthly searches sounds like a win until you notice the entire first page is owned by domains with thousands of referring domains and a decade of authority. You will not crack it with a new post. Meanwhile a cluster of 90-searches-a-month long-tail queries, each answered by a thin forum thread, is sitting there unguarded. Ten of those beat one impossible head term, and they compound: long-tail pages tend to hold their rankings through core updates because they satisfy a specific query rather than gaming a broad one.
The second failure is intent blindness. “Best running shoes” and “how to clean running shoes” have similar volume and identical products behind them — but the first wants a comparison table you’ll lose to affiliate giants, and the second wants a 900-word how-to you can genuinely win. Volume can’t see that difference. You have to.
The Three-Filter Test Every Blog Keyword Must Pass
Before a keyword earns a draft, it has to clear three gates in order. If it fails any one, drop it — the next one on your list is cheaper.
- Demand is real. There is measurable, recurring search volume — not a one-off spike, not a tool’s rounded guess of “10.” Even 50–150 searches a month is fine for a targeted post; you’re stacking many of these, not betting on one.
- The competition is beatable. The weakest page currently ranking on page one is something you can plausibly out-do with the resources you have. This is the filter people skip, and it’s the one that decides everything.
- Intent matches a blog post. When you look at what already ranks, it’s articles — not product pages, not a calculator, not a video carousel. If page one is all e-commerce category pages, Google has decided this query wants to buy, not read. A blog post will not rank there no matter how good it is.
Run every candidate through all three. Most keywords for blog posts that people obsess over die at filter two or three, and that’s the point — you’re protecting your writing time.
Where to Find Candidates Worth Filtering
Good targets come from four sources, roughly in order of quality:
- Your own Search Console. Filter for queries where you already rank positions 8–25 with 100-plus impressions. Google is telling you it almost trusts you for these. A dedicated post often moves them to the top five faster than anything you write cold.
- Competitor gap analysis. Pull the keywords three or four real rivals rank for and you don’t. These are pre-validated — someone in your niche already proved the demand and the intent.
- Seed expansion in a keyword tool. Feed a core term in and pull 100–150 related ideas with volume, difficulty, and CPC, segmented by country. SEO Rocket runs this step on live Ahrefs data through a chat prompt, so you get the pool without exporting spreadsheets by hand.
- Customer language. The exact phrasing from support tickets, sales calls, and reviews. These convert because they’re how buyers actually talk, and they’re usually low-competition because no marketer thought to target them.
Score Difficulty Against the Weakest Page-One Result
Here is where most guides hand you a “keyword difficulty” score from 0–100 and leave you to guess. That score benchmarks against the average of page one — which means it’s systematically pessimistic for a new site, because you are never trying to beat the average. You’re trying to beat position ten.
So open the actual SERP and study the tenth result, not the first. Ask concrete questions: How many referring domains does it have? Is the content thin, outdated, or off-intent? Does it fully answer the query or trail off? If the number-ten page is a 500-word listicle from 2021 with no author and stale data, you can beat it with a genuinely useful 1,300-word post — regardless of what the difficulty score says. If number ten is a 2,500-word expert guide from a domain with 4,000 referring domains, walk away and spend your draft somewhere winnable. Benchmarking against the median or the top result is how people talk themselves out of every good opportunity.
A Worked Example: Modeling One Keyword End to End
Say you run a gardening blog and you’re weighing “container gardening for beginners” (roughly 2,400 searches/month, difficulty tool says “medium-hard”). Filter one: demand is clearly real. Filter three: page one is all articles, so intent matches. Filter two is the decider — you open the SERP and the number-ten result is an 800-word post with a generic stock photo, no plant-specific advice, and comments asking questions it never answered. Referring domains: 12. That’s beatable.
Now you model the payoff. If you can reach position 5–8, you might capture 2–4% of that volume, so 48–96 visits a month from one post. Thin on its own — but this keyword carries a natural cluster: “best vegetables for containers,” “container size for tomatoes,” “self-watering container gardening.” Each is 100–400 searches, each answerable in the same post or a linked one. Model the cluster, not the single term, and you’re looking at 300–500 monthly visits from one focused effort. That is how keywords for blog posts should be evaluated — as clusters with a realistic capture rate, not as a single vanity number.
Primary vs Secondary: The Entity Layer That Wins Depth
Every post gets one primary keyword — the phrase in your title and H1 — plus five to fifteen secondary terms that occur naturally as you cover the topic properly. Do not force them; if you’re genuinely answering the question, most of them appear on their own.
What’s changed is that modern ranking leans on entities and semantic completeness, not exact-match repetition. For “container gardening for beginners,” Google expects to see related concepts — drainage, potting mix, sunlight requirements, specific plants, watering frequency — because a real expert would mention them. Covering the entity space is what signals depth. This is also why keyword density is a dead metric: stuffing your primary phrase 20 times helps nothing and reads like spam. Two to four natural mentions plus thorough topical coverage beats any density target.
Map Keywords Into Clusters Before You Write
The single most expensive mistake in blogging is keyword cannibalization — publishing three posts that all target near-identical terms, so they compete with each other and none ranks. Google picks one, usually the weakest, and splits your authority across the rest.
Prevent it with a map. Before writing anything, list your target primary keywords in a sheet and assign each to exactly one planned post, with its secondary terms grouped underneath. When a new keyword idea appears, you check the map: does it belong to an existing post as a secondary term, or does it deserve its own? This turns scattered posts into a topic cluster — a pillar page plus supporting articles that interlink — which is how you build the topical authority that lets you rank for progressively harder terms over time. SEO Rocket’s gap analysis and keyword pool feed this map directly, so the cluster is planned instead of accidental.
Place the Keyword Where It Earns Relevance
Placement is simple mechanics — no tricks, no density spreadsheets:
- Title tag: primary keyword near the front, under 60 characters.
- H1: once, phrased for a human.
- First 100 words: once, naturally, so the topic is unmistakable early.
- URL slug: the primary keyword, hyphenated, nothing else.
- One or two H2s: where it genuinely fits the section.
- Meta description: once, in 150–160 characters that promise the payoff.
- Body: two to four total mentions, plus your secondary terms wherever the topic naturally calls for them.
Beyond that, stop counting. The remaining relevance comes from covering the subject completely, not from hitting a repetition quota.
Target AI Answers, Not Just Blue Links
Here’s the sub-question most 2024-era guides miss entirely: your keywords for blog posts now feed AI Overviews, ChatGPT, and Perplexity, not only the ten blue links. AI answer engines synthesize responses from pages that cleanly answer specific questions — which shifts what a good target looks like. Question-shaped, long-tail phrases (“how often to water container tomatoes”) get cited in AI answers far more than broad head terms, because the model can lift a direct, self-contained answer from your paragraph. Structure matters too: a crisp question as an H2 or H3 followed by a two-to-four-sentence direct answer is exactly what both featured snippets and AI systems extract. So when you build your keyword map, deliberately reserve a few question-format targets and answer them in the first sentence of their section. SEO Rocket tracks AI visibility alongside classic rank tracking, so you can see whether a post is getting cited, not just where it sits on page one.
Measure the Right Signal After Publishing
New posts don’t rank on day one, and checking daily will drive you insane. Give a post 8–12 weeks before you judge it, and watch impressions in Search Console before rankings. Impressions rising means Google is testing you in the results for more queries — the leading indicator that a page is gaining trust. Position follows impressions, and clicks follow position. If impressions are climbing but clicks aren’t, your title and meta are the problem, not your content. If impressions are flat after two months, the page probably failed filter two — it’s not beating the weakest competitor — and it’s time to expand it or repoint it at an easier cluster.
Frequently Asked Questions
How many keywords should one blog post target?
One primary keyword and five to fifteen secondary terms that appear naturally as you cover the topic. More than one primary keyword per post causes cannibalization and dilutes relevance — if you have two strong primaries, that’s two posts.
What’s a good search volume for a blog keyword?
There’s no universal floor. For a new or mid-authority blog, 50–500 monthly searches per term is the sweet spot — enough demand to matter, low enough competition to actually win. Stack many of these into clusters rather than chasing one high-volume head term you can’t rank for.
Can I find keywords for blog posts without a paid tool?
Yes, partly. Google Search Console shows queries you already rank for, Google autocomplete and “People also ask” reveal real long-tail phrasing, and your own customer conversations surface buyer language. A keyword tool adds volume, difficulty, and competitor-gap data that would take hours to reconstruct by hand — which is the step SEO Rocket automates on live Ahrefs data.
The Bottom Line
Choosing keywords for blog posts well is a filtering discipline, not a volume hunt. Confirm real demand, verify you can beat the weakest page-one competitor, and match intent to the blog-post format — then model the cluster’s payoff, map targets to avoid cannibalization, cover the entity space instead of counting density, and reserve a few question-shaped terms for AI answers. That process, refined across a playbook proven on more than 1,000,000 ranking pages, is why some blogs compound through every core update while others rewrite their traffic base every year. Pick the winnable targets, answer them completely, and let the rankings follow.