r/GoogleTagManager

Has anyone migrated from client-side GTM to Server-Side GTM (sGTM)? What stack did you use and was it worth it?

Curious what stack you used, how hard the migration was, and whether you actually noticed improvements in site speed, tracking quality etc.

I’m considering using Stape / RudderStack for this. Any major drawbacks or things you wish you knew before starting?

reddit.com
u/tonypaul009 — 9 hours ago

Should I Stop Using Shopify’s Google & YouTube App and Switch to GTM?

Hi everyone,

I’m facing an issue with the Google & YouTube app in Shopify, and I’m considering implementing all of my Google tracking tags manually through Google Tag Manager (GTM) instead.

Would this be okay from a tracking and data-quality perspective?

Specifically, I want to make sure that manually implementing things like Google Ads conversion tracking, GA4 events, and other Google tags through GTM won’t create problems with the Shopify Google & YouTube app or cause duplicate tracking.

Has anyone here completely moved their Google tags to GTM because of issues with the Shopify Google & YouTube app?

Would appreciate any advice on the recommended setup and things I should watch out for, especially around duplicate events, conversions, and enhanced/conversion tracking.

Thanks!

reddit.com
u/Difficult-Tech — 1 day ago
▲ 12 r/GoogleTagManager+3 crossposts

Wrote a deep-dive on server-side GTM + Stape, including why "custom domain = long Safari cookies" hasn't been true since 2023

I do tracking implementation for a living and kept seeing the same outdated claim repeated in setup guides: that pointing your sGTM tagging server at a custom subdomain gives you long-lived cookies in Safari.

That stopped being fully true with Safari 16.4 (April 2023).

Safari now caps server-set cookies at 7 days too, if the tagging server's IP prefix doesn't match your website's IP prefix. Since your site and your Stape/Cloud Run server sit on different infrastructure by default, most "properly configured" setups are still hitting the 7-day cap and nobody notices.

Wrote up the full setup process end to end: container creation, custom domain, the two actual Safari fixes (Own CDN vs Cookie Keeper), GA4 server-side, Meta CAPI with real event deduplication (not just "turn on the toggle"), Google Ads Enhanced Conversions, Consent Mode V2, and a 7-point QA checklist to verify your own setup isn't leaking before you trust the data. Also listed the 8 mistakes I run into most in actual audits.

Not trying to just drop a link and run, happy to answer specific questions here about sGTM, EMQ scores, or Meta CAPI dedup if anyone's stuck on their own setup.

https://muhammadabdullah.co/blog/server-side-gtm-setup-guide

u/Fit-Bar5633 — 2 days ago

Recommendations for measuring pageload speed without BigQuery

How are you measuring pageload speed with GTM and reading it in GA4?

The guides I've found online send a page speed event for every view to GA4 with a parameter capturing the time. However, that quickly leads to high cardinality because explorations max out at 500 rows and a pagespeed event is registered for every pageview.

If I have more than 500 views per page, I'm unable to see all the values and do analysis on it (averages, distribution, etc.).

reddit.com
u/kswavy — 3 days ago
▲ 10 r/GoogleTagManager+1 crossposts

How much time do you lose debugging Shopify tracking issues in GTM?

I keep seeing Shopify tracking setups where something quietly breaks , duplicate purchases, missing conversions, wrong values, old tags firing alongside native integrations, etc.

I’m wondering if a tool that could inspect the GTM/tracking setup, spot likely conflicts and point to the root cause would actually be useful.

Would you use something like that? And what GTM/Shopify issue would you want it to catch first?

Not selling anything, just trying to figure out if this is worth building.

reddit.com
u/LogicalResolve98 — 3 days ago

I built a free UTM builder to help standardise campaign tracking — looking for feedback

I've been working on a tool called UTMCraftr to make creating and managing campaign URLs a little more structured.

The problem I was trying to solve is simple: generating a UTM URL isn't particularly difficult, but keeping campaign naming consistent can become messy.

Things like:

  • facebook vs fb
  • paid_social vs paid-social vs paidsocial
  • inconsistent campaign names
  • spaces and formatting issues
  • accidentally including blank parameters
  • different people using different naming conventions

UTMCraftr is designed to make that process more structured.

🔗 https://utm-craftr.vercel.app/

Currently, it includes:

  • Web UTM URL generation
  • A Google Sheets-based UTM builder
  • Standardised source and medium selections
  • Required field validation
  • Automatic formatting and URL cleaning
  • Optional campaign parameters
  • Support for Web, Android and iOS campaign URL structures

The goal isn't to replace enterprise UTM management platforms. It's meant to be a lightweight tool for people or teams who want a more structured way to create campaign URLs without manually building them every time.

I'd genuinely like feedback from people who work with campaign tracking regularly.

A few things I'm particularly interested in knowing:

  1. Does the workflow make sense?
  2. Are there important fields or validations missing?
  3. Would a Google Sheets-based workflow be useful for your team?
  4. What features would make a UTM builder genuinely more useful for you?

Would appreciate any honest feedback or feature suggestions.

reddit.com
u/AyeAyeCap00 — 4 days ago

Google Ads tracking-template hierarchy — which template wins?

I’ve seen quite a few tracking issues caused by templates being added at different levels in Google Ads, so here’s the simple explanation.

A tracking template can be added at account, campaign, ad group, ad, keyword or asset level. Google uses the most specific template it finds.

For example:

  • You have a tracking template at account level.
  • Someone adds a different template to one campaign.
  • That campaign now uses the campaign-level template.
  • Google does not automatically combine it with the account-level template.

This is where things often go wrong. A new template is added for another tracking tool, but the existing parameters or redirect are left out. Tracking then breaks for that campaign while the rest of the account continues working.

My usual checklist:

  1. Check every level before changing anything.
  2. Keep the template at account level if it should apply everywhere.
  3. Don’t assume two templates will be merged automatically.
  4. Use {lpurl} correctly.
  5. Put ordinary UTM parameters in the Final URL suffix when a redirect isn’t needed.
  6. Test the result with Google Ads’ built-in test option.
  7. If something suddenly changes, check the Google Ads change history.

One final point: auto-tagging is separate from the tracking template. Auto-tagging adds Google’s click identifier, while the tracking template determines how the click URL is built or routed.

I’d be interested to know how others manage accounts that need more than one tracking platform. Do you combine everything at account level, or manage certain tools at campaign level?

reddit.com
u/Rachid_Trackings — 8 days ago

Debugging issue - Changes not showing in debug mode

Anyone else experiencing issues with workspace debugging? I make changes in workspace, i open preview/debugger mode and then those tags/changes are not there. Which means i cannot test my changes and therefore not publish them.

This has been happening since last week.

I've tried different browsers, i've cleared cache, incognito etc, nothing works. Seems to be workspace related rather than browser related.

reddit.com
u/hrcuzz1995 — 11 days ago
▲ 4 r/GoogleTagManager+1 crossposts

need help tegarding dual firing of hits

So my whatsapp and phone call click on my website is sending 2 hits each to google ads when i fire the respective tag. gtm is setup correctly as far as i know. can i get to know to reason behind this?

reddit.com
u/_Kayzar_ — 11 days ago

Custom Loader without Stape

For the main projects I use stape and also the custom loader. Now I'm in a project where the server side GTM is hosted on a Docker container is there any good solution for a custom loader like the stape?

reddit.com
u/BookkeeperNo6601 — 13 days ago