How to Do Keyword Research: 7-Step Process
Keyword research isn’t about finding “the best keywords.” It’s about mapping what your audience searches for, filtering it against what you can realistically rank for, and assigning each keyword to the right piece of content. Most guides skip the filtering step, which is why most keyword research ends up as a 2,000-row spreadsheet nobody opens again.
Here’s the short answer. The 7 steps: define the business goal, list seed keywords, expand with a research tool, pull competitor keywords, classify search intent, score by opportunity, and assign each keyword to a specific content piece or page. Every step has a specific output. If you skip one, the next step produces garbage.
Why Most Keyword Research Fails
The common pattern: someone opens Ahrefs or Semrush, types a seed keyword, exports 5,000 results sorted by volume, picks the top 20, and hands them to a writer. Three months later the content ranks for nothing because half the keywords had informational intent when the site sells software, and the other half were too competitive for a 6-month-old domain to touch.
Real keyword research is a filtering exercise, not a discovery exercise. Discovery is trivial. The tools will hand you 100,000 keywords for any topic. The skill is deciding which 50 of those are actually worth pursuing, given your site, your goals, and your timeline.
Step 1: Define the Business Goal
Before you open any tool, answer one question: what does this keyword research need to produce?
Common answers:
- Traffic growth for an ad-monetized blog. You want high-volume informational queries with achievable difficulty.
- Lead generation for a SaaS. You want commercial-intent queries that signal buying behavior.
- E-commerce sales. You want product and category-level transactional queries, plus supporting informational content.
- Brand awareness. You want high-volume queries in your space, even if competition is high, because reach matters more than rank.
- Affiliate revenue. You want “best X,” “X review,” and “X vs Y” queries, filtered to products with actual affiliate programs.
The goal determines the filter criteria in Step 6. Without a defined goal, you’ll optimize for the wrong metric and burn 30 hours producing a list nobody uses.
Step 2: List Seed Keywords
Seed keywords are the 10-30 broad terms that describe your business, product, or topic. They’re the starting point for every expansion in Step 3.
How to build a seed list:
- Internal language. Pull terms from your homepage, product pages, and customer emails. The words you use to describe what you do.
- Customer language. Read support tickets, sales call transcripts, Reddit threads, and review sites. The words customers use are often different from yours. (You say “project management software.” They search “tool to track team tasks.”)
- Category language. Industry-standard terms. Wikipedia category pages are a decent starting point.
- Problem language. The pains your product solves, worded as problems. (“Team keeps missing deadlines,” “can’t see what everyone’s working on.”)
Good seed list example for a project management SaaS:
“ project management software team task management kanban board agile project management sprint planning project tracking team collaboration tool work management platform productivity software resource planning gantt chart software issue tracking workflow automation “
13 seeds. Each one expands to 500-5,000 related keywords in Step 3.
Step 3: Expand With a Research Tool
Take each seed into a keyword research tool and pull the full expansion. The output should be a list of 2,000-20,000 related keywords before any filtering.
Tools that work:
- Ahrefs Keywords Explorer ($129/mo). Most accurate difficulty scoring in my tests. Matching terms, related terms, and “questions” are the three reports that matter.
- Semrush Keyword Magic Tool ($129.95/mo). Broader database in some verticals, particularly ecommerce.
- Google Keyword Planner (free with a Google Ads account). Still useful for volume validation, especially for long-tail queries the paid tools miss.
- Google Search Console (free). If your site has been indexed for more than six months, GSC’s Queries report shows what you’re already impression-earning for but not yet ranking for.
- AnswerThePublic ($99/mo). Question-format queries, good for informational content.
- Keywords Everywhere ($2.25/mo for 100k credits). Bolt-on browser extension for opportunistic research while browsing.
Free stack that works: Google Keyword Planner + Google Search Console + Keywords Everywhere. You’ll miss some of the difficulty signals that Ahrefs and Semrush provide, but the discovery side is covered.
Export everything at this stage. Don’t filter yet. The filter happens in Step 6, and filtering too early removes keywords you’d want to see in context.
Step 4: Pull Competitor Keywords
Your competitors already did half your keyword research. Use it.
In Ahrefs Site Explorer (or Semrush Organic Research), enter 3-5 direct competitors and export their ranking keywords. Then run a Content Gap report: keywords your competitors rank for but you don’t.
The output is usually the most valuable list in the whole process. It shows:
- Queries your audience definitely uses (because competitors rank for them)
- Queries with proven commercial viability (your competitors wouldn’t target them otherwise)
- Specific content formats that work in your niche (you’ll see the top-ranking competitor URL for each keyword)
A useful filter: keywords where at least 2 competitors rank in the top 20, but you don’t rank at all. That cross-validation removes one-off outliers.
Step 5: Classify Search Intent
This is where most keyword research falls apart. A keyword’s volume and difficulty tell you nothing if the search intent doesn’t match what you’re selling.
Four intent categories:
- Informational. “How to do keyword research,” “what is SEO.” Users want an answer, not a product. Best served by blog posts, guides, and tutorials.
- Navigational. “Ahrefs login,” “Semrush pricing.” Users want a specific site or page. Only your branded queries fit here for your own content.
- Commercial investigation. “Best keyword research tool,” “Ahrefs vs Semrush,” “SEMrush review.” Users are comparing options. Best served by listicles, comparison pages, and reviews.
- Transactional. “Buy Ahrefs subscription,” “Semrush free trial,” “keyword research tool pricing.” Users are ready to act. Best served by pricing pages, signup flows, and product pages.
How to classify: look at the top 10 SERP results for each keyword. If 8 of them are blog posts, intent is informational. If 8 are product pages, intent is transactional. If it’s mixed (4 blog posts, 3 comparison pages, 3 product pages), intent is fuzzy, and you’ll need to pick the format with the strongest engagement signals for your audience.
Tag every keyword in your sheet with its intent. This single step eliminates the “wrote a blog post for a transactional keyword” mistake that ruins most content strategies.
Step 6: Score by Opportunity
Now filter the combined list (seeds + expansions + competitor keywords) against your business goal. Score each keyword on three axes:
- Volume. Monthly search volume. Use averages from the last 12 months to avoid seasonal spikes.
- Difficulty. Ahrefs KD score, Semrush KD, or a manual assessment based on the top-ranking domains. As a rough heuristic, sites under 6 months old should target KD under 20. Sites with 100+ referring domains can target KD 20-50. Sites with 1,000+ referring domains can target KD 50+.
- Business value. Your own score, 1-5, for how well this keyword aligns with revenue. A “how to do keyword research” search has low business value for a project management tool but high value for an SEO tool.
Simple formula that works: (Volume / 100) * Business Value / (Difficulty + 1). Not scientific, but it ranks keywords sensibly and forces you to think about business fit.
Cut the list ruthlessly at this stage. A 100-keyword prioritized list that you’ll actually act on beats a 5,000-keyword comprehensive list that gathers dust.
Step 7: Assign to Content Pieces
The final step: map each keyword to a specific content piece or page.
Rules:
- One primary keyword per page. Don’t target “best SEO plugin” and “best WordPress SEO plugin” on two different pages. Pick the higher-volume one, target both naturally within one piece.
- Cluster supporting keywords under the primary. A “best WordPress SEO plugin” page should also target “best free WordPress SEO plugin,” “top SEO plugins,” and 10-15 related long-tails in the same piece.
- Match content format to intent. Informational queries go to blog posts. Commercial investigation queries go to comparison or listicle pages. Transactional queries go to product pages.
- Assign a target publish date. Without a date, the keyword sits in the sheet forever. With a date, someone’s accountable.
Output looks like:
| Primary keyword | Volume | KD | Intent | Format | URL slug | Target date |
|---|---|---|---|---|---|---|
| best seo plugins wordpress | 8,100 | 45 | Commercial | Listicle | /best-seo-plugins-wordpress/ | 2026-05-01 |
| how to do keyword research | 22,200 | 60 | Informational | How-to guide | /how-to-do-keyword-research/ | 2026-05-15 |
| link building strategies 2026 | 1,200 | 30 | Informational | Blog article | /link-building-strategies-2026/ | 2026-06-01 |
This table is the deliverable. Everything before it was process.
Free Tool Stack vs Paid Tool Stack
If you’re bootstrapping or just starting out, the free stack gets you 70% of the way there. At some point, paid tools pay for themselves. But not on day one.
| Need | Free option | Paid option |
|---|---|---|
| Seed expansion | Google Keyword Planner | Ahrefs Keywords Explorer |
| Competitor keywords | Manual SERP checks | Ahrefs Site Explorer |
| Own-site queries | Google Search Console | Included in Ahrefs/Semrush |
| Long-tail discovery | Google autocomplete + “People also ask” | Ahrefs Questions report |
| Difficulty scoring | Manual (count referring domains to top 10) | Ahrefs KD, Semrush KD |
| Intent classification | Manual SERP review | Automated tagging in Semrush |
The paid stack saves time. On a 500-keyword research project, paid tools save roughly 15-20 hours of manual work. At $129/mo for Ahrefs, the break-even is about two projects per year.
Common Keyword Research Mistakes
I’ve done most of these. Here’s what to avoid:
- Picking keywords by volume alone. High-volume keywords are almost always high-difficulty. You’ll rank page 8 and feel good about yourself until you check Analytics.
- Ignoring search intent. Targeting “accounting software” (commercial) with a how-to guide on bookkeeping (informational) is a guaranteed zero-ranking outcome.
- Keyword stuffing. Targeting 40 related keywords in one 1,500-word article. Pick one primary, support it naturally with related terms, stop trying to game density.
- Chasing competitors you can’t compete with. A 2-month-old site trying to rank for keywords Investopedia dominates wastes every hour spent on that content.
- Neglecting the “answer” in question keywords. “How many” and “what is” queries get featured snippets when you answer in 40-60 words at the top of the section. Most people bury the answer 800 words deep.
- Set-and-forget research. Keyword volumes shift. SERP intent shifts. Run a refresh every 6 months on priority topics.
Frequently Asked Questions
How long does keyword research take?
For a single content piece, 30-60 minutes using the 7-step process. For a full content strategy covering 50-100 pages, plan on 15-25 hours spread across a week. The bottleneck is usually intent classification and the prioritization scoring in step 6, not the tool work.
What’s the best keyword research tool?
Ahrefs Keywords Explorer has the most accurate difficulty scoring in my testing, but Semrush Keyword Magic Tool has a broader database in some ecommerce verticals. For free tools, Google Keyword Planner combined with Google Search Console covers roughly 70% of what paid tools do. Start free, upgrade when the time savings justify $129/month.
How many keywords should I target per page?
One primary keyword, plus 10-20 supporting long-tails that share the same search intent. Don’t split similar queries across multiple pages (Google treats them as near-duplicates). Don’t try to rank one page for 40 unrelated keywords (the page ends up unfocused and ranks for nothing).
What’s a good keyword difficulty score to target?
Depends on your site’s authority. New sites (under 6 months, under 50 referring domains) should target KD under 20. Established sites with 100-500 referring domains can target KD 20-50. Authority sites with 1,000+ referring domains can target KD 50+. Checking the referring domain counts of top-ranking pages is more accurate than tool-provided difficulty scores.
Should I target high-volume or long-tail keywords?
Both, in the right ratio. High-volume head keywords should be the anchors of your content hubs (10-20% of your targets). Long-tail keywords make up the rest because they’re easier to rank for, convert better, and collectively drive more traffic than the head terms. A 70/30 long-tail-to-head split is typical for content-driven sites.
How often should I refresh keyword research?
Priority topics every 6 months, the full content calendar annually. Keyword volumes drift as search behavior shifts. SERP intent can change entirely when Google reinterprets a query (happens more often than people realize). Google Search Console’s Queries report is the fastest way to spot intent shifts on pages you already own.
Can I do keyword research without paid tools?
Yes. Google Keyword Planner (free with Google Ads account), Google Search Console (free for any verified site), Google autocomplete, and the “People Also Ask” SERP feature cover most of what paid tools provide for discovery. You’ll miss accurate difficulty scoring and bulk competitor analysis, but for a site with under 100 target keywords, the free stack works.
What’s the difference between SEO keyword research and PPC keyword research?
SEO research prioritizes informational and commercial-investigation queries (where organic content ranks). PPC research prioritizes transactional queries (where ad spend converts to revenue immediately). The overlap is commercial-investigation queries, where both SEO and PPC work. Volume and keyword difficulty matter for SEO; cost-per-click and conversion intent matter more for PPC.
Worked Example: 3-Hour Research for a New Content Cluster
Theory falls apart without practice. Here’s how the 7-step process looks applied to a real cluster, in roughly 3 hours:
Scenario: SaaS company selling invoice software wants to build a content cluster around “freelance invoicing.”
Step 1 (10 minutes): Define goal. Generate leads from freelancers who will trial the product. Prioritize commercial-investigation and transactional queries over pure informational ones.
Step 2 (20 minutes): Seed list. Pull language from the product pages and support tickets. Seeds: “freelance invoice,” “invoice template,” “invoicing software for freelancers,” “how to invoice as a freelancer,” “freelance billing,” “invoice app,” “send invoice online,” “invoice generator.”
Step 3 (40 minutes): Expand in Ahrefs Keywords Explorer. Export matching terms and questions for each seed. 4,800 unique keywords after dedup.
Step 4 (30 minutes): Competitor keywords. Pull Hello Bonsai, Harvest, and Wave as direct competitors. Content Gap report produces 1,200 additional keywords where all three rank but the subject company doesn’t.
Step 5 (30 minutes): Intent classification. Sample the SERPs for the top 100 keywords. Tag them. Extrapolate tagging rules (e.g., “best X” = commercial, “how to X” = informational, “X template” = usually informational with download intent).
Step 6 (30 minutes): Score and filter. Volume thresholds (minimum 200 searches/month for informational, 50 for transactional). KD threshold under 30 for the target site. Business value 3+.
Step 7 (20 minutes): Assign 60 surviving keywords to 14 content pieces plus 3 landing pages. Set publish dates across the next 4 months.
Total time: 3 hours. Output: a 4-month content roadmap aligned with business goals.
Keyword Research for AI Search (GEO)
AI search engines like Google’s AI Overviews, Perplexity, ChatGPT browse, and Claude browse change what “ranking” means. Instead of showing 10 blue links, they cite 3-5 sources in a synthesized answer.
What this means for keyword research:
- Conversational and long-tail queries matter more. Users ask AI engines complete questions (“what’s the best keyword research tool for a 6-month-old site”), not head terms (“keyword tool”). Build content around answerable questions.
- Entity density drives citation. Pages that name specific tools, brands, prices, and metrics get cited more often than generic content. When you research keywords, prioritize queries where a specific, verifiable answer exists.
- Information gain beats word count. AI engines cite sources that provide unique data points or perspectives, not the sources that repeat what’s already indexed. “I tested X on Y and got Z result” beats “experts recommend X.”
- Structured answers increase citation probability. FAQ sections, comparison tables, and clearly labeled answer sections are extractable. Vague, winding prose is not.
Practical keyword research adjustment: for every primary keyword, identify 3-5 question variations that an AI search user might type. Build content that answers the primary query AND each of the question variations in clearly delimited sections.
The Bottom Line
Keyword research is the highest-leverage work in SEO because everything downstream depends on it. Get it wrong and you spend the next six months producing content nobody searches for. Get it right and your content team knows exactly what to write, for whom, and why.
The 7-step process isn’t the only way to do it. But it’s the process I use on every site I work on, and it keeps producing content that ranks. Discovery tools are commodities now. The skill is filtering, intent classification, and honest assessment of what your site can realistically win.
If your current keyword research feels like it produces lists you don’t act on, the problem isn’t the tool. It’s the filter. Redo steps 5 and 6 on your last batch and see what survives.