Open Google Analytics right now, navigate to your organic traffic report, and look at the keyword column. Almost every row says “(not provided).”
That’s not a bug. Google has encrypted nearly 100% of organic search queries since September 2013, which means GA4 can’t display the actual words people type before clicking through to your site. The keyword data still exists — Google just stores it in a different tool.
Google Search Console holds the search queries that GA4 refuses to show. Connect the two, and those keywords flow into your analytics reports where they belong. This guide covers the full setup, the reports worth paying attention to, and how to turn raw keyword data into specific SEO improvements.
No plugins. No paid tools. Just the two free platforms Google already provides.
Why Google Analytics Hides Your Keyword Data
Before 2011, Google Analytics showed every organic search query in plain text. You could see that 47 people found your site by searching “best CRM for small teams” and another 12 searched “CRM software free trial.” That level of detail made keyword research almost effortless.
Google started chipping away at it in October 2011, encrypting searches for logged-in users. The percentage of hidden keywords climbed steadily — from 7-14% initially to the mid-90s within two years. By September 2013, all Google searches were encrypted, regardless of whether the user was signed in.
The official reason was privacy. The practical result was that the organic keywords report in Google Analytics became useless overnight.
Google Search Console emerged as the replacement. It captures query-level data that GA4 no longer surfaces — which keywords trigger your pages in search results, how often people click, and where you rank. The tradeoff is that you have to link the two platforms yourself. Google doesn’t do it automatically, and the Search Console data comes with its own constraints (covered later in this guide).
What You Need Before Starting
Three things must be in place:
A Google Analytics 4 property. Universal Analytics stopped processing new data in July 2023. If someone on your team still references UA reports, that data is frozen. All keyword tracking now runs through GA4 exclusively.
A verified Google Search Console property. Your domain needs to be verified in GSC. The fastest route is DNS verification — add a TXT record through your registrar (Cloudflare, Namecheap, GoDaddy, wherever your DNS lives). Google generates the exact TXT value during setup. HTML file upload and meta tag verification also work, though they can break during site redesigns.
One Google account with access to both. The account you use in GA4 must also have at least full-user permissions in Search Console for the same domain. If your analytics lead and your SEO specialist use separate Google accounts, sort out the permissions first. The linking wizard won’t show Search Console properties you don’t have access to.
Setup takes roughly five minutes once all three prerequisites are met. If you still need to verify in Search Console, DNS propagation adds another 10-15 minutes.
Step 1: Link Google Search Console to GA4
In Google Analytics, click the Admin gear icon (bottom-left). Under the Property column, scroll to Product links and select Search Console links.
Hit the blue Link button. GA4 walks you through three screens:
Screen 1 — Choose your Search Console property. Click “Choose accounts.” Every Search Console property tied to your Google account appears here. Pick the one matching your GA4 site. If nothing shows up, you’re either signed into the wrong Google account or your account lacks sufficient GSC permissions.
Screen 2 — Select your web stream. Choose the GA4 data stream for your site. Unless you’ve set up multiple streams (rare for most businesses), there’s only one option.
Screen 3 — Review and submit. Double-check both selections. Click Submit.
The link activates immediately, but data takes 24-48 hours to populate in your reports. Don’t panic if the Queries report is empty on day one.
Worth noting: each GA4 web stream connects to exactly one Search Console property, and vice versa. Managing five websites means creating five separate links. There’s no bulk option.
Step 2: Enable the Search Console Reports in GA4
Here’s where most people get stuck. Linking the accounts doesn’t automatically surface the reports in GA4’s navigation. You have to publish them manually.
Go to Reports in the left sidebar. At the bottom of the report list, click the Library icon (looks like a folder). Find the Search Console collection — it will say “unpublished” next to it.
Click the three-dot menu on the Search Console collection and hit Publish. Two reports appear under Acquisition > Search Console:
- Queries — Your keyword report. Shows which search terms generate impressions and clicks for your site.
- Google organic search traffic — Shows which of your pages receive organic traffic and the associated Search Console metrics.
The Queries report is the one that matters here.
Step 3: Read the Queries Report
Navigate to Reports > Acquisition > Search Console > Queries. The table has five columns, and each one tells you something different:
Organic Google Search query — The keyword someone actually typed. This is the data that shows up as “(not provided)” in GA4’s native organic report.
Impressions — The number of times your site appeared in Google results for that query. An impression counts when the search results page loads, even if the user never scrolls down far enough to see your listing.
Clicks — How many times someone clicked through from Google to your site for that query.
Click-through rate (CTR) — Clicks divided by impressions. This measures how well your search listing converts visibility into visits. Position 1 results average significantly higher CTRs than the overall 2-3% average across all positions.
Average position — Your site’s average ranking for that query, calculated across all impressions. Position 1 is the top spot. Remember that this number fluctuates — your rank shifts throughout the day, across devices, and between geographic locations. The “average” can mask meaningful variation.
Sorting the table by different columns unlocks different insights. Sort by impressions to find your highest-visibility keywords. Sort by clicks to see what actually drives traffic. Sort by position and look for keywords ranked 8-20 — those are the terms sitting just outside the high-traffic positions, where a small ranking improvement can produce a disproportionate jump in clicks.
Step 4: Filter and Segment Your Keyword Data
The default report dumps every keyword for your entire site into one table. That’s the overview. Real analysis starts when you slice it.
Add a landing page dimension. Click the “+” icon above the data table and add “Landing page” as a secondary dimension. Now each keyword row shows which specific page it drives traffic to. This is how you check whether Google is matching the right content to the right queries — and where it’s sending traffic to pages you didn’t intend.
Compare date ranges. Use the date picker to compare two periods side by side. A keyword with growing impressions but flat clicks signals a CTR problem (your listing isn’t compelling enough). A keyword with dropping impressions might mean a ranking decline or seasonal dip.
Segment by device and country. Adding these secondary dimensions reveals patterns hidden in the aggregate data. A keyword ranking position 4 on desktop but position 14 on mobile points to a mobile experience issue — page speed, layout shifts, or content that doesn’t render well on smaller screens.
Filter by search type. The report defaults to web search. Switch to image search or video search if your content includes visual assets. Some sites generate substantial traffic from Google Images without realizing it.
GA4’s interface has limits for deeper analysis. For anything beyond basic sorting and filtering, export to CSV (click the share icon, then “Download file”) and work in a spreadsheet or connect to Looker Studio for more flexible reporting.
Step 5: Find Your Quick-Win Keywords
Keyword data without a framework for action is just a long spreadsheet. These three filters surface the opportunities with the highest return for the least effort.
High impressions, low CTR (below 2%). These keywords have visibility — Google is already showing your page. But searchers scroll past your listing. The fix almost always lives in your title tag and meta description. Consider a keyword pulling 3,000 impressions per month at 0.8% CTR: that’s 24 clicks. Rewriting the title to better match the search intent and pushing CTR to 3% turns it into 90 clicks. Same content, same ranking, nearly four times the traffic.
Position 8-20 keywords. The click distribution in Google search results is brutally steep. Position 1 captures the lion’s share, and clicks drop off sharply after position 3. A keyword ranked 11th gets a fraction of the clicks it would get at position 6. These “striking distance” keywords are your best candidates for content updates — add depth to the existing page, strengthen internal links pointing to it, and build a few relevant backlinks. The ranking lift from 11 to 6 is often achievable; the traffic lift is dramatic.
High CTR, low impressions. The inverse problem. Searchers who see your listing click it, which means your page matches the intent well. It just doesn’t rank high enough to be seen by many people. These keywords deserve content expansion. Add sections that cover related subtopics, include the entities Google associates with the query, and make the page the most thorough answer available. More depth tends to earn more impressions over time.
Export the Queries report, tag each keyword by opportunity type, and you’ll have a prioritized action list grounded in actual search data rather than assumptions.
What Search Console Data Won’t Tell You
Search Console is the best free keyword data source available. It’s also imperfect in ways that matter for analysis.
Low-volume queries are hidden. Google suppresses queries searched by only a handful of users over a two-to-three month period. These anonymized queries never appear in the interface or API. For niche sites where long-tail queries drive a meaningful share of traffic, this blind spot is significant.
Data disappears after 16 months. Search Console retains performance data for 16 months and then permanently deletes it. If you want year-over-year keyword trends beyond that window, schedule recurring exports to BigQuery, a spreadsheet, or a third-party tool before the data expires.
Numbers are sampled, not exact. Google applies sampling to Search Console data. Click totals in the Queries table may not match the chart totals for the same date range. The discrepancy is usually small enough to ignore for strategic decisions, but don’t treat these numbers as accounting-grade figures.
Only Google is covered. Bing, DuckDuckGo, Yahoo — none of them report through Search Console. Bing Webmaster Tools provides similar query data for Microsoft’s search engine if your audience skews toward non-Google search.
Exports cap at 1,000 rows. The UI limits CSV exports to 1,000 keyword rows. The Search Console API raises that ceiling to 50,000 rows per request. Sites ranking for tens of thousands of keywords will need multiple API calls segmented by date range or search type. For regex-level filtering — isolating keywords that match specific patterns, like all queries containing “how to” — the API or a connected tool is the better path.
Using Keyword Data to Build Stronger Internal Links
Knowing your keywords is the starting point. Connecting that data to your site architecture is where the compounding returns begin.
Once you know which pages rank for which terms, you can build internal links with precision instead of guesswork. A blog post ranking for “GA4 event tracking setup” should receive internal links from related content using that phrase — or close semantic variations — as anchor text. A product page generating high impressions for “automated link building” should link to supporting content that reinforces that topic cluster.
The impact isn’t theoretical. Research shows that well-optimized anchor text can drive up to 35% higher click-through rates compared to generic “click here” phrases. Google also assigns more weight to links in the main body of content than those tucked into navigation bars or footers.
The challenge is scale. Auditing every page for internal linking opportunities — matching keywords to target pages, ensuring contextual relevance, avoiding over-optimized anchor ratios — is tedious work that multiplies with every new article you publish.
Linkter handles this automatically. It scans your content library, identifies linking opportunities based on keyword relevance, and suggests contextual placements aligned with your actual search performance. Instead of a manual spreadsheet mapping keywords to pages, you get AI-powered recommendations that evolve as your site grows. For teams publishing consistently, that’s the gap between accidental internal links and a deliberate linking strategy built on real keyword data.
Three More Ways to Uncover Keyword Data
The GSC integration covers your primary keyword tracking. These supplementary methods catch what it misses.
Mine Your Site Search Reports
GA4 tracks what visitors search for on your website — not just how they found it. This reveals a different kind of keyword: the terms your existing audience uses when your navigation or content doesn’t give them what they need.
Check it under Reports > Engagement > Events and look for the view_search_results event. Click into the event details to see the actual search terms. GA4’s Enhanced Measurement enables site search tracking by default for standard URL parameters like ?s= and ?q=.
If visitors keep searching your site for “API documentation” and you don’t have a dedicated API docs page, that’s a content gap confirmed by user behavior. These internal search terms often become your highest-converting content ideas because they come from people already engaged with your site.
Cross-Reference Google Ads Query Data
Running paid search alongside organic? Link Google Ads to GA4 and check the Search terms report under Insights and reports > Search terms. Google Ads shows the exact queries triggering your ads — fully visible, no encryption.
The play here is finding paid queries with strong conversion rates where you don’t rank organically. Those keywords justify new content because you already have proof they drive business outcomes. Why keep paying for clicks you could earn?
Layer in Volume Data with Keyword Planner
Google Keyword Planner (free inside Google Ads, no active campaigns required) adds the volume dimension that Search Console lacks. GSC tells you which keywords bring traffic to your site. Keyword Planner tells you how large the total search pool is for each term.
Google Trends adds temporal context — whether a keyword is growing, seasonal, or in decline. Neither tool replaces GSC, but together they give you the full picture: your current performance (GSC), total opportunity size (Keyword Planner), and trajectory (Trends).
Troubleshooting Common Setup Issues
Linked accounts but no data showing up. Standard processing time is 24-48 hours. If data still hasn’t appeared after two full days, verify that the Search Console property and GA4 web stream point to the exact same domain. A common mismatch: linking the www.example.com GSC property to a GA4 stream tracking example.com (or vice versa).
Search Console reports missing from navigation. You linked successfully but forgot to publish the reports. Navigate to Reports > Library, find the Search Console collection marked “unpublished,” and publish it. Nearly every “I can’t find my keyword data” complaint traces back to this step.
Numbers don’t match between GSC and GA4. They won’t, and that’s expected. The two platforms use different processing pipelines, attribution windows, and sampling methodologies. Pick one as your source of truth for any given analysis rather than trying to reconcile the exact numbers.
Only seeing “(not provided)” keywords. You’re looking at GA4’s native organic keywords dimension, not the Search Console report. Go to Reports > Acquisition > Search Console > Queries. That’s the report that displays actual search terms.
Search Console property doesn’t appear during linking. Your Google account needs owner or full-user access in Search Console for that property. Restricted users and read-only accounts can’t establish the link. Check your permission level under Settings > Users and permissions in Search Console.
Putting It All Together
Organic search still accounts for roughly half of all website traffic across the web. The keywords driving that traffic to your site aren’t hidden — they’re just one integration away from showing up in your analytics.
The technical setup is the easy part: link Search Console, publish the reports, wait a day. What separates sites that grow organic traffic from those that stagnate is what happens next. Review the Queries report monthly. Tag your quick-win keywords. Fix the title tags on high-impression, low-CTR pages. Strengthen internal links around the terms that already drive traffic. Fill the content gaps your keyword data makes obvious.
Keywords shift. New queries emerge as your content library grows. Seasonal patterns spike and recede. Competitors publish new pages that reshape the SERP landscape. Treat your keyword data as a living input to your content strategy — not a one-time report you pull and file away — and the traffic compounds from there.