We ran tracking audits on four client accounts between May and July 2026. Each section below covers what we were asked, what we found, and what we fixed or advised against.
The accounts span GA4, Google Ads, Microsoft Ads and Meta. Every finding comes from the written report we delivered, and each client is named with permission. We do not add the four together: they are four separate accounts, not a sample. If you want the same review of your own setup, start with a free tracking audit.
Four tracking audits at a glance
One row per account, in the order the sections follow.
| Account | Platforms | We were asked | Main finding | Outcome |
|---|---|---|---|---|
| Toolab | GTM, GA4, Google Ads, Microsoft Ads | Full tracking audit, then the fixes | Three GA4 sources sending the same events; consent reset on every page | Fixed; one purchase event per order, checked against order IDs |
| Killian’s HVAC | Google Ads, GTM, GA4, Meta Pixel | Confirm what an inherited lead account counts | One quote form counted by two conversion actions | Fixed and tested in GTM Preview, Tag Assistant and GA4 |
| Orbital Clothing | Meta, Shopify, GA4 | Is Meta missing purchases, and would GTM and Stape fix it? | Tracking healthy; the gap came from consent and attribution | Advised against a rebuild |
| Vegepod | Meta, GA4, Google Ads | External review without account access | AddToCart fired twice; no consent banner | Fixes advised; Purchase and server side need access to confirm |
Toolab: three GA4 sources and a consent state that reset
What we were asked. Toolab is a Swedish online store. In May 2026 it asked for a full audit of GTM, GA4, Google Ads, Microsoft Ads and consent mode. A fix project followed in June and July.
What we found.
- Consent reset on every page. Visitors who accepted the banner were back to denied on the next page. The GTM tag for GA4 ecommerce events needs analytics storage granted, so it was blocked.
- GA4 still showed ecommerce data, because the store platform’s own GA4 app sent it outside the consent controls.
- A third source turned up during the fix: a hidden channel-level GA4 field in the store settings. It did not show in the normal admin views.
- The purchase value included VAT and shipping, which the store never counts as sales.
- The Microsoft Ads purchase tag sent text as its value. Order ID, price, product name, product ID and quantity were joined into one string.
- Google Ads held five purchase conversion actions. One was website-sourced and primary; four were imported from GA4.
- Leftovers: a Universal Analytics tag, a Google Optimize tag with no trigger, and a Google Ads base tag loading twice per page.
For June, GA4 reported 6,986,770 SEK of revenue against 5,027,143 SEK of real store sales. Of the GA4 figure, VAT accounted for 1,420,974 SEK and shipping for 159,430 SEK. Duplicate counting from the parallel sources accounted for the rest of the gap. GA4 also recorded 3,330 purchase events against 3,220 store orders.
What we fixed. Order mattered here. Fixing consent first would have let GTM fire next to the platform app, so every purchase would have been recorded twice.

Toolab: removing the extra GA4 sources had to come before the consent fix (Toolab audit and fix reports, May to July 2026).
- One GA4 source. We disabled the platform’s GA4 app and removed the hidden channel field, leaving GTM as the only source.
- Consent that persists. We moved the site to Cookiebot, a certified consent mode V2 platform, and rebuilt the logic so a choice survives every page. We tested full accept, full decline and a partial choice.
- Product views. The platform’s GTM integration never pushed view_item, so we built a custom data layer push for it.
- Microsoft Ads. We rebuilt the purchase tag with numeric revenue, currency and a transaction ID, and switched on enhanced conversions.
- Enhanced conversions. A variable was returning undefined on purchase, so hashed email had stopped reaching Google Ads and Microsoft Ads. We rebuilt it as a data layer variable.
- Clean-up. We removed the redundant conversion actions, the Universal Analytics and Optimize tags, and the second base tag load.
How we checked it. From 7 to 9 July, GA4 recorded 251 purchase events for 250 orders, and the extra event was our own test order. On 29 and 30 June, before the fix, it recorded 208 events for 200 orders. Google says consent mode keeps a visitor’s state across the pages they visit (Google Ads Help), which is what we tested. The full story is in the Toolab case study, and the checks behind it are in our GA4 audit checklist.
Killian’s HVAC: one lead counted twice in an inherited account
What we were asked. Killian’s HVAC is a lead generation account that reached us through its agency in July 2026. The account was inherited, so the brief was to confirm what it actually measured. The goal was a clean signal for Smart Bidding.
What we found.
- One quote form, two conversions. A GTM conversion fired on the form, then the thank-you page load fired a second action. Both sat as primary in the same goal group.
- The form conversion fired on a button click, not on the submission. Three clicks on the quote button without a submission could fire the tag three times.
- The GA4 phone event was named gtm.linkClick, a Tag Manager internal name. Calls could not be told apart from any other link click.
- No key events were marked in GA4. A key event is an event you mark as important to the business. GA4 reports it in its own column (Analytics Help).
- Enhanced conversions were switched on in Google Ads, but nothing in the container supplied the data.
- Dead and unfinished actions. A Cheq for PPC conversion action had no tag behind it, and two import actions were never configured.
- Two Google Ads identifiers: the container loaded one tag ID while both conversion tags reported to another.
- The Meta Pixel base code and PageView sat in one custom HTML tag.
What we fixed.
- One conversion per lead. We set the thank-you page action to secondary and kept the event-based conversion as primary.
- A real submission trigger. We built a trigger on the actual form submission and moved the GA4 and Google Ads tags onto it.
- Readable events. We renamed the phone event to call_tracking_phone_number_click and marked it and the form event as key events.
- Enhanced conversions, using the email from the form. It was outside the agreed scope, but the setting was already on and doing nothing.
- Meta Pixel split into a base code tag and a PageView tag, with the base code set to load first.
- Account hygiene. We removed the Cheq for PPC action and retired the two import actions. We also aligned the Google tag with the account the conversions report to.
What we advised against. Importing the new GA4 key events into Google Ads for the same actions. The GTM conversions already count them, so the import would recreate the duplication the audit removed. We also flagged that Google’s own Clicks to call action and the GTM phone click can both count one call. Our guide to Google Ads conversion tracking that is not working covers both faults.
Orbital Clothing: the Meta setup we told them to keep
What we were asked. Orbital Clothing’s team was concerned that Meta was missing a large share of purchases. They asked whether moving Meta tracking to a GTM and Stape server-side setup would fix it. We reviewed 2 to 28 June 2026 and changed nothing in any system.
What we found.
- The integration was healthy. Shopify’s Facebook and Instagram channel sent purchases through both the browser Pixel and the Conversions API, with data sharing set to Maximum.
- Nothing was broken or blocked. Meta’s diagnostics showed no errors, and event match quality was 8.8 out of 10.
- Three systems were close to each other. Against 1,240 Shopify orders, Meta’s server feed recorded 910 purchases, GA4 recorded 805 and the browser Pixel 765.
- Consent explained the shortfall. When a shopper declines the cookie banner, Shopify stops sending the purchase to Meta from both the browser and the server. We rated this medium confidence, because declines cannot be counted directly.
- Attribution explained the impression. Of the 805 purchases in GA4, 357 came from Facebook or Instagram visits. The rest came from Google, direct visits, YouTube and email, which Meta cannot credit to itself.
- The old GTM containers were paused and played no part in the Meta data path.
Meta and Google are separate companies with separate tags, and both landed in the same range. That pointed to the shopping environment, mainly consent and browser blocking, not to a fault inside Meta.
What we advised against. A GTM and Stape rebuild. The store already sent server events through the Conversions API. A compliant server setup must respect the same consent choice, so it would hit the same wall. It also cannot create a Meta click ID for a purchase that never came from Meta.
Rebuilding beside the live Shopify integration would also have risked double counting. Meta counts a browser and server event once only when both share the event name and ID (Meta for Developers). Our advice was to keep the setup and compare Meta’s credited purchases with the sales that came from Facebook and Instagram. Our Meta Pixel and Conversions API deduplication guide explains the shared ID.
Vegepod: a duplicate AddToCart found from the outside
What we were asked. Vegepod received a complimentary external audit in June 2026. We had no account access, so we tested what loads in the browser and what leaves it.
What we found.
- AddToCart fired twice on one add to cart. The first event came from the Shopify Meta integration with full product parameters. The second sent only a cs_est value and currency.
- No cookie consent banner and no consent mode were detected. Consent states appeared to be granted automatically.
- The rest of the funnel fired. ViewContent and InitiateCheckout fired correctly on Meta. GA4 captured view_item, add_to_cart and begin_checkout with ecommerce parameters.
- No GTM container was found. Tracking ran through Shopify’s native integrations.
What the report did not claim. Purchase was not tested, because confirming it needs a test order in Shopify test mode. Conversions API status, event match quality and deduplication cannot be seen from outside. The report labeled those as needing access instead of guessing.
What we advised. Remove the second AddToCart source, so one complete event fires per action. Run a Purchase test in Shopify test mode before scaling spend. Plan a consent banner and consent mode V2 for the markets the store sells into. A move to GTM or server-side tracking was listed as low priority. Our guide to consent mode V2 explains what the banner has to pass on.
Getting tracking audit findings for your own account
Each report above started from the live setup, or said plainly where access was missing. That is how our free audit works too. We review your Google Ads setup, conversion tracking and landing page, then send written findings within 24 to 48 hours.
If you would rather check first yourself, our conversion tracking audit checklist walks through the same ground.
Sources (7)
All checked on 15 October 2026.
- Google Ads Help, About consent mode
- Analytics Help, About key events
- Meta for Developers, Handling Duplicate Pixel and Conversions API Events
- BlazeByte client audit reports, named with permission: Toolab, Tracking and Analytics Audit (May 2026) and Tracking Fix and Impact Report (July 2026).
- BlazeByte client audit report, named with permission: Killian’s HVAC, Conversion Tracking Audit and GTM Cleanup (25 July 2026).
- BlazeByte client audit report, named with permission: Orbital Clothing, Meta Purchase Tracking Forensic Audit (1 July 2026).
- BlazeByte client audit report, named with permission: Vegepod, Tracking and Attribution Audit (June 2026).


