Skip to content
← All topics
05Measurement / Study guide

Measuring SEO: what to report, where the data comes from, and where it stops

A working guide to measuring search: choosing outcomes that fit the business, reading Search Console, Bing Webmaster Tools and analytics properly, tracking AI referrals and visibility, connecting organic search to pipeline, and being honest about what no tool can see.

chapters
15chapters
to read
40 minto read
sources
44sources
questions
9questions

By Mani Bharij · Updated 7 October 2026

Chapter mapHover or tap a point
010203040506070809101112131415

Chapter 012 min

Deciding what SEO should be measured on

Most SEO reporting fails in one of two ways. It reports too little, a traffic chart and some rankings, so leadership cannot tell whether search earns its budget. Or it reports too much, forty metrics on a dashboard that nobody reads, with the one number that matters lost among them. Both come from the same gap: nobody decided what search was supposed to achieve for this business before the tools were configured.

This guide works from that decision outwards. It starts with outcomes by business model and the indicators that lead to them, then goes through each source of data in turn: Google Search Console in depth, Bing Webmaster Tools and Microsoft Clarity, GA4 and the effect of consent rules on it, AI referral traffic, rank tracking and AI visibility tracking. It finishes with attribution and pipeline for B2B, forecasting, reporting to leadership, and how to say what cannot be measured. Each chapter covers what the data means, how to set it up, and how to check it is right. If you are here because traffic fell, the traffic drop tutorial is the faster route; it uses the same reports in a different order.

Diagram

The measurement stack for search

  1. 01

    Outcomes

    What the business counts as a result: revenue, qualified leads, pipeline, subscribers or audience.

    • Ecommerce revenue
    • Qualified enquiries
    • Pipeline and revenue
    • Audience and subscribers
  2. 02

    On-site behaviour

    What visitors from search did once they arrived: landing pages, key events, conversion rates.

    • GA4
    • Matomo
    • Plausible
    • Clarity
  3. 03

    Search engine data

    What happened on the results page before the visit: impressions, clicks, queries, position, citations in AI answers.

    • Search Console
    • Bing Webmaster Tools
  4. 04

    Sampled visibility

    What a results page or an assistant tends to show for chosen keywords and prompts, measured by your own tests or a tool.

    • Rank tracker
    • AI visibility tracker
    • Manual prompt tests
  5. 05

    Business systems

    Whether the lead became a customer, and what they were worth.

    • CRM
    • Ecommerce platform
    • Call tracking
Each layer answers a different question, and no layer can stand in for another. The chapters below take them in this order.
Chapter 01 / 152 min

Deciding what SEO should be measured on

The first question is what the business earns from search, and it has a different answer for each business model. Agree it in writing with whoever signs off the budget, before any dashboard is built. Once the outcome is agreed, every other metric in the report earns its place by explaining that outcome.

Business modelPrimary outcomeSupporting measuresCommon trap
EcommerceRevenue and orders from organic landing sessions, by category and product templateNon-branded clicks to category and product pages, add-to-basket rate, indexed product coverageCrediting SEO with branded revenue that the brand would have earned anyway
Lead generation and servicesQualified enquiries (forms and calls) from organic, and the share that become customersNon-branded clicks to service and location pages, enquiry rate by landing pageCounting every form fill, including spam and job applications, as a lead
Local multi-locationEnquiries, calls and direction requests per branchBusiness Profile actions per location, local pack visibility by branchReporting the total so that failing branches hide behind strong ones
B2B SaaSSignups, demo requests, opportunities and pipeline value from organicNon-branded clicks to product, comparison and integration pagesReporting blog traffic as if it were pipeline
Publisher or mediaEngaged audience, subscribers and ad or affiliate revenueClicks from Search, Discover and News, return visitorsChasing pageviews from queries that do not build an audience
Primary outcomes and supporting measures by business model (practitioner judgement)

Multi-location businesses need one extra rule: report per location as well as in total. A group total can rise while several branches fall, and the branches that fall are the ones that need attention. I have written about why multi-location reporting hides failing branches and how to set the report up so it cannot.

Diagram

How useful each measure is as a headline, by business model

EcommerceLead genB2B SaaSPublisher
Total organic sessionsAn input, and inflated by branded demand.
Non-branded clicksThe clearest sign of SEO work landing, before revenue follows.
Organic key eventsClose to the outcome for lead generation; one step short for SaaS.
Organic revenue or pipelineThe outcome itself where it can be joined up.
Average positionUseful for diagnosis, misleading as a headline.

Detail only Fair headline Best in the row

Practitioner judgement, restating the table above. A high score means the measure is a fair headline for that model; a low score means it belongs in the detail, if at all.

Write the measurement plan down

Checklist0 of 6 done
Chapter 02 / 151 min

Leading and lagging indicators, and how long each takes to move

Outcomes are lagging indicators. Revenue from a page that started ranking this month may not arrive for a quarter, and in B2B the deal may close a year later. Leading indicators move earlier and tell you whether the work is on track before the outcome can. A good report carries both, and labels which is which, so nobody judges a three-month-old project on revenue alone or a three-year-old one on impressions alone.

Diagram

How soon each indicator responds to SEO work

Moves firstMoves last
  • Crawling and indexingCrawling and indexing: 8 percent of the way from Moves first to Moves last.
  • ImpressionsImpressions: 25 percent of the way from Moves first to Moves last.
  • Average position on target queriesAverage position on target queries: 38 percent of the way from Moves first to Moves last.
  • Non-branded clicksNon-branded clicks: 50 percent of the way from Moves first to Moves last.
  • Key events and enquiriesKey events and enquiries: 68 percent of the way from Moves first to Moves last.
  • Revenue and pipelineRevenue and pipeline: 85 percent of the way from Moves first to Moves last.
  • Branded search demandBranded search demand: 95 percent of the way from Moves first to Moves last.

Hover a row for the main thing that goes wrong.

Practitioner judgement, matching the text. Positions on the scale are relative, not timings: the actual lag depends on the site, the market and the sales cycle.

Two cautions about leading indicators. First, impressions can rise for reasons that have nothing to do with value: a page starting to appear in position 60 for thousands of loosely related queries adds impressions and no clicks. Read impressions alongside clicks and position. Second, a leading indicator only earns its place if it has, at some point, been shown to lead to the outcome on this site. If non-branded clicks to the blog have doubled for a year without any effect on enquiries, they are not a leading indicator for this business, however good they look.

Chapter 03 / 152 min

Google Search Console: what the Performance report actually counts

Search Console is the only source of query and impression data from Google Search. Everything else, from rank trackers to keyword tools, estimates what Search Console measures. Its definitions are precise, and most misreadings come from not knowing them.

MetricDefinitionWhat catches people out
ClicksThe number of times a user clicked through to your site from Google Search results.3Clicks from AI Overviews and AI Mode are included in the Web search type alongside ordinary results.4
ImpressionsHow many times your site appeared in Search results.3An impression does not mean the result was seen: a result far down the page still counts.
CTRClicks divided by impressions.3Site-wide CTR mixes branded queries (high CTR) with non-branded ones (low CTR), so it moves when the mix moves.
Average positionThe average position of the topmost result from your site.3An average across every query and impression. One new low-ranking query can pull it down while every important ranking holds.
Search Console Performance report metrics

By property and by page

The chart and the table do not always aggregate the same way. Chart totals are aggregated by property, so two results from your site on the same page count as one impression. In the table, queries, countries, devices and dates are aggregated by property, while pages and search appearance are aggregated by page.3 That is why the clicks in a table grouped by page can add up to more than the chart total. Neither number is wrong; they count different things.

Freshness and time zones

The newest data is preliminary and may still change, and the chart marks it with a dotted line.3 Days are reported in Pacific Time, while GA4 uses the time zone set on the property.5 Do not judge a change on the last two days of data, and do not expect daily figures in the two tools to line up exactly. The API offers an hourly breakdown through the dataState value hourly_all, with partial data, for anyone who needs to watch the first hours after a release.6

Why Search Console clicks and analytics sessions never match

The two tools measure different events. A Search Console click happens on the results page; an analytics session happens on the site. They diverge because the analytics tag may not be installed or firing on every page, visitors can decline tracking, the time zones differ, analytics uses an attribution model where Search Console counts every click, Search Console reports clicks against the canonical URL while analytics records the URL that carried the tag, and Search Console includes files such as PDFs that analytics may not track.5 A steady gap between the two is normal. A gap that changes suddenly usually means something changed in tracking, not in search.

Chapter 04 / 152 min

Filters, regex and the branded split in Search Console

Filtering is where the Performance report earns its keep. A site-wide total hides almost everything; the same data filtered by page group, query type, country and device shows where change actually happened.

Regular expression filters

Query and page filters accept a custom regular expression. The syntax is RE2, matching is partial (an expression matches anywhere in the string unless anchored with ^ or $), and it is not case-sensitive unless you start the expression with (?-i).7 To exclude a pattern, choose Doesn’t match regex. The comparison mode compares two values of one dimension, and only one comparison is possible at a time.7

Search Console regex filters (RE2)
# Query filter: question-style queries
^(how|what|why|when|which|can|does|is|should)\b

# Query filter: commercial modifiers
(price|cost|quote|near me|best|vs|alternative|review)

# Page filter: product pages, excluding parameter URLs
/products/[^?]*$

# Page filter: blog and guides sections together
/(blog|guides)/

# Query filter: branded terms and common misspellings
(hartley|hartly|hartely)\s*(plumbing|heating)?

Search Console also has an experimental assistant that sets filters, comparisons and metrics from a typed request. It is limited to 20 requests per day, cannot sort or export, and may produce filters that do not match what you asked for, so the filters it applies should always be checked.7 It is a quick way to set up a view; it is not a substitute for knowing what the filter does.

Separating branded from non-branded queries

Branded queries (people looking for you by name) and non-branded queries (people looking for what you sell) respond to different things. Branded demand follows advertising, PR, word of mouth and the size of the customer base. Non-branded demand is where SEO work shows. Report them together and a busy marketing quarter can make SEO look better than it is, or a quiet one can hide real progress.

Search Console’s branded queries filter makes the split for you. It uses an AI-assisted system that includes brand names in all languages, typos, and queries about a product or service unique to the site, and Google’s announcement accepts that some queries may be misidentified.8 It is only available for top-level properties,8 it is not available for sites with a low number of impressions, and its history starts from March 2025.9 Where it is not available, or where you want control over the definition, build the split with a regex query filter of your brand terms and switch between Matches regex and Doesn’t match regex.

Prompt /ChatGPT, Claude or similar

Write a branded query regex

I need a regular expression for Search Console’s query filter (RE2 syntax, partial matching, case-insensitive by default) that matches searches for my brand. Brand name: [brand name]. Product or service names that are unique to us: [list]. Founder or key people the public searches for: [names, if any]. Domain: [domain]. Known common misspellings: [list, or say none known]. Words that look like our brand but refer to something else, such as a place or another company: [list]. 1. Suggest likely misspellings, spacing variants and abbreviations people might type. 2. Write one regex that matches all brand variants, and a short list of test strings it should and should not match. 3. Flag any variant that would also match unrelated searches, and suggest how to exclude it. 4. Keep the expression under 200 characters if possible and explain each part in one line.

Fill in the parts in brackets before you send it

CheckPaste the expression into the query filter and read the first few hundred matching and non-matching queries yourself. Assistants guess at misspellings; only your own query list shows which ones people type and which unrelated searches the pattern catches.

Whichever method you use, the branded and non-branded figures will not add up to the total, for the reason in the next chapter. Write the method into the report so the gap is expected.

Chapter 05 / 152 min

Anonymised queries, row limits, the API and BigQuery export

Search Console does not show every query. Queries issued by too few users are anonymised to protect privacy and left out of the query rows, though their clicks and impressions are still counted in the chart totals.10 When any query filter is applied, anonymised queries are omitted from the totals as well, so the sum of “contains brand” and “does not contain brand” will be less than the unfiltered total.10 On a specialist B2B site, where most queries are rare, the anonymised share can be large. Beyond anonymised queries, Search Console stores and shows only the most important rows, so the table is not a complete list.9

Diagram

Where Search Console data goes missing

01

All searches

Every search on Google in which your site appeared. Not available to anyone outside Google.

Step 1 of 6
Each step narrows what you can see. The chart total is the most complete figure; any table, filter or export below it is a subset.

Choosing an export route

RouteLimitBest for
Interface exportUp to 1,000 rows per table10Small sites, daily totals, one-off checks
Search Analytics APIUp to 25,000 rows per request, paged; top rows only, not guaranteed complete.6 A daily cap of 50,000 rows per site per search type was described in 2022.10Medium sites, scripted monthly pulls, spreadsheets
Bulk data export to BigQueryAll performance data except anonymised queries11; collects only from the day it starts12Large sites, long histories, joining with other data
Ways to get Search Console data out

Search Console keeps a limited history in the interface, so a business that wants year-on-year comparisons beyond that window has to store the data itself. The bulk export is the cleanest way. It writes two main tables: searchdata_site_impression, aggregated by property, and searchdata_url_impression, aggregated by URL.13 Each row carries an is_anonymized_query flag, and where it is true the query field is null.13 Position is stored as a sum of zero-based topmost positions, so average position is SUM(sum_top_position) divided by SUM(impressions), plus one.13

BigQuery: monthly branded and non-branded clicks from the bulk export
-- Replace the dataset name and the brand pattern with your own.
SELECT
  FORMAT_DATE('%Y-%m', data_date) AS month,
  CASE
    WHEN is_anonymized_query THEN 'anonymised'
    WHEN REGEXP_CONTAINS(LOWER(query), r'(hartley|hartly)') THEN 'branded'
    ELSE 'non-branded'
  END AS query_type,
  SUM(clicks) AS clicks,
  SUM(impressions) AS impressions,
  ROUND(SUM(sum_top_position) / SUM(impressions) + 1, 1) AS avg_position
FROM `my-project.searchconsole.searchdata_site_impression`
WHERE search_type = 'WEB'
  AND data_date >= DATE_SUB(CURRENT_DATE(), INTERVAL 13 MONTH)
GROUP BY month, query_type
ORDER BY month, query_type;

Keeping anonymised queries as their own row is deliberate. It shows the reader how much of the total cannot be classified, which is more honest than quietly dropping it. If the anonymised share is large, say so in the report and treat the branded split as an estimate.

Chapter 06 / 152 min

AI features in Search Console: the Generative AI performance report

Clicks from AI Overviews and AI Mode are counted in the main Performance report under the Web search type, mixed in with ordinary results.4 There is no filter that separates them. The separate Generative AI performance report covers what the main report cannot: how often links to your site appear inside those features.

  • It reports impressions only, defined as the number of times links to your site were shown to a user in a generative AI feature on Google Search. There is no clicks metric.14
  • It covers AI Overviews and AI Mode, and data can be grouped by page (the final URL linked), country, date and device.14
  • It rolled out to all websites worldwide by 31 August 2026, but a site that has not had enough impressions in these features may see no data, and experiments in Search Labs are not included.14

Read it alongside the main report. If clicks to a set of pages fell while their AI feature impressions rose, the pages are being shown inside AI answers and fewer people are clicking through. If AI feature impressions are flat or absent while clicks fell, the cause is more likely elsewhere. The report cannot tell you which queries triggered the impressions or how prominent the link was, so treat it as a measure of presence.

What independent studies say about clicks when AI Overviews appear

Several studies have tried to measure the effect of AI Overviews on clicks, with different methods and different results. Seer Interactive measured 3,119 informational queries across 42 client organisations from June 2024 to September 2025. Organic CTR on queries with an AI Overview fell from 1.76% to 0.61%, but CTR on queries without one also fell, from 2.74% to 1.62%, so not all of the decline belongs to the Overview. Seer also found that brands cited in an Overview had higher organic CTR than those that were not, and states plainly that it cannot prove the citation causes it.15 Ahrefs compared Search Console data for 300,000 keywords, half with AI Overviews, between December 2023 and December 2025, and found the presence of an Overview correlated with a 58% lower average CTR for the top-ranking page.16 Ahrefs measured a correlation across its sample, and Seer’s data covers informational queries; neither measures the effect on your site.

Use studies like these to judge whether a pattern in your own data is unusual, never to forecast your own numbers. Your own Search Console data, filtered to the affected pages and compared year on year, is the evidence that matters for your site.

Chapter 07 / 152 min

Bing Webmaster Tools, its AI Performance report and Microsoft Clarity

Bing’s share of search is smaller than Google’s in most markets, but Bing Webmaster Tools is worth setting up for two reasons. Its Search Performance report is a useful cross-check when Google traffic moves, and its AI Performance report covers Copilot, which no Google report touches.

Search Performance

The Search Performance report shows clicks, impressions and CTR, with web and chat combined, and keyword and URL detail reported for web only.17 Periods can be compared for clicks, impressions, CTR, keywords and pages.18 In August 2025 Bing extended the history to 24 months and added country and device filters, as reported by PPC Land from the announcement by Bing’s Krishna Madhavan.19 That is a longer history than Search Console’s interface keeps, which makes Bing useful for checking seasonality.

As a rule of thumb, if Bing traffic fell on the same day by a similar share as Google traffic, the cause is more likely on your own site or in demand. If Bing held steady while Google fell, look harder at what changed on Google’s side. That is a heuristic, not a test, and on sites with very little Bing traffic the numbers are too small to compare.

AI Performance

Bing’s AI Performance report, launched in public preview in February 2026, reports citations of your site across Microsoft Copilot, AI-generated summaries in Bing and select partner integrations.20 It shows four things: total citations, the average number of unique pages cited per day, grounding queries (the phrases the AI used when retrieving content it then cited), and citation counts per page.20 Microsoft is clear about the limits. Grounding queries are a sample of overall citation activity, and the report does not indicate ranking, placement or the importance of a page.20

In June 2026 Bing added four features. Intents classify grounding queries into categories such as informational, commercial, navigational and local. Topics group related grounding queries into clusters. Citation share is the percentage of citations attributed to your site out of all citations across all sites for the same grounding query. Compare overlays a previous period on the current one.21 Bing describes citation share as an observational metric, not a ranking system or a competitive scoreboard, and it does not show which other domains were cited or represent traffic share.21

The grounding queries are the most useful part for most sites. They are the closest thing any platform publishes to the searches an assistant runs behind a prompt, and they make good raw material for the prompt sets discussed later in this guide.

Microsoft Clarity

Clarity is Microsoft’s free behaviour analytics tool, best known for session recordings and heatmaps. Two of its features matter here. It classifies sessions from AI platforms into an AIPlatform channel for organic links and a PaidAIPlatform channel for ads, covering ChatGPT, Claude, Copilot, Gemini and Perplexity.22 It counts only visits from the standalone assistant sites, not AI features embedded in search engines or office tools, identifies them from referral patterns, so a hidden source may appear as Direct, and does not reclassify data from before the feature was released.22 Its AI Citations dashboard, introduced in February 2026, draws on Bing Webmaster Tools data to show cited queries, citation rate and cited pages, and Microsoft describes it as built for trend analysis, not precise accounting of individual answers, with very low volumes possibly excluded.23

Chapter 08 / 152 min

Analytics: organic channels, landing pages and key events in GA4

Search engine data stops at the click. Analytics takes over from the landing page: what visitors from search did, and whether they did the things the business counts. GA4 is the default for most sites, so this chapter uses its terms, but the same principles apply to any analytics tool.

How GA4 decides a visit is organic

GA4 assigns every session to a channel using rules. Organic Search matches when the source is on GA4’s list of search sites or the medium is exactly “organic”.24 Direct matches when the source is “(direct)” and the medium is “(not set)” or “(none)”. Referral matches when the medium is “referral”, “app” or “link”. AI Assistant matches when the medium is “ai-assistant”, which GA4 sets automatically when the referrer matches its list of AI assistants.24 Two things follow. Any UTM tag with utm_medium=organic on a link you control will be counted as organic search, so do not use that medium on links from emails or social posts. And the default channel group cannot tell Google organic from Bing organic: switch the dimension to Session source / medium to see each engine.

Landing pages are the unit of SEO analysis

The Landing page report sits under Reports, Engagement, Landing page, and the Landing page dimension is the page path and query string of the first pageview in a session.25 Add a filter for the Organic Search channel, or add Session default channel group as a secondary dimension, and you have organic sessions and key events by the page people entered on. That is the view that connects SEO work, which happens page by page, to outcomes.

Individual URLs rarely carry enough traffic to read on their own. Group landing pages by template or purpose (category, product, service, location, comparison, blog) using URL patterns, and report every metric by group. A migration, a template change or a core update usually affects one group, and a group-level report shows it in a way a site total never will. The SaaS pipeline post shows landing page groups for a SaaS site.

Key events

Key events are events that measure an action particularly important to the success of the business.26 Mark only the events that match the outcome agreed in the measurement plan: a purchase, a qualified form submission, a call click, a demo request. A long list of key events makes every report harder to read and lets a trivial action (a PDF download, a video play) inflate the conversion rate. Track those as ordinary events instead.

Checklist0 of 6 done

Consent rules decide how much of your traffic analytics can see, and the effect on SEO reporting is often larger than any ranking change. This chapter is about measurement, not legal advice. Whether a particular setup is lawful depends on the country, the tool and how it is configured, and the guidance here is for the UK. Other countries, including EU member states, have their own rules, so check with whoever owns data protection.

The UK statistical purposes exception

UK rules on cookies and similar technologies (PECR) changed after the Data (Use and Access) Act 2025, and the ICO’s guidance on storage and access technologies, last updated in April 2026, now includes a statistical purposes exception.27 It allows storage or access without consent where the sole purpose is to collect statistical information about how the service is used with a view to improving it. The organisation must give clear and comprehensive information about the purpose and a simple, free means of objecting, and must stop if someone objects. The information collected can only be shared with others to help improve the service or website.28

The exception has firm limits. The ICO’s guidance says it does not cover tracking or monitoring individual visitors, online advertising, profiling users, or cross-site and cross-device tracking.28 A standard GA4 setup linked to advertising products, or a cookie that stores one visitor’s source so it can be attached to their CRM record, is unlikely to fit within it. Whether your configuration does is a question for whoever owns privacy compliance, not for the SEO report.

Consent mode and modelled data

Where consent is collected, Google’s consent mode lets tags adjust to the visitor’s choice. In the basic implementation, Google tags are blocked until the visitor consents, so nothing is recorded for people who decline. In the advanced implementation, tags load before the banner and send cookieless pings when consent is denied; no analytics cookies are set or read, and GA4 can use the pings for behavioural and conversion modelling to fill gaps.29 Modelled figures are estimates. They can change the shape of a trend, and they are not the same as observed visits.

SetupWhat GA4 records for visitors who declineWhat it means for SEO reporting
No banner, analytics always onEverythingComplete data, and a compliance question to settle before relying on it
Consent mode, basicNothing29Organic sessions undercounted by the share of visitors who decline
Consent mode, advancedCookieless pings, used for modelling29Totals partly modelled; trends smoother, single days less reliable
Banner added or changed mid-yearDepends on the new setupA step change in recorded sessions that has nothing to do with search
How consent setups change what GA4 records

Search Console is unaffected by any of this, because it counts clicks on Google’s side. That makes it the best check: if organic sessions in GA4 fell sharply on the day a consent banner changed while Search Console clicks held steady, the drop is in measurement, not traffic. Annotate the date and say so in the report.

Privacy-focused alternatives

Some businesses use analytics tools designed to collect less, such as Plausible or a self-hosted Matomo, sometimes alongside GA4. Both classify AI assistant traffic as its own channel: Plausible has an AI Assistants channel for sources such as ChatGPT, Claude, Perplexity, Gemini and Copilot,30 and Matomo groups visits from ChatGPT, Claude, Gemini, Copilot, Perplexity and others under AI Assistants.31 Whether either tool, configured your way, can run without consent under UK rules is again a question for your privacy owner. What matters for measurement is that the tool you choose is configured once, documented, and left alone, because every change to tracking breaks the trend line.

Chapter 10 / 152 min

AI referral traffic: how it shows up and what goes missing

Visits from ChatGPT, Perplexity, Copilot, Claude and Gemini reach analytics in several different ways, and only some of them can be labelled as coming from an assistant. Analytics tools identify assistant traffic from the referrer or from tags in the URL. When neither survives the trip to your site, the visit looks like any other direct visit.

Diagram

Where a visit from an AI assistant ends up in analytics

A person clicks a link in an AI answer
  • GA4: AI Assistant channel, or Referral from the assistant’s domain
  • Clarity: AIPlatform channel
  • Plausible and Matomo: AI Assistants
  • Counted as Direct
  • App, privacy setting or referrer policy removed it
  • Cannot be recovered after the fact
  • Google AI Overviews and AI Mode: Google organic
  • Not separable in Search Console or GA4
  • The person read the answer and later searched the brand, called or visited
  • Shows up, if anywhere, as branded search or direct
Restating the text below. Only the first branch can be reported as AI traffic with any confidence.

What the tools see when the referrer survives

GA4’s default channel group now has an AI Assistant channel, assigned when the referrer matches GA4’s list of assistants.24 Seer Interactive’s testing, updated in June 2026 by Jonathan Wehausen, dates the native channel to May 2026 and describes it as a floor: it only catches sessions where the referral information makes it through. In Seer’s tests, ChatGPT visits that carried a tag or referrer appeared with chatgpt.com as the source, Gemini, Perplexity and Claude visits appeared as referrals from their domains, and ChatGPT visits with neither were reported as Direct.32 Clarity, Plausible and Matomo each have their own AI channel, and Matomo’s documentation states the limit directly: AI assistant referrals can only be attributed when referrer information is available.31

Why some of it goes missing

Browsers send no referrer when a page or link uses the no-referrer policy,33 and clicks from emails, documents, messaging apps and mobile apps often arrive without one.30 Assistants used in their mobile apps, links copied from an answer and pasted into a browser, and people who read an answer and type the address themselves all arrive without a referrer. None of that can be recovered later. The size of the gap is unknown and varies by site and audience, so be wary of any “true” AI traffic figure that claims to fill it.

A common rough check is to compare Direct traffic to deep pages, the ones nobody types from memory such as a specific guide or product, with the period before. A rise in Direct sessions landing on deep pages, with no campaign or offline activity to explain it, is consistent with untagged referrals from assistants or apps. It is circumstantial, and I would report it as a possibility, never as AI traffic.

Making AI traffic visible in your own reports

If your GA4 property predates the AI Assistant channel or you need a definition you control, create a custom channel group with an AI channel above Referral, matched on the session source with a regular expression of assistant domains. Place it above Referral, because traffic is included in the first channel whose definition it matches, in the order the channels are listed.34 Keep the list in one place and review it every quarter, because new assistants and domains appear.

GA4 custom channel group: AI assistants (session source matches regex)
^(.*\.)?(chatgpt\.com|chat\.openai\.com|perplexity\.ai|copilot\.microsoft\.com|gemini\.google\.com|claude\.ai|chat\.mistral\.ai|meta\.ai|you\.com)$

Where you control the link, tag it. GA4’s campaign URL guidance is to always set utm_source, utm_medium and utm_campaign, to use one consistent medium per channel, and to keep values lowercase.35 You cannot tag the links an assistant writes, but you can tag links in your own content that assistants are likely to quote, such as a link in a press release or a partner listing, so the visit carries its origin even if the referrer is lost. Do not tag internal links on your own site: a UTM tag on an internal link starts a new session and overwrites the real source.

Prompt /ChatGPT, Claude or similar

Audit how a GA4 property classifies search and AI traffic

I am going to paste exports from a GA4 property: [Session source / medium report for the last 90 days], [Session default channel group report], and [the custom channel group definitions, if any]. The site is [site] and it is a [business type] in [country]. 1. List every source / medium pair that looks like an AI assistant, a search engine or a tagged campaign, and say which channel it currently lands in. 2. Flag any search engine traffic not landing in Organic Search, and any non-search traffic landing in Organic Search (for example utm_medium=organic on email links). 3. Flag AI assistant sources landing in Referral or Direct, and draft a regex for a custom AI channel that would catch them. 4. Point out any (not set) or (direct) volumes that look unusual for deep landing pages. 5. Do not estimate untracked AI traffic. Where the data cannot answer a question, say so.

Fill in the parts in brackets before you send it

CheckCheck every domain the assistant suggests against your own referral list before adding it to a regex, test the custom channel group on past data in an exploration before relying on it, and remember that channel groups classify what was recorded; they cannot recover visits that arrived without a referrer.
Chapter 11 / 153 min

Rank tracking and AI visibility tracking, and their limits

Both kinds of tracking sample what a results page or an assistant shows for chosen queries, from chosen places, at chosen times. Both are useful when read as samples and misleading when read as counts.

Rank tracking

A rank tracker runs a fixed list of keywords from a fixed location and device, usually unpersonalised, and records where your pages appear. Real results vary with the searcher’s location, past search history and search settings,36 so no tracked position is the position every customer saw. Local results vary most of all, often street by street. Results pages also carry more than ten blue links: AI Overviews, map packs, product grids and video carousels push a “position 3” result a long way down the screen on some queries and not others.

Search Console’s average position is a different measure again: the topmost position of your site averaged over every impression, for every searcher, in every location.3 It is real data, but an average across very different situations. The two numbers will disagree, and both are right about what they measure.

  • Use a tracker for diagnosis and for competitor comparison on a fixed keyword set, not as the headline of a report.
  • Track keyword groups that match landing page groups, and read visibility for the group, not individual keyword positions.
  • Record the location, device and date of every tracked result, and keep them constant. A changed location setting looks exactly like a ranking change.
  • Track the features on the page as well as the position, so you can see when an AI Overview or a map pack appeared above you.
  • Check tracked trends against Search Console impressions and clicks for the same queries. When they disagree, believe Search Console about what happened and use the tracker to work out why.

AI visibility tracking

AI visibility trackers send a set of prompts to assistants, repeatedly, and record which brands and sources each answer names. The variation between runs is large. SparkToro’s study, published in January 2026, had 600 volunteers run 12 prompts through ChatGPT, Claude and Google’s AI a combined 2,961 times in November and December 2025. The same list of brands in the same order came up fewer than once in 1,000 runs, and SparkToro concluded that ranking positions in AI answers are not to be trusted, while visibility percentage across dozens to hundreds of prompts run several times is a reasonable metric.37 Microsoft’s Clarity team makes the complementary point: simulated prompts show what an assistant could say, not what it did say to real users, and identical prompts sent minutes apart can produce different citations.38

Diagram

Reading tracking data without over-reading it

  • Rank

    Over-read: We rank third for “emergency plumber”.

    Supported by the data: From a fixed London location on mobile, unpersonalised, the site appeared third on most checks this month.

  • Average position

    Over-read: Average position fell, so rankings got worse.

    Supported by the data: Average position fell because the site began appearing for many new low-ranking queries; positions on the core group held.

  • AI position

    Over-read: We are number two in ChatGPT.

    Supported by the data: We were named in 14 of 40 runs across our fixed prompt set this month, up from 9 of 40.

  • AI reach

    Over-read: Thousands of people saw us in AI answers.

    Supported by the data: Bing reported a number of citations in Copilot and Bing summaries; no source reports how many people read them.

  • Competitors

    Over-read: We beat our competitor in AI.

    Supported by the data: On the same prompts and runs, we were named more often than the competitor; a rise for both suggests the assistant changed, not our work.

Restating the limits above. The left column is how tracking numbers are often reported; the right is a reading the data supports.

The method that holds up is the same whether you use a tool or test by hand: a fixed, documented prompt set built from real customer questions, each prompt run several times under recorded conditions, results reported as the share of runs that name or cite you, per assistant, with branded prompts kept separate and two or three competitors tracked on the same prompts. I have set this out in how to measure visibility in AI search, and the monthly re-test stage of the tutorial on getting recommended by AI assistants compares manual testing with the tools and lists the limits of each. SearchOps, the platform I built for tracking how businesses appear in local and AI search, is one of the tools in that space.

Set the sampled numbers next to first-party data every time: impressions in the Search Console Generative AI performance report, citations and grounding queries in Bing’s AI Performance report, AI referrals in analytics, branded search in Search Console, and enquiries where the customer mentioned an assistant. Add “an AI assistant such as ChatGPT” as an option on any “how did you hear about us” question. Self-reported answers are imperfect, but they capture the person who read an answer and phoned without clicking, which no tracker can.

Chapter 12 / 153 min

Attribution, assisted conversions and CRM pipeline for B2B

Attribution decides which visit gets credit for a conversion. For a shop where people buy on their first or second visit, the choice of model changes little. For B2B, where a buyer might find a comparison page through search in March and book a demo through a branded search in June, the model decides whether SEO gets any credit at all.

Attribution in GA4

GA4’s reporting attribution model is data-driven by default; the first click, linear, time decay and position-based models were removed in November 2023.39 Key events other than first visits are attributed within a lookback window that defaults to 90 days, with 30 and 60 days as options, and acquisition events default to 30 days.39 Changing the reporting model applies to historical data as well as future data, while a change to the lookback window applies only from then on.39 So a report comparing this quarter with last year can shift because someone changed the model, with no change in traffic at all. Note any change in the report.

GA4 also keeps two kinds of source dimension. “First user” dimensions record where a new user first came from and keep that value; “Session” dimensions take a new value with each session.40 For a long sales cycle you want both: first user source shows where search started the relationship, session source shows what brought them back to convert.

Carrying the source into the CRM

Analytics knows a session came from organic search; the CRM does not, unless it is told. The usual method is to store the first-touch and converting-session source, medium and landing page in hidden form fields, so they are saved on the lead record. Some CRMs do part of this automatically. HubSpot keeps an Original Traffic Source property for the first known web source and a Latest Traffic Source property for the most recent, and has an AI Referrals source for platforms such as ChatGPT and Claude.41 Both depend on tracking cookies, so the consent points in the earlier chapter apply here too: expect some leads to arrive with no stored source.

Multi-touch attribution in the CRM goes further. HubSpot’s attribution reports offer models including first interaction, last interaction, linear, U-shaped (40% each to the first interaction and the lead conversion), W-shaped, full path, time decay, J-shaped and inverse J-shaped. Contact create attribution comes with Marketing Hub Professional or Enterprise, while deal create and revenue attribution reports need Enterprise.42 Every model is a rule for sharing credit, chosen by a person. None of them measures what would have happened without the organic visit.

Diagram

An illustrative B2B path from first search to closed deal

123456789
First organic visitLead createdDeal closed
Month 1 to 2

Research by search

The buyer finds a comparison page and two guides through non-branded search.

  • Research by search, month 1 to 2: The buyer finds a comparison page and two guides through non-branded search.
  • Return visits, month 3 to 4: Branded searches, a newsletter click and a visit from an AI assistant answer.
  • Demo and evaluation, month 5 to 6: A demo request through a branded search; sales calls and a trial.
  • Procurement, month 7 to 9: Security review, contract and signature. No website visits recorded.
Invented example to show the lag. A single-touch model credits one of these moments; the CRM should hold the first touch and the converting touch so either view can be reported.

Assisted conversions and what they can and cannot show

An assisted conversion is one where organic search appeared in the path but was not the last touch. Reporting them shows the role search plays early in the buying process, which last-click views erase. The limit is that the path only includes touches the tools recorded: a visit with no consent, a visit on another device, a conversation at an event or a recommendation from a colleague does not appear. A path report is a partial record of how someone came to buy, never the whole of it.

Checklist0 of 6 done

The SaaS pipeline post covers this setup in detail, including the GA4 Measurement Protocol for sending CRM stages back into analytics.

Chapter 13 / 152 min

Forecasting SEO honestly

Leadership will ask what SEO will deliver. A forecast is reasonable to ask for and impossible to make precisely, because the inputs (search demand, competitors, the layout of results pages, algorithm updates) are outside your control. An honest forecast shows its assumptions, gives a range, and is checked against what happened.

A forecast built from your own data

Checklist0 of 6 done

Use your own CTR data where you can. Published CTR curves are averages across sites and query types, and they have been moving. Seer’s data showed organic CTR falling on informational queries with and without AI Overviews between 2024 and 2025,15 which means a curve measured even two years ago will overstate clicks today. Your own Search Console data by position, for your own query types, is closer to the truth, though it will also drift.

Search volume tools and Google Trends help with demand, with caveats. Trends data is a sample of searches, normalised by the total searches in the time and place and scaled from 0 to 100; low-volume terms show as zero, and noise is added for privacy. Google describes it as one data point among others, not a scientific poll.43 Third-party volume estimates are modelled. Use them to compare terms and spot seasonal shape, not as counts of future searches.

Chapter 14 / 151 min

Dashboards and reporting to leadership

A dashboard is for monitoring; a report is for decisions. Most SEO teams need both and confuse them. The dashboard can carry detail for the people who do the work. The report to leadership should fit on a page, open with the outcome, and say what will be done next.

A monthly or quarterly report that holds up

  • The outcome first: organic revenue, qualified enquiries or pipeline, against the same period last year and against the forecast range.
  • Non-branded clicks and impressions from Search Console by landing page group, year on year, with the method for the branded split stated.
  • Organic key events and conversion rate by landing page group from analytics.
  • AI search, reported as what each source measured: Generative AI report impressions, Bing citations, AI referral sessions, and sampled visibility from a fixed prompt set if you run one. Never added together.
  • What changed: work shipped, with dates, and outside events such as core updates, tracking changes, consent changes and seasonal effects.
  • Known gaps and caveats in one short paragraph.
  • Next quarter’s priorities, each tied to the outcome it is meant to move.

Looker Studio (now called Data Studio) has a Search Console connector that reads either the Site Impression table, aggregated by property, or the URL Impression table, aggregated by page; one data source reads one table, so a dashboard needing both needs two data sources.44 For large sites, building the dashboard on the BigQuery export avoids the row limits of the connector and lets you join search data with analytics and CRM data in one place.

Making the report trustworthy

Leadership trusts a report that has been right about bad news. Report falls as clearly as rises, explain them with the same care, and do not change a metric’s definition in a quarter where it would flatter the result. Keep a change log alongside the report: every site release, tracking change, consent change and confirmed algorithm update, with dates. When a number moves, the first question is always “what changed?”, and the log answers it.

Prompt /ChatGPT, Claude or similar

Draft the leadership summary from your report data

Here is this quarter’s SEO data for [business], a [business model] whose agreed SEO outcome is [outcome]. Data: [paste the outcome figures, non-branded clicks by landing page group, key events, AI search figures with their sources, and the change log for the quarter]. Last year’s figures for the same quarter: [paste]. The forecast range we gave: [paste]. Write a one-page summary for the leadership team in plain British English: 1. Open with the outcome against last year and against the forecast range. 2. Explain the two or three biggest movements, linking each to an entry in the change log where one fits, and saying “cause unclear” where none does. 3. Report AI search figures separately by source, without combining them, and say what each one measures. 4. List the known gaps in two or three sentences. 5. End with next quarter’s priorities. Do not invent causes, round figures in our favour, or describe a correlation as a result of our work.

Fill in the parts in brackets before you send it

CheckCheck every figure in the draft against the source data, and every causal sentence against the change log. Assistants tend to supply a tidy explanation for every movement; where the data does not support one, replace it with “cause unclear”.
Chapter 15 / 152 min

What cannot be measured, and how to say so

Some of what search does for a business is beyond any tool, and saying so plainly makes the rest of the report more credible. The list below is the one I would put in front of leadership, in some form, once a year.

What cannot be measuredWhyWhat to report instead
Searches where nobody clicked but the answer influenced themNo click, no visit. Studies suggest a large share of searches end without a click.1Impressions, branded search trend over time, and self-reported “how did you hear about us”
How many people read an AI answer that named youNo platform reports readership; Bing reports citations and Google reports impressions of links.2014Citations and impressions as reported, labelled with what they count
AI referrals that arrive without a referrerThe referrer was stripped and nothing tagged the visit.33Tracked AI referrals as a floor, with the gap stated
Visitors who declined trackingConsent choices remove them from analytics or replace them with modelled data.29Search Console clicks as the consent-free check, and the consent setup named in the report
Rare queriesAnonymised for privacy and omitted from filtered views.10The anonymised share shown as its own row
The counterfactual: what would have happened without SEOThere is no control version of the business.Year-on-year trends, the “do nothing” baseline, and before-and-after comparisons on pages that changed against pages that did not
Offline and cross-device pathsPhone calls, visits and colleague recommendations leave no click trail.Call tracking, CRM source fields, and asking customers
Gaps in SEO measurement and how to handle each

When a number is an estimate, say how it was estimated. When a number is a floor, call it a floor. When nothing measures a thing, say that nothing measures it and describe the evidence you do have. A sentence such as “tracked AI referrals were 340 sessions this quarter; this is a minimum, because visits that lose their referrer are counted as direct” tells the reader exactly how far to trust the figure, and nobody can later accuse the report of overclaiming.

The same discipline applies to experiments. If you change titles on one group of pages and want to know whether it worked, compare the changed pages with a similar group you left alone, over the same period, and judge the difference, not the raw movement. Seasonality, core updates and changes in demand move both groups; only the difference belongs to the change. It is the closest most SEO teams can get to a control, and it is far more convincing than a before-and-after chart of one group.

Questions9 answered

Common questions

01What is the most important SEO metric?
The business outcome search is meant to produce: revenue for a shop, qualified enquiries for a service business, pipeline for B2B SaaS, engaged audience for a publisher. Among search metrics, non-branded clicks from Search Console are usually the clearest sign that SEO work is landing, because branded clicks follow the brand’s wider marketing.
02Why do Search Console clicks and GA4 organic sessions not match?
They measure different events. Search Console counts clicks on Google’s results page; GA4 counts sessions on your site. They diverge because of tag coverage, visitors declining tracking, time zones, attribution, canonical URLs and files such as PDFs.5 A stable gap is normal. A sudden change in the gap usually points to a tracking change.
03Why don’t my branded and non-branded clicks add up to the total?
Anonymised queries are counted in the chart totals but omitted whenever a query filter is applied, so filtered segments add up to less than the whole.10 In the BigQuery export they are flagged with is_anonymized_query, so you can show them as their own row.13
04Can I see clicks from AI Overviews in Search Console?
Not separately. Clicks from AI Overviews and AI Mode are counted in the Web search type of the main Performance report.4 The Generative AI performance report shows impressions of links in those features, by page, country, date and device, but no clicks.14
05How do I track traffic from ChatGPT and other assistants?
GA4 now has an AI Assistant channel for referrers on its list of assistants,24 and Clarity, Plausible and Matomo have their own AI channels. All of them depend on the referrer or a tag surviving, so visits without either are counted as Direct.32 Report tracked AI referrals as a minimum, not a total.
06Does Bing Webmaster Tools show AI citations?
Yes. Its AI Performance report shows citations of your site across Microsoft Copilot, AI summaries in Bing and select partner integrations, with cited pages and a sample of grounding queries.20 Since June 2026 it also classifies grounding queries by intent and topic and shows citation share for each query.21 It does not show ranking or placement within an answer.
07Are AI visibility scores reliable?
As trends across a fixed set of prompts run several times, they are a reasonable measure. As positions or single runs, they are not: SparkToro’s 2026 study found assistants almost never return the same list of brands in the same order.37 Read them alongside first-party data from Search Console, Bing and analytics.
08Do I need consent for analytics cookies in the UK?
It depends on the setup. Since the Data (Use and Access) Act 2025, UK rules include a statistical purposes exception for analytics used only to improve the service, provided users get clear information and a simple way to object.2728 It does not cover tracking individuals, advertising or profiling.28 Whether your configuration qualifies is a question for whoever owns data protection.
09How should I forecast SEO results?
From your own data: a baseline of non-branded clicks with seasonality, a “do nothing” projection, and low, middle and high scenarios for planned work using your own CTR by position and conversion rates. Show every assumption, give a range, and revisit it each quarter. Published CTR curves have been moving as results pages change,15 so they make a poor basis for a forecast.
References44 sources

Sources

  • Platform docs35
  • Regulator2
  • Industry study5
  • Practitioner1
  • Reporting1
  1. 012024 Zero-Click Search Study: For every 1,000 EU Google Searches, only 374 clicks go to the Open Web. In the US, it’s 360.SparkToro (Rand Fishkin, with Datos, July 2024)Industry study
  2. 02Google users are less likely to click on links when an AI summary appears in the resultsPew Research Center (July 2025)Industry study
  3. 03Performance report (Search results)Search Console HelpPlatform docs
  4. 04AI features and your websiteGoogle Search CentralPlatform docs
  5. 05Using Search Console and Google Analytics data for SEOGoogle Search CentralPlatform docs
  6. 06Search Analytics: queryGoogle for DevelopersPlatform docs
  7. 07Performance report (Search results): Advanced filtering and comparisonSearch Console HelpPlatform docs
  8. 08Introducing the branded queries filter in Search ConsoleGoogle Search Central BlogPlatform docs
  9. 09Performance report (Search results): Dimensions and data groupingsSearch Console HelpPlatform docs
  10. 10A deep dive into Search Console performance data filtering and limitsGoogle Search Central BlogPlatform docs
  11. 11About bulk data export of Search Console data to BigQuerySearch Console HelpPlatform docs
  12. 12Start a new bulk data exportSearch Console HelpPlatform docs
  13. 13Table guidelines and referenceSearch Console HelpPlatform docs
  14. 14Generative AI performance report (Search)Search Console HelpPlatform docs
  15. 15AIO Impact on Google CTR: September 2025 UpdateSeer InteractiveIndustry study
  16. 16Update: AI Overviews Reduce Clicks by 58%Ahrefs (Ryan Law, February 2026)Industry study
  17. 17Unlocking insights with the new Bing Webmaster Tools Performance ReportBing Webmaster Blog (September 2023)Platform docs
  18. 18Supercharge Your Search Performance with Bing Webmaster ToolsBing Webmaster Blog (March 2025)Platform docs
  19. 19Microsoft expands Bing Webmaster Tools data capabilities to 24 monthsPPC Land (August 2025)Reporting
  20. 20Introducing AI Performance in Bing Webmaster Tools Public PreviewBing Webmaster Blog (February 2026)Platform docs
  21. 21New AI Visibility Insights in Bing Webmaster Tools: Intents, Topics, Citation Share, CompareBing Search Blog (June 2026)Platform docs
  22. 22AIPlatform and PaidAIPlatformMicrosoft Learn (Clarity)Platform docs
  23. 23Understanding Your Influence in AI Answers with Microsoft ClarityMicrosoft Clarity Blog (February 2026)Platform docs
  24. 24Default channel groupGoogle Analytics HelpPlatform docs
  25. 25[GA4] Landing page reportGoogle Analytics HelpPlatform docs
  26. 26About key eventsGoogle Analytics HelpPlatform docs
  27. 27Guidance on the use of storage and access technologiesInformation Commissioner’s OfficeRegulator
  28. 28What are the exceptions? (Guidance on the use of storage and access technologies)Information Commissioner’s OfficeRegulator
  29. 30Traffic sources, referrers and UTM campaignsPlausible AnalyticsPlatform docs
  30. 31What are AI Assistants in Matomo?MatomoPlatform docs
  31. 32Your AI Traffic Is Hiding: A Practical Guide to Tracking ChatGPT, Claude, and MoreSeer Interactive (Jonathan Wehausen, updated June 2026)Practitioner
  32. 33Referrer-Policy headerMDN Web DocsPlatform docs
  33. 34[GA4] Custom channel groupsGoogle Analytics HelpPlatform docs
  34. 35[GA4] URL builders: Collect campaign data with custom URLsGoogle Analytics HelpPlatform docs
  35. 36Ranking results: how Google Search worksGoogle SearchPlatform docs
  36. 37NEW Research: AIs are highly inconsistent when recommending brands or products; marketers should take care when tracking AI visibilitySparkToro (Rand Fishkin, January 2026)Industry study
  37. 38Measuring AI Visibility: Why Real Data MattersMicrosoft Clarity Blog (March 2026)Platform docs
  38. 39Select attribution settingsGoogle Analytics HelpPlatform docs
  39. 40Scopes of traffic-source dimensionsGoogle Analytics HelpPlatform docs
  40. 41Understand traffic source propertiesHubSpot Knowledge BasePlatform docs
  41. 42Understand attribution reportingHubSpot Knowledge BasePlatform docs
  42. 44Connect to Search ConsoleGoogle Cloud (Data Studio)Platform docs

Questions about any of this?

LinkedIn is the easiest place to reach me. Send a message or connect, and I will reply there.