---
title: "Google Ads Revenue Tracking Without Cookies — Sealmetrics"
description: "Track Google Ads campaigns and keywords in Sealmetrics with ValueTrack UTMs, measured without consent loss. What it does, the templates, and what it does not do."
summary: "Sealmetrics works with Google Ads through the landing page URL. You add a tracking template with ValueTrack parameters at account level, so every click lands with utm_source, utm_medium, utm_campaign set to the campaign ID and utm_term set to the keyword and match type on Search or the placement on Display.…"
canonical_url: "https://sealmetrics.com/integrations/google-ads/"
lang: "en"
author: "Rafa Jiménez"
author_url: "https://sealmetrics.com/authors/rafa-jimenez/"
date_modified: 2026-09-15
content_type: "implementation"
owner: "engineering"
llm_priority: "critical"
last_verified: "2026-09-15"
source: https://sealmetrics.com/integrations/google-ads/
publisher: Sealmetrics
---

Integration · Google Ads

# Google Ads bids on its own number. *Budget needs a neutral one.*

Sealmetrics does not import conversions into Google Ads and does not feed Smart Bidding: the Google tag keeps that job. What it does is read the ValueTrack UTMs of every Google Ads click from the landing page, whether or not the visitor accepts the banner, and credit conversions and revenue to the campaign and keyword that brought the session — the figure to set beside Google's own before moving budget.

ValueTrack UTMs · gclid recognised as paid · no conversion import · no cookies

By [Rafa Jiménez](https://sealmetrics.com/authors/rafa-jimenez.md) · Published 15 September 2026

What each click carries Resolved by Google

01 · **utm_source** · **google**

02 · **utm_medium** · **cpc**

03 · **utm_campaign** · **{Campaignid}**

04 · **utm_term** · **{keyword}\{matchtype} or {placement}**

Read server-side from the landing URL · no cookie · no identifier

Quick answer

Sealmetrics works with Google Ads through the landing page URL. You add a tracking template with ValueTrack parameters at account level, so every click lands with utm_source, utm_medium, utm_campaign set to the campaign ID and utm_term set to the keyword and match type on Search or the placement on Display. Sealmetrics reads those values server-side from the URL on every visit, without cookies, and credits each conversion and its revenue to the campaign and keyword of the session in which it happens, by last click. A visit with UTMs or a gclid is always classified as paid, never as organic. Sealmetrics does not import conversions into Google Ads, does not feed Smart Bidding and does not store ad spend: bidding stays on the Google tag, and spend comes from Google Ads when you calculate ROAS. Parameters lost in a redirect cannot be recovered.

Two views of the same campaign

## Google Ads reports what it credits. *Sealmetrics reports what arrived.*

Neither number is wrong. They answer different questions, and the difference between them is the thing worth reading.

| Question | Google Ads | Sealmetrics | Why they differ |
| --- | --- | --- | --- |
| How many people came? | Clicks | Entrances from Google Ads UTMs or gclid | Clicks that never load the page, redirects that drop parameters, blocked tags |
| How many converted? | Conversions from its conversion actions, including modelled ones | Conversions recorded in sessions that arrived from Google Ads | Modelling for unconsented users, and Google's own attribution window |
| Who gets the credit? | Google Ads interactions only, by its attribution model | The channel of the converting session, across every channel | Google does not see Meta, email or organic; Sealmetrics does not see views |
| Which campaign? | Campaign name | Numeric campaign ID from {Campaignid} | The template passes the ID; map names in your own reporting |
| Which keyword? | Search terms and keywords | Keyword and match type, or placement on Display | Only what the template writes into utm_term |
| What did it cost? | Spend | Not stored | Spend is joined from Google Ads when you calculate ROAS |

UTMs are covered in the glossary under [UTM parameters](https://sealmetrics.com/glossary/utm-parameters.md), and the attribution rule under [last-click attribution](https://sealmetrics.com/glossary/last-click-attribution.md). How to put the two views together per campaign is set out in [how to measure ROAS after cookie consent](https://sealmetrics.com/blog/measure-roas-after-cookie-consent.md).

What bidding on Google's number hides

## Smart Bidding optimises *the view it is given.*

That is its job, and it does it well inside Google Ads. The risk is using the same figure to decide how much Google Ads should get against everything else.

01

### Modelled conversions fill the consent gap

When users do not consent, Google Ads models the conversions it cannot observe, once an account reaches 700 ad clicks over seven days per country and domain grouping. It is Google's estimate of Google's own contribution.

02

### GA4 undercounts paid more than direct

On Incapto's Shopify store, Sealmetrics recorded 37–52% more paid-campaign traffic than GA4, against 11% more direct. A Google Ads review built on GA4 starts from a smaller paid base than the one that exists. The mechanism is explained in [Consent Mode: measured vs modelled](https://sealmetrics.com/blog/consent-mode-measured-vs-modelled.md).

03

### A redirect erases the campaign

Sealmetrics reads UTMs from the URL of the page where the tracker fires. A redirect chain between the ad and the landing page that drops query parameters loses the campaign for good, and the visit falls back to its referrer.

Set it up

## One template. *Every campaign.*

A tracking template at account level applies to every campaign, including new ones, so there is nothing to remember when someone launches a campaign next month.

1. Add the tracking template

   In Google Ads, set a tracking template at account level with utm_medium=cpc, utm_source=google, utm_campaign={Campaignid} and utm_term using {ifsearch:…} for the keyword and match type and {ifcontent:…} for the placement, so one template covers Search and Display.

2. Use the Shopping variant

   For Shopping campaigns, use the same template with utm_term={_term}, where _term is a custom parameter you define in Google Ads. Keep utm_medium=cpc and utm_source=google fixed on every template.

3. Test the resolved URL

   Click Test next to the tracking template. Google shows the final URL a click would produce; check that the UTM parameters are present and filled in, not left as literal {keyword} text.

4. Confirm the hit in Sealmetrics

   Load the resolved URL on your site. The Last hit timestamp in Overview should read seconds ago, and the Sources report should show cpc under Mediums, google under Sources, the campaign ID under Campaigns and the keyword under Terms.

5. Check redirects and parameter names

   Load a live ad URL and look at the address bar after every redirect: the parameters must still be there. If your team uses other names, such as campaign_id, map them in Settings → Sites → UTM Mappings instead of editing the template.

The templates

## Copy, paste, *test.*

As published in the Sealmetrics documentation. Everything in curly braces is a ValueTrack parameter that Google resolves at click time, so Sealmetrics only ever sees the final values.

### Search and Display

One template for both networks: keyword and match type on Search clicks, placement on Display clicks.

```
{lpurl}?utm_medium=cpc&utm_source=google&utm_campaign={Campaignid}&utm_term={ifsearch:{keyword}\{matchtype}}{ifcontent:{placement}}
```

### Shopping

The Shopping variant, with utm_term taken from a custom parameter you define in Google Ads.

```
{lpurl}?utm_medium=cpc&utm_source=google&utm_campaign={Campaignid}&utm_term={_term}
```

### Smoke test

Any URL with the same parameters confirms the setup end to end without waiting for a real click.

```
https://yoursite.com/landing?utm_medium=cpc&utm_source=google&utm_campaign=123456789&utm_term=running+shoes
```

What stays, what changes

## Google Ads keeps bidding. *The budget decision moves.*

Nothing in the Google Ads account is replaced. What changes is which figure decides how much Google Ads gets against the other channels.

### Google tag and GA4

Stay: conversions for bidding.

Smart Bidding keeps learning from the conversions Google Ads receives, behind your consent setup.

[Consent Mode: measured vs modelled](https://sealmetrics.com/blog/consent-mode-measured-vs-modelled.md)

### PPC manager

Keywords and placements on measured revenue.

utm_term carries keyword and match type, or placement, so revenue per keyword can be read without consent loss.

[Campaign revenue attribution](https://sealmetrics.com/use-cases/revenue-attribution.md)

### CMO and finance

Google Ads against every other channel.

One last-click rule for all traffic, checked against real orders, instead of each platform's self-credit.

[One number for marketing and finance](https://sealmetrics.com/use-cases/single-source-of-truth.md)

### Analysts

Spend and revenue in one table.

Join Google Ads spend with Sealmetrics revenue by campaign ID in BigQuery, or ask an AI assistant connected to both.

[BigQuery export](https://sealmetrics.com/integrations/bigquery.md)

Measured on paid media

> “The data Sealmetrics delivers is agnostic, unbiased and neutral. There's no black box.”
>
> Toni Andújar · Digital & Direct Sales Director · Palladium Hotel Group

Palladium rebuilt its Google Display & Video 360 buying on Sealmetrics data, using availability searches as the intent signal. Dreamplace moved Meta and Google budgets first once its measured sales were checked against the CRM.

**+165%**

Display Cost-per-Search improvement after rebuilding the DV360 model

Palladium Hotel Group [Read the case](https://sealmetrics.com/case-studies/palladium-hotel-group.md)

**15–20%**

more sales attributed than the previous tool; Google and Meta were the first budgets moved

Dreamplace Hotels [Read the case](https://sealmetrics.com/case-studies/dreamplace-hotels.md)

**62%**

paid campaigns' share of traffic measured without consent loss, against 50% in GA4

Incapto [Read the case](https://sealmetrics.com/case-studies/incapto.md)

What it does not do

## A measurement layer. *Not a bidding signal.*

These are deliberate. The same pattern for Meta is on [Sealmetrics for Meta Ads](https://sealmetrics.com/integrations/meta-ads.md).

### — No conversion import

Sealmetrics does not send conversions to Google Ads, so Smart Bidding keeps using the conversions from the Google tag or GA4.

### — No spend import

Ad cost is not stored in Sealmetrics. Join it from Google Ads in a spreadsheet, in BigQuery or through an AI assistant connected to both.

### — Campaign IDs, not names

{Campaignid} resolves to Google's numeric ID. Numbers in the Campaigns tab are expected; map them to names in your reporting.

### — A gclid alone is not a campaign

A visit with a gclid is recognised as a Google Ads click, but without UTMs the campaign and keyword are not in the URL to report.

### — No view-through

Last click per session: YouTube and Display views without a click, and earlier sessions, get no credit.

### — Parameters must reach the page

Anything dropped by a redirect before the tracker fires is gone for good.

Common Google Ads questions

## Before you add *the template.*

### How do I track Google Ads campaigns in Sealmetrics?

Add a tracking template at account level in Google Ads: {lpurl}?utm_medium=cpc&utm_source=google&utm_campaign={Campaignid}&utm_term={ifsearch:{keyword}\{matchtype}}{ifcontent:{placement}}. Test it with the Test button, load the resolved URL on your site and check the Sources report for cpc, google, the campaign ID and the keyword.

### Does Sealmetrics import conversions into Google Ads or work with Smart Bidding?

No. Sealmetrics does not send conversions to Google Ads, so it does not feed Smart Bidding. Keep the Google tag or GA4 conversion import for bidding, and use Sealmetrics to measure revenue by campaign and keyword without consent loss when you decide budget between channels.

### Why do my campaigns show as numbers in Sealmetrics?

Because the template passes {Campaignid}, which Google resolves to the campaign's numeric ID rather than its name. It is expected behaviour. The ID is stable when campaigns are renamed, and you can map IDs to names in your own reporting or in BigQuery.

### Why does Google Ads report more clicks than Sealmetrics entrances?

A click is counted before the page loads. Visitors who leave before the tracker fires, redirects that strip the UTMs, and clicks that never reach the site all widen the gap. The Sealmetrics prompt library for Google Ads flags gaps above 20% as worth investigating.

### Does Google Ads auto-tagging with gclid work with Sealmetrics?

Yes. A visit carrying a gclid is recognised as a Google Ads click and never counted as organic, and reloading the same tagged page does not create a second entrance. Keep the UTM template as well, because the gclid alone does not put the campaign and keyword in the URL.

### How do I calculate ROAS with Sealmetrics and Google Ads?

Take spend per campaign from Google Ads and revenue per campaign ID from Sealmetrics for the same dates, timezone and currency, and divide. Compare it with the ROAS Google Ads reports: the platform figure is for bidding, the measured one for budget between channels.

### Should I use a tracking template or the final URL suffix?

The Sealmetrics documentation uses a tracking template that starts with {lpurl}; Google appends its parameters to the landing page, and parallel tracking sends visitors straight to that page. What matters is that the resolved landing URL carries the UTMs, so test whichever field your account uses.

### Does tagging Google Ads clicks require cookie consent for Sealmetrics?

The UTMs travel in the URL and Sealmetrics sets no cookie to read them. The Google Ads tag and remarketing still need consent, and whether your analytics configuration is exempt depends on your national authority's criteria.

Google Ads review

## Add the template. *See revenue by campaign and keyword.*

Book 30 minutes with the founder. We add the tracking template, confirm the first tagged hits and set Sealmetrics revenue beside your Google Ads spend for last month.
