To track keyword rankings accurately, measure the same way every time: a fixed keyword set, a set location and device, and a steady schedule. Use Google Search Console's average position for real-impression data, a rank tracker for controlled snapshots, and judge progress by visibility across keyword groups, not one position for one keyword.
There is no single "true" ranking for a keyword. Google builds results for each search, so the number you see depends on who searched, where, on what device, and what else was on the page. Accurate tracking means controlling those variables, or at least knowing which ones each tool controls. If you want the short definition first, see my rank tracking glossary entry. This guide is the how-to.
Why Do Keyword Rankings Look Different Every Time You Check?
Rankings move between checks for reasons that have nothing to do with your SEO.
Personalization. Google's own explainer on how it ranks results says that when it personalizes results, "you can easily see if your search history or other personal data was a factor," and that you can turn personalization off. If you visit your own site often, your browser is the least neutral place to check your rankings.
Location. Google's example on the same page: someone searching "football" in Chicago will likely see results about American football, while in London the same search may turn up soccer and the Premier League.
Device. Mobile and desktop results pages are laid out differently, and the features that appear above the classic links are not always the same. Track them as separate datasets.
Constant change. Google runs Search on a huge infrastructure and updates its systems continually. In practice, two checks a few minutes apart can return slightly different orders. Small daily wobbles are normal. Before you react to a big swing, check the Google Search Status Dashboard, which reports incidents across crawling, indexing, ranking and serving.
SERP features. A results page is more than ten blue links. Ads, local results, video, image blocks, related questions and AI Overviews all take up space. Search Console counts each of those elements as a single position, so you can hold "position 3" and still sit well below the fold.
AI Overviews and AI Mode. Google's generative features now sit inside Search. An AI Overview can appear at the top of a classic results page, and AI Mode is a separate conversational experience. Search Console counts both in specific ways, covered below.
How Does Search Console Calculate Average Position?
Search Console's help page on impressions, position and clicks defines position as "a relative ranking of the position of your link on Google, where 1 is the topmost position, 2 is the next position, and so on." Position is calculated "from top to bottom on the primary side of the page, then top to bottom on the secondary side."
The key detail is which position gets recorded. The average is based on "the topmost position occupied by a link to your property or page in search results, averaged across all queries." Google's own worked example:
- Query one: your site appears at positions 2, 4 and 6, so it counts as position 2.
- Query two: your site appears at positions 3, 5 and 9, so it counts as position 3.
- Result: the average position is (2 + 3) / 2 = 2.5.
A few rules from that help page explain most of the confusion I see in client accounts:
- Each element on the page "occupies a single position, whether it contains a single link or many different links or child elements." A carousel is one position.
- "An AI Overview occupies a single position in search results, and all links in the AI Overview are assigned that same position."
- "Position in AI Mode follows the same methodology as a Google Search results page." If someone asks a follow-up question in AI Mode, Google treats it as a new query.
- An impression is counted when your item appears on the current page of results, "whether or not the item is scrolled into view." Inside independently scrolling carousels, the item typically has to be scrolled into view or expanded.
Because position is tied to impressions, it only reflects searches where your link actually appeared on a results page someone loaded. A query where you sit far down the results may barely register, while a query where you appear near the top every time dominates the number.
What does the Performance report leave out?
The Performance report defines average position as "the average position of the topmost result from your site." It also warns that you might not see your site when you run a query from the list yourself, because "Search results are specific to the time, place, device, and recent history of the person searching."
Know the report's limits before you build tracking on it:
- Anonymized queries: Google's deep dive on Search Console data explains that queries not issued by more than a few dozen users over two to three months are left out to protect privacy.
- Row limits: the interface shows up to 1,000 rows, and the API has limits of its own.
- History: performance data covers 16 months, so export anything you want to keep longer.
- Freshness: the newest data can be preliminary and might change in the next few hours.
- Aggregation: chart totals can differ from table totals because some views aggregate by property and others by page.
How Should You Read Average Position Without Fooling Yourself?
A sitewide average position is close to meaningless. Publishing a hundred new pages that rank on page four will drag it down even while your important pages climb. Read it narrowly instead:
- Filter to one query or a tight group of queries.
- Filter to one country and one device.
- Compare equal date ranges, week over week or month over month.
- Read position next to impressions and clicks. A better position with fewer impressions often means you lost the broader query and kept a narrower one.
Treat one day as noise and a multi-week trend as the signal.
Should You Use a Rank Tracker or Search Console?
Use both, because they measure different things.
Search Console reports what happened for real searchers: actual impressions and clicks, averaged across every location, device and personalized result that included your link. It is free and covers queries you never thought to track. It cannot show competitors, and it only reports queries where you appeared at all.
A rank tracker runs a simulated, neutral search for each keyword from a location and device you choose, on a schedule, and records where you appear. Widely used suites such as Semrush and Ahrefs include position tracking, and dedicated trackers exist too. A tracker can show competitors, keywords you do not rank for yet, and which SERP features appeared, but it is a snapshot of one simulated search, not an average of real ones.
When the two disagree, that is usually expected. A tracker set to one city and desktop will rarely match a Search Console average that blends every city and device. Line them up by filtering Search Console to the same country and device before comparing, and accept that they will never agree to the decimal.
How Do You Set Location and Device Correctly in a Rank Tracker?
Most tracking errors come from settings, not from the tool. My setup routine:
- Match the market. National brands can track at country level. Local businesses should track at city or ZIP level, set to where customers actually search, not where the office sits.
- Split mobile and desktop. Track each device as its own project or tag so trends never blend.
- Set language and country together. A Spanish query tracked against English settings is a different search.
- Keep settings frozen. Changing the location, device or search engine mid-stream breaks the history. If you must change them, start a new dataset and annotate the date.
- Validate against Search Console. After a few weeks, compare tracker trends with Search Console filtered to the same country and device. Direction should match even if numbers do not.
If you must spot-check by hand, use a private window, remember that location still applies, and treat what you see as one sample.
How Do You Track Local and Map Pack Rankings?
Local results follow different rules. Google's Business Profile help page on local ranking says "Local results are mainly based on relevance, distance, and popularity," and explains that distance is how far each business is from the person searching. If the searcher does not share a location, Google uses what it knows about where they are.
Distance is the reason a single local ranking check misleads. A business can sit first in the map pack for searches near its address and not appear at all a few miles away.
Grid-style local rank tracking solves this. The tool places a grid of points over your service area, a 5 by 5 or 7 by 7 layout with even spacing, for example, and runs the same keyword from each point's coordinates. It records your map pack or Maps position at every point and shows the result as a color-coded map. You see where you are strong, where you fade, and where competitors take over.
To keep grid tracking accurate:
- Keep the center point, grid size and spacing identical between runs.
- Track service keywords ("emergency plumber"), not your brand name, which ranks almost everywhere.
- Run grids on a fixed schedule, and compare run to run rather than point to point.
- Pair grids with the performance data in your Business Profile, since a grid is simulated and the profile reflects real activity.
For everything that moves local rankings once you can measure them, see my local SEO guide.
How Often Should You Check Rankings, and Which Keywords Should You Track?
Weekly tracking is enough for most sites to see trends without chasing daily noise. Switch to daily during a site migration, a large content launch, or after a suspected algorithm update, when catching a drop fast is worth more than calm data. Report monthly, using the weekly data underneath.
What you track matters more than how often. Build keyword sets with a reason behind each one:
- Group by intent. Keep informational, commercial and transactional queries in separate groups so a gain in how-to traffic does not hide a loss on money terms.
- Group by page or topic. Map each keyword to the page meant to rank for it, so you can spot when the wrong page ranks.
- Track branded queries separately. They inflate averages and rarely tell you anything about SEO progress.
- Include terms you do not rank for yet. Your targets belong in the set before they show up in Search Console.
- Mix head and long-tail terms. Head terms are volatile and competitive; long-tail terms often bring the visitors who convert.
Why Measure Share of Voice and Visibility Instead of Single Positions?
One keyword at one position is a fragile number. Visibility scores and share of voice roll a whole keyword set into one trend line that is far harder to fool.
A visibility score weights each ranking by the demand behind the keyword and an estimated click share for the position it holds, then adds the results across the set. Moving from position 9 to position 4 on a high-demand keyword counts for much more than a jump on a term nobody searches. Every tool calculates this differently, so compare scores within one tool, never across tools.
Share of voice divides your visibility by the total visibility of you and a defined group of competitors across the same keyword set. It answers the business question directly: of the attention available for these searches, how much are we getting?
Search Console offers a real-demand version of the same idea. Sum impressions and clicks for each keyword group over time. Rising impressions across a group mean your visibility is growing even when individual positions bounce around. For how to present these metrics to stakeholders, see my framework for SEO client reporting.
How Do You Track Visibility in AI Answers?
This is the least mature part of rank tracking, so be careful with anyone promising precision.
For Google, start with what Google documents. Its page on AI features and your website says sites appearing in AI Overviews and AI Mode are included in Search Console's overall search traffic, reported in the Performance report "within the 'Web' search type." That page does not describe a separate AI Overviews or AI Mode report, so you cannot cleanly separate AI clicks from classic clicks there. Google also says there are "no additional requirements to appear in AI Overviews or AI Mode," so the basics of indexing and helpful content still apply. The same page suggests tracking conversions and time on site in a tool such as Google Analytics.
Beyond Search Console, a practical approach:
- Note AI Overview presence. Some rank trackers record whether an AI Overview appeared for a tracked keyword and whether your domain was among its links. Treat each record as a sample, since AI answers can change from one run to the next.
- Keep a fixed prompt panel. For assistants that publish no ranking data, write a fixed list of the questions your customers ask, run it on a schedule, and log whether you were cited, which URL, and which competitors appeared.
- Repeat runs. Run each prompt more than once per check, because generative answers vary. A citation that shows up in most runs means more than one that showed up once.
I have not seen any reliable public benchmark for "AI ranking" share, so I don't quote one. Measure your own panel, consistently, and watch the trend.
What Does an Accurate Rank Tracking Setup Look Like?
A setup you can trust has these parts:
- A keyword set grouped by intent and mapped to target pages, with branded terms separate.
- Search Console as the record of real performance, read by query, country and device.
- A rank tracker with frozen location, language and device settings, checked weekly.
- Grid tracking for local businesses, with a fixed center, size and spacing.
- Visibility and share of voice as the headline metrics, with single positions as supporting detail.
- A small, repeated prompt panel for AI answers, logged the same way every time.
Then a ranking change in your report reflects something real, not a different searcher, city or screen.