如果頁面有 id=”ga”,用 gtag 埋 Google Analytics 會收不到流量

/

English version: If the page has id=”ga”, google analytics with gtag will not receive sessions.

首先,Augustus 不想下個「做了這件事以後,GA 就收不到流量,知道原因後朋友們都跪了」之類的標題殺人法,所以先在標題跟第一段先說結論:
如果頁面的 HTML,有出現 id="ga",而埋 GA code 的方式又是 gtag 的話,那 GA 就會收不到這頁的瀏覽量。

以下是從發現問題到找到問題,最後解決問題的過程。

因為目前還沒在網路上找到因為頁面有 id="ga" 就收不到流量的文章,所以寫了這篇,希望大大們可以避免,或是也發生一樣問題的頁面可以解決這問題。


發現問題

收不到流量這是前幾天慘痛的經驗。在寫完以下兩篇後:

原本是要比較一下中文、英文流量有沒有差異的,可是一天過去了,兩天過去了,這兩篇在 Google Analytics 的流量一直是 0。

奇怪的是,在看 Hotjar 時,有看到有人進到中文那篇在觀看。FB 的分享也有朋友點讚,怎麼樣都會有人進來晃晃吧?但 GA 確實一直沒收到數據。

而且點進其他篇,其他篇一樣可以收到流量,就這兩篇不行。

然後就打開 GA Debugger,開始一系列的找 bug 過程。

這是廣告,點擊一下可以幫本站多個一點點的廣告收入,謝謝


找到問題

一開始是懷疑因為裝了禁止 GA 追蹤的擴充功能「Google Analytics (分析) 不透露資訊外掛程式」所以沒收到流量,移掉後,即時報表還是沒看到瀏覽量進來。

接著想到,發文前一天,想來試一下 AB/ test,埋 GA tracking code 時,有加了 Google Optimize 的 config,就去 Optimize 結束 A/B test,但一樣,GA page view 一樣沒送出。

然後又想,難道是自訂維度的 code 寫錯了?那 自訂維度的使用 那篇不就要重寫?好險,即便刪掉自訂維度的事件,一樣是沒收到流量。

接著又試著刪掉 GA 事件追蹤、service-worker.js、Mixpanel,都沒解決 GA 收不到瀏覽量的問題。

最後,只好採取土法煉鋼的方式,把頁面下載成靜態的 HTML 檔,一行一行刪,看刪到哪一行可以讓 GA 正常運作。


一般找前端的 bug,第一個先找的是 JavaScript,因為 JS 最可能把 AJAX 擋下。

先把頁面上引用的 JS、直接寫的 <script> 都刪掉,如果發現流量進來了後,再來找是哪個檔案造成的。

結果:刪完後還是收不到流量。

CSS 會影響嗎?疑惑之下還是刪了,引用的跟頁面上的 <style> 都刪。

這是廣告,點擊一下可以幫本站多個一點點的廣告收入,謝謝

結果:一樣沒收到流量。

好吧,只好看其他 HML 的部分,先刪 <head> 裡的,沒作用。

再刪掉整個 body,嗯?GA 收到流量了!

那可以肯定的是,是前端頁面的問題,而不是 GA 設定或是 Server 的問題。

HTML 一行一行刪下去,在刪掉這一行:

<h3>
  <span class="ez-toc-section" id="ga" tabindex="-1">ga</span>
</h3>

GA 就能收到流量,終於找到問題了,這一行問題會跟 GA 有關的就是 id="ga"

不過 Augustus 也疑惑,為什麼會寫出 id="ga" 這行?感覺這個 id 就會是 Google Analytics 的保留字。

看了頁面才發現,為了讓頁面增加內部連結,也為了讓大家閱讀方便,Augustus 有裝「Easy Table of Contents」這個外掛,id 是由這個外掛自動生成的,他會去判斷標題裡的英文,自動把英文變成這個標題的 id,結果那兩篇都有個標題就叫「GA」。


解決問題

一開始是先俢改標題的文字,原本標題是「GA」,就改成「GA code」,讓外掛生成的 id 變成 ga-code。

這在英文那篇沒問題,但在中文那邊有個問題,就是 Easy Table of Contents 只會抓標題裡的英文當 id,而中文那篇有一個標題是「會埋 GA 事件的好處」,外掛就只抓了 ga 出來,不得已下只好把標題改成「會埋 GA Event 的好處」。


再說一次 GA 流量是 0 的原因

這很重要,這是真人真事非改編悲劇換來的經驗,所以最後再說明一次:

如果頁面的 HTML,有出現 id="ga",而埋 Google Analytics 的方式又是 gtag 的話,那 GA 就會收不到這頁的瀏覽量。

Summary
如果頁面有 id="ga",用 gtag 埋 Google Analytics 會收不到流量
Article Name
如果頁面有 id="ga",用 gtag 埋 Google Analytics 會收不到流量
Description
不想下個「做了這件事以後,GA 就收不到流量,知道原因後朋友們都跪了」之類的標題殺人法,所以先先說結論:如果頁面的 HTML,有出現 id="ga",而埋 GA code的方式又是 gtag 的話,那 GA就會收不到這頁的瀏覽量。以下是從發現問題到找到問題,最後解決問題的過程。
Augustus
Let's Write
Let's Write
https://letswrite.tw/wp-content/uploads/2020/08/logo_512.jpg

隨選筆記文

Google Sheets

如何用 Google Sheets / Excel 當作資料庫

WordPress

WordPress:埋 Google AdSense 廣告

Google Others

Google Optimize A/B Testing 使用筆記

WordPress

Ubuntu 安裝 WordPress – 2:Webmin、Apache、MySQL、Hosts

Front-End

Markdown 常用語法筆記

API

Instagram 基本顯示 API :抓取公開 IG 資料、相片、影片

Google Maps

Google Maps API 學習筆記 – 5:抓目前位置、計算到各點距離

Bot Telegram

Telegram Bot 學習筆記 – 4:命令列 Commands

Bot Slack

Slack 通知功能 純靜態

WordPress

如何用 MAMP 在本機安裝 WordPress

以下是留言,但關於留言的部份必需先讓你們知道:

本站的文章都是 Augustus 因為覺得有趣,才會實作並整理成筆記文而後進行發表。

如果留言是希望把 Demo 改成「你想要」的樣子,或是把功能改成「符合你需求」的樣子,

Sorry~ 除非那修改是 Augustus 也有興趣的,不然不會幫你們寫程式去面對工作或是交作業。

未來這類的留言不會再主動回覆。😎

另外,公開信箱是為了讓金流驗證用,

因為之前遇過幾次回信協助解決問題後,對方卻一聲謝謝也沒有,就這樣拿去幫工作交差。

因此決定不再回覆信件,有疑問就利用留言功能囉。

訂閱
通知
guest
0 Comments
Inline Feedbacks
看所有留言