Keyword Research Using Only Google Search Console (Step-by-Step)
Your best keyword research tool is already free and integrated with your site. Here's the GSC-only workflow.
Every site with GSC connected is sitting on the best keyword data available for that domain — real impressions, real clicks, real positions. Not estimates from a panel. Not clickstream extrapolations. Actual query-level performance data from Google's index.
Most people glance at it, note their top 5 keywords, and close the tab. That's leaving most of the value on the table. Here's the five-step GSC-only keyword research workflow that finds your best opportunities without paying for a single external tool.
Why GSC data is better than third-party estimates
Third-party keyword tools work from samples. Ahrefs, Semrush, Moz — they all pull from clickstream panels (browser extensions, ISP data, opted-in consumer tracking programs), extrapolate to the full search population, and round the result. For head terms with millions of monthly searches, the estimates are reasonably close. For anything under a few hundred monthly searches, the error rate is significant and unpredictable.
GSC gives you your data directly: the exact queries that triggered impressions for your pages in Google Search, with exact click counts. It's not an estimate. It's the real thing, scoped to your domain.
The limitation: GSC only shows data for your site. It can't tell you what your competitors rank for, and it won't surface keywords you've never ranked for (even partially). For those tasks, you need another source. But for everything related to improving your existing rankings and finding adjacent opportunities from your current footprint, GSC is better than any paid tool.
The 5-step GSC-only keyword research workflow
Step 1 — Pull the full query performance report
Go to Performance → Search results. Set the date range to the last 12 months (or as far back as you have data). Enable all four toggles: Total clicks, Total impressions, Average CTR, Average position.
Click + Export and download as a spreadsheet. You want to work in Sheets or Excel rather than in GSC's interface — the interface limits you to 1,000 rows and doesn't let you sort or filter effectively.
In your spreadsheet, you now have every query that generated at least one impression in the past 12 months.
Step 2 — Find opportunity queries (high impressions, low CTR)
Sort by impressions descending. Look for queries where:
- Impressions are significant (relative to your site — could be 500, could be 50,000)
- CTR is below 5%
- Average position is between 4 and 20
These are your highest-leverage opportunities. You're already appearing in search for these terms — Google considers you somewhat relevant — but searchers aren't clicking through. The cause is usually one of three things: your title and meta description don't match the intent (fix them), your position is too low to get clicks (improve the content), or the query is commercial/transactional and you have an informational page (intent mismatch).
Step 3 — Find declining queries
Add a date comparison: set the primary range to the last 90 days and compare to the prior 90-day period. Export both periods and look for queries where clicks are down 20%+ period over period.
Declining queries indicate one of two things: your position dropped (a competitor improved or you have a cannibalization issue), or the query's overall search volume dropped (seasonal or trend-based). For position drops, the fix is content improvement. For volume drops, don't chase them — reallocate effort.
Step 4 — Find "almost ranking" queries
Filter your spreadsheet to queries where average position is between 11 and 20. These are your page-two rankings — you're close but not visible to most searchers. Pick the ones with the most impressions. These are the keywords where a focused content improvement could move you from position 15 to position 8 in a few weeks.
For each "almost ranking" query, open the SERP and read the top 10 results carefully. What's on those pages that isn't on yours? What questions are they answering that you're not? The gap is usually topical coverage, not technical factors.
Step 5 — Surface content gaps from branded + related queries
Filter your query data to queries containing your brand name or your main product's name. These reveal how people are searching for you specifically — often with modifiers you haven't addressed (e.g., "[brand] vs [competitor]", "[brand] for [use case]", "[brand] pricing").
Then look for queries that don't match any of your current pages' primary topics. If you're ranking for "email marketing for nonprofits" but your only email marketing page is a general guide, that's a signal to create a dedicated page for that segment.
Working around GSC's data limitations
The 1,000-row limit in the interface — The GSC interface shows a maximum of 1,000 query rows. For sites with large query footprints, this means you're only seeing the top 1,000 by whichever metric you sorted on. Always export to CSV or Google Sheets, where you get up to 25,000 rows per export.
Sampling beyond 25,000 rows — Even the export is capped at 25,000 rows per query. For very large sites, use the GSC API or segment your reports by page or date range to capture the full query set.
Data aggregation for low-volume queries — GSC groups low-volume queries and shows some as "(other)" in the interface. These are real queries — Google just protects anonymity below a certain threshold. You won't be able to see them individually, but the impressions they generate contribute to your page-level totals.
No competitor data — GSC can't show you what keywords you're not ranking for at all. For true gap analysis against competitors, you need a tool like Ahrefs, Semrush, or even a free tool like Ubersuggest for basic data. But for most sites, the opportunity set visible in GSC alone is larger than what can be addressed in a quarter.
Turning GSC data into a content plan
After running all five steps, you'll have three lists:
- Optimize — High-impression, low-CTR queries where you improve existing pages
- Recover — Declining queries where you diagnose and fix position drops
- Expand — Gaps where a new page would capture queries you're partially appearing for
Prioritize in that order. Optimizing existing content is faster and lower-risk than publishing new pages. Recovery work is time-sensitive. New content takes 3–6 months to show results.
Feed all three lists into your keyword map so each cluster is assigned to one page and nothing is targeted twice.
The full zero-cost keyword research process — combining GSC with autocomplete and People Also Ask — is covered in the keyword research without tools guide.
After you've identified your priority queries and updated page content, run the updated page through RankCrab's keyword density analyzer to verify the primary keyword is present at an appropriate frequency and isn't being diluted by competing terms.