Google Ads reports clicks, but GA4 shows fewer sessions from those campaigns. Before you assume the traffic is wasted, separate three questions: are you comparing the right figures, are visitors reaching a working page, and is Analytics recognising where they came from?
A difference alone cannot tell you which problem you have. Start with one campaign and its landing pages, find a repeatable cause, then decide what needs changing.
Why clicks and sessions will not match exactly
A click records an interaction with an advert. A session groups activity on your website. Someone can click your advert more than once during the same session, so two clicks do not necessarily mean two visits. Google explains this distinction in its clicks and sessions troubleshooting guidance.
GA4 starts a session when someone views a page with no session already active. Its default timeout is 30 minutes of inactivity, rather than 30 minutes after the first click. That matters when interpreting repeat visits; see Google’s session definition.
There is no useful target of making these totals identical. We suggest investigating a sudden change, a gap concentrated on particular landing pages, or a repeatable failure in a controlled test. Those give you something specific to repair.
Compare the same activity and reporting period
Choose a completed date range, preferably ending several days ago. Google’s current data freshness guidance says processing can take 24–48 hours and figures may change during that time. A comparison between today’s Ads total and a partially processed GA4 report is a poor basis for a spending decision.
Use this starting checklist:
- Select the correct Google Ads account and GA4 property, then record their reporting time zones.
- Choose the same dates and campaign scope in both reports.
- Start with Search campaigns sending people to your website. Keep other campaign types and destinations separate.
- In GA4, compare Sessions rather than Users, Views or Engaged sessions.
- Record filters and comparisons so someone else can reproduce the result.
Use session-based acquisition dimensions for this investigation. Session source / medium describes where a session came from; First user source / medium describes how that user was first acquired. Google’s guide to traffic-source scopes explains why these answer different questions.
Review the relevant session campaign information alongside source and medium. A total for all google / cpc traffic is not a comparison with one selected Ads campaign.
Decide whether visits are missing or attribution is missing
Look at the pattern before touching the implementation. We suggest three working hypotheses:
- The page or measurement fails: investigate landing-page access and the GA4 tag.
- Sessions exist, but campaign details are missing or wrong: investigate account linking and campaign identifiers.
- The difference follows consent choices or browser behaviour: check the intended measurement behaviour and whether it is implemented correctly.
These are investigation routes, not diagnoses. A rise in Direct or Organic traffic on the same day as a paid-traffic drop is a clue, not proof that those visits belong to Google Ads. Avoid reallocating whole channels in a spreadsheet to make the totals look right.
Check the account link without confusing it with collection
In GA4, review Admin → Product links → Google Ads links. Confirm the relevant advertising account is linked to this property. Google’s account-linking documentation explains that unlinked, auto-tagged traffic can still appear as google / cpc, while detailed Google Ads data is not fully available.
That distinction prevents a common wrong turn: a missing campaign name does not, by itself, prove nobody reached the site. Equally, linking accounts does not repair a missing website tag.
Test the landing URL and its campaign identifiers
Copy the actual landing URL from the affected advert or asset. Open it directly on a phone and desktop, without paying for repeated clicks on your own adverts. Follow any redirects and check that the intended service or product page remains usable.
Google recommends auto-tagging for detailed Ads data. It adds a Google Click Identifier, usually seen as gclid, to the landing URL. Its final-URL tagging guidance also describes testing whether your site accepts URL parameters.
For a basic technical check, append ?gclid=TestOnly123 to a URL with no existing query string, or &gclid=TestOnly123 when one already exists. Place it before any # fragment. Ask your developer to check the redirect chain and what reaches the page where the tag runs. This is a parameter-handling test; a made-up identifier cannot prove real campaign attribution.
Check the HTTPS redirect, preferred hostname, old landing-page redirects and any intermediary tracking service. A working redirect can still lose useful measurement information. Ask for the failing hop and its corrected behaviour, rather than a general assurance that tracking is installed.
Do not check GCLID alone
Google also uses aggregate identifiers, including gbraid and gad_* parameters, when standard identifiers cannot provide campaign information. Its current aggregate identifier guidance says these should not be removed or blocked, including during redirects.
Where GA4 shows a campaign-data warning, open it and inspect the affected URLs. Google’s parameter-stripping diagnostic documentation explains that losing these identifiers can produce inaccurate attribution, including “(not set)” or “organic” values. Fix the implementation that removes automatically supplied parameters; do not invent replacement identifiers.
If the landing page itself needs work, our guide to matching Google Ads clicks to useful landing pages covers the customer journey after arrival.
Test consent behaviour on a fresh visit
A cookie banner can explain some missing measurement, but it can also conceal an implementation fault. Test a fresh browser session with no saved preference, then repeat separately after rejecting and accepting the relevant optional categories.
Google’s consent mode overview distinguishes basic implementation, which blocks Google tags until consent, from advanced implementation, which can send cookieless measurements with consent denied. A rejected visit does not therefore behave identically across all websites.
Document which implementation your site actually uses. Do not change it simply to shrink a reporting gap. The technical question is whether tags follow the visitor’s choices and your agreed configuration.
Ask your developer to use Google’s Tag Assistant consent checks to inspect the default state, subsequent updates, and tags that fired or were blocked. Test acceptance on the landing page before navigating elsewhere. A screenshot showing the banner is not evidence that the underlying states update correctly.
Also record whether the problem reproduces only with a particular browser or extension. Google lists browser restrictions and people leaving before tracking loads among the reasons clicks can outnumber measured sessions in its discrepancy guidance. Keep those findings separate from a reproducible site fault.
Check the exact landing pages for missing tags
Testing only the homepage can miss the page that receives paid traffic. Make a short list of affected landing URLs and test each one, including different page templates and mobile routes.
Under Google tag settings, review Tag quality → View diagnostics. Google’s Tag Diagnostics guidance covers untagged landing pages, stopped data collection and resources blocked by a Content Security Policy. Treat these as leads to investigate, then reproduce the issue on the relevant page.
For each test, ask for evidence of the intended GA4 measurement ID, the consent state and the relevant measurement request. If the page loads but Analytics does not receive its event, inspect that handover before adding another integration. Request a focused repair with one person responsible for checking the result.
Prove the repair before changing spend
Keep a small verification record containing the campaign, landing URL, device, browser, consent choice, observed fault and repair date. Repeat the same checks after the change:
- The landing page opens and the customer can use its main action.
- Automatically supplied campaign parameters survive the relevant redirects.
- Measurement follows the chosen consent state and reaches the intended property when expected.
- Any diagnostic warning has been rechecked after processing time.
- Campaign sessions are reviewed over a comparable completed period.
A corrected test proves that route works under the tested conditions. It does not promise that every historical session will be recovered or that future clicks and sessions will match.
If the destination or enquiry journey is broken, address that affected route promptly and review its spend while it is repaired. If the journey works and the discrepancy reflects metric definitions or intended consent behaviour, changing bids will not explain the gap.
Finally, judge the campaign alongside genuine enquiries and sales. Our guide to connecting conversion reporting with qualified enquiries explains how to build that commercial view.
If you need help tracing the gap between Google Ads, your landing pages and GA4, talk to BuzzBoost. We can help identify what is failing, agree a focused fix and check the journey afterwards.
Featured image: AI-generated editorial artwork, not a photograph of a real BuzzBoost office, client or result.


