دیباگ ویو در گوگل آنالیتیکس ۴ کار نمی‌کنه؟ اینجا چنتاراه‌حل رو بررسی میکنیم.

دیباگ ویو (DebugView) یکی از قابلیت های خیلی خوب توی گوگل آنالیتیکس ۴ (GA4) هست که نسبت به نسخه قبلی یعنی GA3 یه پیشرفت حسابی محسوب می‌شه. با این قابلیت می‌تونی دیتای ورودی رو خیلی دقیق بررسی و دیباگ کنی. اما خب، بعضی وقتا این ابزار درست کار نمی‌کنه، و احتمالاً همین باعث شده که الان این صفحه رو بخونی.

وقتی می‌گم "کار نمی‌کنه"، منظورم اینه که هیچ دیتایی از دستگاه خودت توی دیباگ ویو نمی‌بینی (مثلاً پیام "No devices available" میاد). اگه اینطوره، یه‌سری نکته دارم که شاید بهت کمک کنه مشکل رو حل کنی.

اگه تو هم راه‌حل یا نکته‌ای پیدا کردی که اینجا نیست، توی کامنت‌ها بگو تا راهنما رو آپدیت کنیم شاید برای بقیه هم مفید باشه. خوب بریم سراع عوامل احتمالی بروز این مشکل:

۱. پارامتر مربوط به دیباگ مود فعال نیست

 دیباگ ویو فقط اون ایونت‌هایی رو نشون می‌ده که داخلشون یه پارامتر مخصوص به دیباگ مود وجود داشته باشه. این پارامتر می‌تونه یکی از این دوتا باشه: ep.debug_mode یا _dbg. سه روش وجود داره که این پارامتر به ایونت‌های وب اضافه بشه:

  • با نصب و فعال کردن افزونه دیباگر گوگل آنالیتیکس در کروم
  •  وقتی که پریویو مود گوگل تگ منیجر فعال باشه
  • یا این که خودت به‌صورت دستی پارامتر debug_mode رو همراه با ایونتی بفرستی

اگه هرکدوم از این سه‌تا روش رو انجام داده باشی، پارامتر _dbg یا ep.debug_mode به درخواست‌هایی که سمت GA4 فرستاده می‌شن، اضافه می‌شه.

برای مطمئن شدن از این قضیه، برو توی مرورگر (مثلاً کروم) و وارد دولوپر تولز شو. مسیرش اینه: سه‌نقطه بالا > More tools > Developer tools.


بعد برو روی تب Network و توی قسمت سرچ بنویس: collect?v=2
صفحه‌ای که داری دیباگ می‌کنی رو یه بار رفرش کن. حالا لیست درخواست‌هایی که به GA4 فرستاده شدن رو می‌بینی. یکی از اون‌ها رو باز کن و ببین _dbg یا ep.debug_mode داخلش هست یا نه.


اگه هست، همه‌چی درسته. اگه نیست، یکی از اون سه‌تا روش رو تست کن:

  • افزونه دیباگر گوگل آنالیتیکس در کروم
  • فعال‌سازی پریویو مود در GTM
  • ارسال دستی پارامتر debug_mode با ایونت

۲. بررسی فیلترها

 گوگل آنالیتیکس ۴ یه‌سری قابلیت فیلترینگ ساده داره. یکی از اون‌ها امکان فیلتر کردن ترافیک داخلیه (بر اساس IP).

دو مدل فیلترینگ توی GA4 وجود داره:

  • ترافیک داخلی: ایونت‌هایی که از IP های مشخص‌شده توسط شما و بقیه ادمین ها میان (مثلاً IP شرکت خودت)، حذف می‌شن و توی دیباگ ویو هم نمایش داده نمی‌شن.
  • ترافیک دولوپر: داده های این ترافیک -اگه پارامتر دیباگ مود داخلش باشه- از گزارش‌های استاندارد حذف می‌شه ولی توی دیباگ ویو نشون داده می‌شه.

برای بررسی این فیلترها برو به:
Admin > Data Settings > Filters


اگه فقط فیلتر ترافیک داخلی فعاله، ممکنه همین باعث شه دیباگ ویو چیزی نشون نده. این موضوع حتی زمانی  که فیلتر دولوپر هم فعاله ممکنه اتفاق بیفته.

دو راه‌حل:

  1. از یه وی‌پی‌ان استفاده کن (مثلاً NordVPN) تا IPت عوض بشه، اون‌وقت توی دیباگ ویو دیده می‌شی.
  2. یا موقتاً فیلتر ترافیک داخلی رو غیرفعال کن تا تستت رو انجام بدی (فقط بدون که بقیه کارمندهای شرکت هم ممکنه توی دیتا ظاهر بشن).

۳. افزونه‌های مرورگر ممکنه GA4 رو بلاک کرده باشن

بعضی افزونه‌های مرورگر (مثل Google Analytics opt-out یا بعضی اد‌بلاکرها) جلوی ارسال دیتا به گوگل آنالیتیکس رو می‌گیرن. حتی اگه توی پریویو مود GTM ببینی که تگ‌ها فایر می‌شن، ممکنه دیتا اصلاً سمت GA نرفته باشه.

کاری که باید بکنی:

  • همه افزونه‌های مرورگرت رو موقتاً غیرفعال کن
  • صفحه رو رفرش کن و ببین دیباگ ویو کار می‌کنه یا نه
  • اگه درست شد، یکی‌یکی افزونه‌ها رو فعال کن تا مشخص بشه کدوم افزونه مقصره

اگه فهمیدی کدوم افزونه باعثش می‌شه، توی کامنت‌های مقاله بنویس تا به بقیه هم کمکی بشه.

۴. گوگل آنالیتیکس ممکنه توی دولوپر تولز بلاک شده باشه

گاهی وقتا موقع تست کردن، ممکنه خودت یا دولوپر یه کاری کرده باشی که درخواست‌هایی که به GA می‌رن، موقتاً بلاک بشن و بعد یادمون بره اون بلاک رو برداریم.

برای چک کردن این قضیه:

  1. برو به Developer Tools مرورگر
  2. روی تب Network کلیک کن
  3. توی سرچ بنویس collect
  4. اگه دیدی بعضی درخواست‌های ارسالی به google-analytics.com بلاک شدن و خطا می‌دن، احتمالاً دستی بلاک شدن



برای آزاد کردن درخواست، روی اون درخواست راست‌کلیک کن و بزن روی گزینه “Unblock [domain]”.

۵. ممکنه گوگل تگ منیجر توسط افزونه مرورگر بلاک شده باشه

اگه نصب GA4 رو با GTM انجام دادی، باید حواست باشه که شاید خود GTM توسط یه افزونه مثل uBlock Origin یا Ghostery بلاک شده باشه.

برای بررسیش:

  • برو توی DevTools و دنبال درخواست gtm.js بگرد
  • اگه دیدی این فایل لود نمی‌شه یا تغییر مسیر داده، مشکل از یه افزونه‌ست
  • یکی‌یکی افزونه‌ها رو غیرفعال کن تا ببینی کدومش باعث بلاک شدن شده


۶. داری از مرورگر بریو (Brave) استفاده می‌کنی؟

مرورگر Brave کلاً با حریم خصوصی خیلی سخت‌گیرانه برخورد می‌کنه. همین موضوع باعث می‌شه:

  • GA کلاً بلاک بشه
  • GTM پریویو مود هم به‌درستی کار نکنه

راه‌حل؟
برای تست کردن GA، پیشنهاد می‌کنم از مرورگری مثل Chrome یا Firefox استفاده کنی.

۷. تاخیرهای عجیب (بعضی وقتا)

این مشکل زیاد پیش نمیاد ولی ممکنه برای بعضی‌ها اتفاق بیفته. مثلاً:

  • وقتی یه GA4 پراپرتی جدید می‌سازی و بلافاصله می‌خوای از دیباگ ویو استفاده کنی
  • ممکنه دیتایی که باید توی دیباگ ویو نشون داده بشه، با چند ساعت تاخیر برسه یا حتی ۱۰ دقیقه‌ای طول بکشه تا ظاهر بشه

هیچ راه‌حل دقیقی نداره جز صبر کردن 😅
اگه کلی کار داری و منتظر تستی، می‌دونم سخته، ولی بعضی وقتا واقعاً تنها راهش همین صبر کردنه.

۸. باگ‌

با این‌که چند سال گذشته از زمانی که GA4 معرفی شد، ولی هنوز بعضی وقتا دیباگ ویو باگ داره.

مثلاً:

  • وارد دیباگ ویو می‌شی، ولی می‌بینی نوشته “۰ تا دیوایس”
  • ولی وقتی منو رو باز می‌کنی، می‌بینی در واقع چندتا دیوایس هست! فقط نشون نمی‌داده

گاهی هم باگ‌ها جدی‌ترن و کلاً دیباگ ویو کار نمی‌کنه. متأسفانه برای این حالت خاص، راه‌حل مشخصی وجود نداره.

اما یه چیزی که بارها دیدم:
فردا که دوباره میای سر بزنی، همه‌چی درست شده! 🤷‍♂️

۹. استفاده از سرورساید تگینگ؟

اگه GA4 رو با سرورساید تگینگ راه‌اندازی کردی، باید بدونی که قضیه فرق می‌کنه.

چرا؟
چون افزونه دیباگر کروم فقط درخواست‌هایی رو می‌تونه تشخیص بده که مستقیم به Google برن. ولی توی سرورساید تگینگ، دیتا اول می‌ره به سرور خودت، بعدش به گوگل.

در نتیجه:

  • دیباگر نمی‌فهمه این درخواست مال GA4 هست
  • و پارامتر دیباگ مود رو هم اضافه نمی‌کنه
  • پس دیباگ ویو فعال نمی‌شه

راه‌حلش چیه؟
یا با پریویو مود GTM کار کن
یا خودت توی همه ایونت‌ها debug_mode رو دستی اضافه کن (فقط برای زمان دیباگ).


۱۰. ممکنه Content Security Policy (CSP) جلوی GA رو گرفته باشه

اگه سایتت یه پالیسی امنیت محتوا (CSP)داره، ممکنه جلوی ارسال درخواست به گوگل آنالیتیکس رو بگیره.

برای چک کردنش:

  1. برو توی DevTools > تب Console
  2. صفحه رو رفرش کن
  3. اگه دیدی اروری هست که توش نوشته google-analytics.com، بدون CSP اجازه ارسال دیتا رو نمی‌ده


چی‌کار باید کرد؟

 سال ۲۰۲۲ بود که گوگل آدرس‌هایی که گوگل آنالیتیکس ازش برای ارسال دیتا استفاده می‌کرد رو تغییر داد. قبلاً فقط از www.google-analytics.com استفاده می‌کرد، ولی حالا ممکنه آدرسش چیزی مثل region1.google-analytics.com یا مشابه اون باشه.

برای همین بهتره دولوپرها بیان و توی تنظیمات Content Security Policy (CSP) همه دامنه‌هایی که شامل google-analytics.com هستن رو ساپورت کنن.

یعنی چی؟ یعنی CSP باید این دو تا رو اضافه کنه:

  • *.google-analytics.com
  • *.analytics.google.com

اونم توی بخش‌های connect-src و img-src. یادت نره اون *. اول دامنه خیلی مهمه.

۱۱. کانسنت

این مورد یه کم پیچیده‌ست و نمی‌تونم یه جواب قطعی بدم چون تو هر سایتی تنظیماتش فرق می‌کنه.

ولی خلاصه‌ش اینه:

اگه سایتت یه پاپ‌آپ کوکی کانسنت داره، اول ببین وقتی کاربر روی "قبول نکردن کوکی‌ها" کلیک می‌کنه، چی می‌شه؟

توی حالت عادی، وقتی کاربر رد کنه، کدهای ترکینگ GA4 نباید فعال بشن. یعنی طبیعتاً دیباگ ویو هم کار نمی‌کنه.

یه حالت دیگه هم اینه که شاید سایتت از گوگل کانسنت مود استفاده می‌کنه. تو این حالت، حتی اگه کاربر قبول نکنه، کدهای GA4 بازم اجرا می‌شن ولی دیتای خیلی محدودی فرستاده می‌شه. نتیجه؟ اون ایونت‌ها توی دیباگ ویو اصلاً دیده نمی‌شن.

یه احتمال دیگه هم هست: شاید پاپ‌آپ کوکی از قابلیت اتوبلاکینگ استفاده می‌کنه. یعنی خودش خودکار جلوی اجرای همه کدهای ترکینگ رو می‌گیره.

چطور اینا رو دیباگ کنی؟ واقعاً آسون نیست و بسته به هر سایت فرق داره. اگه می‌خوای بیشتر بدونی، پیشنهاد می‌کنم بری سراغ دوره مقدماتی گوگل تگ منیجر.

۱۲. خروج از پنل ادمین وردپرس

چند نفر از خواننده‌های سایت گفتن که اگه توی وردپرس باشی و وارد پنل ادمین باشی، دیباگ ویو کار نمی‌کنه.

ولی به‌محض اینکه از پنل ادمین وردپرس خارج شدن، مشکل حل شده! تو هم امتحان کن، ضرر نداره.

۱۳. مطمئن شو دیوایس درستی رو انتخاب کردی

اگه چند نفر همزمان روی سایت دیباگ مود رو فعال کرده باشن، همه دیوایس‌ها توی دیباگ ویو نمایش داده می‌شن.

شاید داری دیتای یه نفر دیگه رو می‌بینی!

بالای سمت چپ دیباگ ویو یه منو هست. روش کلیک کن و ببین دیوایس‌های دیگه‌ای هم اونجا هست یا نه.


حتی اگه عدد کنار “Debug Device” صفر باشه، بازم کلیک کن. شاید یه دیوایس مخفی اونجاست. اگه پیدا کردی، بین دیوایس‌ها سوییچ کن و ببین کدومش با رفتار تست خودت همخونی داره.

۱۴. مهاجرت خودکار از GA3

گوگل خودش به‌صورت خودکار براش یه پراپرتی GA4 ساخته بود، بر اساس پراپرتی قبلی GA3. ولی کدی که روی سایت بود، همون کد ترکینگ GA3 بود که گوگل خودش دوباره استفاده کرده بود. نتیجه؟ دیباگ ویو و گزارش‌های لحظه‌ای اصلاً کار نمی‌کنن!

با دولوپر صحبت کن، کدهای قدیمی GA3 رو از کد سایت حذف کن، و GA4 رو با GTM نصب کن. بعد از اون، دیباگ ویو شروع  به کار کردن میکنه.

۱۵. مرورگر رو کامل ببند و دوباره باز کن

فقط بستن پنجره مرورگر کافی نیست. باید کلاً مرورگر رو ببندی.مثلاً توی کروم برو روی سه نقطه بالا سمت راست > “Exit” رو بزن.

بعدش دوباره مرورگر رو باز کن و تست کن که مشکل حل شده باشه.

۱۶. پاک کردن کش و کوکی‌های مرورگر

اگه هیچ‌کدوم از راه‌حل‌های بالا جواب نداد، کش و کوکی مرورگرت رو پاک کن و دوباره تست کن. روش انجامش توی هر مرورگر فرق می‌کنه، پس بهتره تو گوگل سرچ کنی:

۱۷. اشتباه گرفتن پراپرتی GA4

شاید مسخره به نظر بیاد ولی خیلی وقتا اتفاق می‌افته!

  • چک کن ببین کد ترکینگ یا GTM داره دیتا رو به کدوم مژرمنت آیدی می‌فرسته
  • بعد برو توی GA > Admin > Data Streams و اون استریم مربوط به سایتت رو باز کن
  • ببین ID اونجا با اون چیزی که داری توی کدت استفاده می‌کنی یکی هست یا نه. اگه متفاوت باشن، دیباگ ویو طبیعتاً کار نمی‌کنه.

۱۸. وجود ga-disable توی کد سایت

این مورد خیلی کم پیش میاد، ولی کاملاً محتمله. یه قابلیت توی لایبرری gtag.js وجود داره که می‌تونه کل گوگل آنالیتیکس رو روی یه صفحه غیرفعال کنه. کدی شبیه این:
window['ga-disable-G-123456789'] = true;

این کد معمولاً بالاتر از تگ‌های GTM یا gtag.js قرار می‌گیره و کلاً همه چی رو می‌خوابونه!

اگه این خط رو توی سورس کد سایتت دیدی (میتونی با راست‌کلیک  View Page Source رو انتخاب کنی بعدش سرچ کنی: ga-disable). وجود این خط کد یعنی کلاً GA غیرفعاله و دیباگ ویو هم هیچ کاری نمی‌تونه بکنه.


راه‌حل؟ اون خط کد باید حذف بشه. خودت یا دولوپرت باید این کار رو انجام بدین.

حرف آخر

اگه چیز دیگه‌ای پیدا کردی که باعث می‌شه دیباگ ویو کار نکنه یا راه‌حل خاصی براش پیدا کردی، حتماً تو کامنت‌های پست بهم بگو.