【问题标题】:Google Tag Manager and page load performance: does it reduces performance in PageSpeed Insights?Google 跟踪代码管理器和页面加载性能:它会降低 PageSpeed Insights 的性能吗?
【发布时间】:2019-06-09 09:27:59
【问题描述】:

我知道这可能看起来有点含糊,但我将提供更多背景信息:在我工作的公司中,我们使用(我个人认为我们在滥用)Google Tag Manager (GTM) 在其中注入一些第三方脚本GTM tags。大多数情况下,我们使用它来操作某些页面模板(例如产品页面)中的 DOM 并注入第三方脚本(例如 Zopim 聊天、Facebook 像素等)。

我们通常会做的事情是:在页面加载时发生DOMContentLoaded 和/或load 事件时操作DOM,所以在我看来,如果没有这些GTM 标签,我们的网站将在PageSpeed Insights 中获得更好的分数。在Chrome DevTools' Lighthouse。我无法在没有激活 GTM 标记的情况下测试该网站,因为它已经在网站的任何地方。

这种使用 GTM 对我们网站速度的影响有多大?

【问题讨论】:

    标签: google-tag-manager pagespeed google-pagespeed


    【解决方案1】:

    注入标签是 GTM 的用途,因此这不构成滥用。

    GTM 本身只是一种交付机制;它是一个带有异步加载标签机制的 JS 文件(我认为一个空容器解压缩后大约 100KB,如果您的浏览器支持压缩,则需要下载 30KB)。它本身对页面加载时间的贡献很小。

    当然,您通过 GTM 部署的内容可能会大大降低您的网站速度 - 部分原因是它会下载外部库,部分原因是 DOM 操作可能会强制在浏览器中进行重排/重绘。但是,这不是由于 GTM,而是由于您使用的标签,并且如果您通过其他方式集成 Zopim 等,则会发生完全相同的情况。

    那么,使用大量(可能很糟糕 [1])JavaScript 会使您的网站变慢吗?很可能,是的。这是GTM的错吗?不是,除了 GTM 使集成讨厌的东西变得更容易一些。

    [1] 不是在挖苦你,只是营销标签通常是用令人震惊的过时 JavaScript 编写的。

    【讨论】:

    • @eikepierstoff 我主要关心的问题之一与这个问题有关:Lighthouse/PageSpeed Insights 是否忽略 gtm.js 我记得 Google PageSpeed 有时表现出色与他们自己的 Analytics JavaScript 文件相关的问题,所以我认为他们并没有忽略自己的 js 文件,但只是……谁知道呢! :D 感谢您的回答!
    • @vcoppolecchia - 同意 100%。谷歌仍然没有忽略 GTM 文件。删除 GTM 后,我的 PSI(Pagespeed Insights)分数提高了 5 分。
    【解决方案2】:

    您可以通过几种不同的方式了解 GTM 和第三方代码对性能的影响。

    通过开发者工具
    您可以在浏览器开发者工具中屏蔽gtm.js。这将阻止加载 Google 标签管理器和相关标签。您可以在here 找到有关该功能的更多信息。完成此操作后,您可以从浏览器运行 Google Lighthouse,以查看您的分数如何提高。

    通过网页测试
    您也可以使用Webpagetest 找出没有第三方标签的性能。 Webpagetest 具有请求阻止功能,或者您可以使用以下 Webpagetest 脚本仅使用您的第一方域测试性能。

    blockDomainsExcept   yourwebsite.com
    navigate  https://yourwebsite.com
    

    这是为了衡量您的第三方脚本对性能的影响。如果您不使用 GTM 将第三方脚本直接包含到您的网站中,您可能会得到类似的结果。话虽如此,有一些方法可以优化您的 GTM 设置以提高性能,并充分利用标签管理器的功能来提高您网站的性能。如果你是interested in optimizing your GTM setup,可以查看这篇文章。

    【讨论】:

    • 关于 DevTools 中的资源拦截器的好点子,非常有用! :) 我正在阅读您链接的文章,我很好奇解决方案的浏览器兼容性,例如在 块中使用 标签,您是否直接对其进行了测试?感谢您为解释这一切所做的努力!
    【解决方案3】:

    是的,它会降低 Lighthouse 性能分数,尤其是移动端性能分数。我们必须非常小心地将 GTM 添加到我们的网站,尤其是主页。对于我的网站,GTM 正在从不同的域注入另外 5 个 JS 文件。这为我们的应用程序增加了更多的往返时间 (RTT),进而增加了浏览器的负载。

    当我从主页中删除 GTM 后,Lighthouse 性能得分提高了 5 分。因此,无论是否会影响我们的网站,GTM 本身都应该提供某种建议/见解。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-12-12
      • 1970-01-01
      • 1970-01-01
      • 2020-12-21
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多