Paid looks worse than it is
At Incapto, GA4 put paid campaigns at 50% of traffic; measured without consent loss they were 62%. The range on paid visits was 37% to 52% more than GA4, because GA4 groups part of the spend under Cross-network.
Use case · Campaign revenue attribution
Ad platforms grade their own ads, and GA4 only sees the visitors who accept the banner — a loss that hits paid traffic harder than most. Sealmetrics attributes every euro of revenue to channel, campaign and creative on every session it records, whether or not the visitor accepts cookies, so budget moves on what actually sold.
Channel · campaign · creative · last click per session · no cookies · EU-hosted in Dublin
Quick answer
Revenue attribution without cookies assigns each order's revenue to the channel, campaign and creative of the session in which it happened, without storing anything on the visitor's device. It answers which campaigns actually sold when ad platforms grade their own ads and GA4 misses the visitors who reject the banner — a loss that hits paid traffic harder: on Incapto's Shopify store, Sealmetrics saw 37% to 52% more paid-campaign traffic than GA4. Sealmetrics reads the UTM parameters and ad click IDs in the landing URL, credits each conversion to the most recent source of its session, and rolls revenue up by source, medium, campaign, content and term. ROAS comes from joining that revenue with each platform's spend. The model is last click per session: it does not measure view-through or credit earlier visits, which belong in a marketing-mix model.
Why every report disagrees
Each report is internally consistent. They disagree because they credit different things, see different visitors and are graded by different people.
| Report | How it credits the sale | Why it misleads the budget | Use it for |
|---|---|---|---|
| Meta Ads and Google Ads | To its own ad, inside its own attribution window; can include modelled and view-through conversions | Each platform grades itself, so the same sale can be claimed twice | Bidding and creative tests inside the platform |
| GA4 with Consent Mode | Across the visits it recorded: consented, unblocked visitors, plus estimates | Channels that bring new audiences lose more visits to the banner, so paid and social look weaker than they are | Trends on the consented share |
| Order system or CRM | The sale itself, with whatever source reached checkout | Exact totals, but no dependable channel behind each order | Revenue truth |
| Sealmetrics | To the last click of the session in which the order happened, on every recorded session | No earlier visits and no view-through | Channel and campaign budget decisions |
The model is defined under last-click attribution and revenue attribution; why a longer attribution window collapses without cookies is explained there too. When the disagreement reaches finance, the problem becomes one number for marketing and finance.
What it costs not to know
When attribution runs on the consented share of traffic, the error is not noise. It has a direction, and it points away from the campaigns that bring new customers.
At Incapto, GA4 put paid campaigns at 50% of traffic; measured without consent loss they were 62%. The range on paid visits was 37% to 52% more than GA4, because GA4 groups part of the spend under Cross-network.
Dreamplace Hotels attributes 15–20% more sales with Sealmetrics than with its previous tool, and used that view to shift budget toward a channel it was not seeing before. Meta and Google were the first budgets to move.
Palladium Hotel Group could see platform activity but could not compare partners, placements and audiences on equal terms. Attributing each visit and judging the mix on cost per availability search improved Display Cost-per-Search by 165%.
The setup
Without cookies, the landing URL is the only place attribution can come from, so the setup is mostly about what that URL carries. Event and purchase instrumentation is covered in conversion tracking without cookies, and UTM parameters are defined in the glossary.
Add utm_source, utm_medium and utm_campaign to every destination URL, and utm_content for the creative. In Google Ads, a ValueTrack tracking template at account level applies it to every campaign; in Meta Ads, add the UTMs to each ad's URL parameters.
If an agency or email tool uses names like campaign_id, UTM Mapping copies them into the standard UTMs when the visit arrives. It applies to new traffic only, so set it up before the campaign launches.
Payment gateways are recognised automatically. Register booking engines, SSO or an external checkout as passthrough referrers, so the return trip keeps the original source instead of starting a new referral.
Send the purchase on confirmation with its revenue. Sealmetrics counts what fires and does not deduplicate, so a reloaded thank-you page counts twice; on Shopify the purchase comes from the orders/create webhook.
Revenue by campaign is only half of ROAS. Join it with Google Ads or Meta Ads cost in BigQuery on the campaign value you tagged, or ask an assistant connected to both the Sealmetrics MCP server and the ad platform's.
Who uses it
Platforms keep optimising. The decision about where the next euro goes moves to a report none of them produced.
Know which campaign and creative actually sold.
Revenue by source, medium, campaign, content and term on every recorded session, including visitors who rejected cookies.
Conversion trackingProve results on a number the client did not have to take on trust.
The platforms still bid; the client judges the result on neutral, session-level attribution the agency did not produce.
Analytics for agenciesMove budget between channels without a fight.
A channel mix measured without consent loss, so paid, social and organic are compared on the same base.
Analytics for CMOsBuild ROAS and MMM inputs on full-resolution data.
BigQuery connector, REST API and MCP server over the same aggregate revenue the dashboard shows.
IntegrationsMeasured in practice
“The value is in optimising budget and investment. You shift toward a channel or strategy you were not seeing before.”
Eduardo Martin · Analytics & Campaigns · Dreamplace Hotels
Dreamplace Hotels runs Sealmetrics as an independent layer, compares attributed sales with its CRM total and uses the remaining gap as a quality signal. The difference is not a data-quality curiosity: it changes where the paid-media budget goes.
more sales attributed than with the previous tool, reconciled against the CRM
Display Cost-per-Search after rebalancing partners, placements and audiences
gap in paid campaigns' share of traffic between GA4 (50%) and Sealmetrics (62%)
What it does not measure
Multi-touch models need to know that two visits were the same person, which needs an identifier and brings back the consent loss. Sealmetrics does not build one. Earlier influence belongs in a different attribution model built on aggregate spend and revenue.
Credit is not split across a person's visits, because no visit is linked to a person. That is the trade-off that removes the identifier.
Impressions that did not produce a click are not measured. View-through lives in the ad platform or in a marketing-mix model.
If a customer first arrives from Google Ads and buys later through a newsletter, the newsletter gets the sale. There is no lookback window across sessions.
Untagged Meta traffic blends with organic, and redirects that strip parameters lose the campaign for good.
Sealmetrics does not send conversions to Google Ads or Meta for automated bidding. Keep the platform's own consent-gated conversion setup for that.
The Incapto comparison measured traffic, orders and channel mix, not return on ad spend. Your ROAS comes from your own spend data.
Common questions
Sealmetrics reads the UTM parameters and ad click IDs in the landing URL when a session starts, and credits any conversion in that session to its most recent source. No identifier is stored on the device, so the visit is measured whether or not the visitor accepts cookies. Revenue then rolls up by source, medium, campaign, content and term.
Yes, as long as the links carry the parameters. Revenue rolls up by utm_source, utm_medium, utm_campaign, utm_term and utm_content, and utm_content is where the creative goes. In Google Ads a ValueTrack tracking template adds campaign and keyword automatically; in Meta Ads the UTMs go in each ad's URL parameters.
The platforms credit conversions to their own ads inside their own attribution windows, and can include modelled and view-through conversions. GA4 only records visitors who accept the banner, and paid traffic loses more to it: on Incapto's Shopify store, Sealmetrics saw 37% to 52% more paid-campaign traffic than GA4.
Multi-touch needs to link visits to the same person across sessions, which needs a cookie, a fingerprint or a stitched ID, and that identifier brings back the consent requirement and the traffic lost to the banner. Last click within a session needs no identifier, so it can be applied to each session Sealmetrics records. It does not measure earlier influence.
Sealmetrics does not measure view-through, because linking an ad impression to a later visit needs a per-person identifier. View-through belongs in the ad platform or in a marketing-mix model built on aggregate spend and revenue, where Sealmetrics can provide the revenue side.
The sale goes to the source of the session in which it happens. If the customer first came from Google Ads and returned through direct the next day, direct gets the credit. Sessions close after about two hours of inactivity and there is no lookback window, which is the explicit cost of not tracking individuals.
No. Sealmetrics does not push conversions or audiences to the ad platforms. Most teams keep the platform's own conversion setup, gated by consent, for automated bidding, and use Sealmetrics to decide how much budget each channel and campaign gets.
Against the order total for the same period, not order by order. In Incapto's 48-day parallel run on Shopify, Sealmetrics recorded 96% of real online-store orders and 97% of revenue. Sealmetrics counts what fires and does not store order IDs, so fire the conversion once per confirmed order and compare totals and channels.
Attribution review
Book 30 minutes with the founder. We look at your campaign tagging, run last-click attribution on your sessions and compare it with what the platforms and GA4 report.