نرخ تعامل کانال Direct ما هفتهها متوسط به نظر میرسید: ۲۵٪، در برابر بیش از ۶۰٪ در هر کانال دیگر. داشبورد استاندارد GA4 هیچوقت دلیلش را توضیح نداد. یک فیلتر بُعدی لازم بود تا عدد واقعی را پیدا کنیم، دوازده درصد بالاتر، وقتی ترافیکی را حذف کردیم که اصلاً یک بازدیدکننده نبود.
عددی که جور در نمیآمد
ترافیک Direct، یعنی کسانی که آدرس سایت را تایپ میکنند یا یک بوکمارک را باز میکنند، معمولاً هدفمندترین کانال شماست. کانال ما بدترین نرخ تعامل را در میان تمام کانالهایی داشت که ردیابی میکنیم. این برعکسِ منطق است. پس ۳۰ روز دادهی سشن را از طریق GA4 Data API کشیدیم و بهجای اعتماد به گزارش سطحبالا، شروع کردیم به برش دادن بر اساس بُعد.
یک فیلتر کل ماجرا را روشن کرد: سشنهایی که browser تنظیمنشده است. نه «Chrome»، نه «Safari»، حتی نه «unknown» بهعنوان یک مقدار برچسبگذاریشده، فقط خالی. ۱۲۲ سشن در ۳۰ روز، همگی از یک کشور، همگی روی دسکتاپ، همگی فرود آمده روی یک آدرس ریدایرکت لاگین که به صفحهی پرداخت یک پلن قیمتگذاری خاص اشاره میکرد. تعامل صفر روی تکتکشان. این یک مرورگر نیست که GA4 نتوانسته شناسایی کند. این کلاینتی است که اصلاً مرورگر نیست.
داشت چهکاری میکرد
صفحات فرود تصادفی نبودند. تقریباً یکبهیک با هر پلن پولی در خط محصولات ما مطابقت داشتند. چیزی داشت از میان صفحهی قیمتگذاری خودمان عبور میکرد، هر آدرس پرداخت را استخراج میکرد، و درخواستش میداد. نه آنقدر سریع که یک rate limiter را فعال کند، نه کاری فراتر از ریدایرکت لاگین انجام میداد، فقط تأیید میکرد هر آدرس باز میشود.
شناسایی سطحپایین، نه یک حملهی در حال انجام. ولی کل این مدت داخل اعداد «Direct» ما نشسته بود، و بهاندازهای بزرگ بود که اهمیت داشته باشد: تقریباً ۲۳٪ از کل سشنهای آن کانال، که نرخ تعامل اندازهگیریشدهاش را بیش از یکسوم پایین میکشید.
چرا داشبورد هیچوقت گیرش نینداخت
گروهبندی پیشفرض کانال در GA4 هیچ مفهومی از «این شبیه یک انسان نیست» ندارد. بر اساس referrer و پارامترهای کمپین دستهبندی میکند، و درخواستی بدون referrer، صرفنظر از اینکه چه چیزی درخواست را ساخته، در Direct میافتد. فیلتر بات در GA4 وجود دارد، ولی امضاهای بات شناختهشده را فیلتر میکند، نه الگوهای رفتاری مثل «یک اثرانگشت که پشتسرهم به همهی آدرسهای پرداخت میزند با زمان صفر روی صفحه». این نوع الگو فقط وقتی نمایان میشود که با یک فیلتر بُعدی سفارشی دنبالش بگردید، کاری که بیشتر جریانهای گزارشگیری هیچوقت انجامش نمیدهند، چون داشبورد سطحبالا در نگاه اول خوب به نظر میرسد.
چهکاری انجام دادیم
دنبال منبع نرفتیم. فعلاً راهی برای ردیابی بیشتر نیست: اینها درخواستهای GET عمومی روی آدرسهای عمومی قیمتگذاری بودند، چیزی که نیاز به اعتبارنامه نداشت یا به دادهی کاربر دست نمیزد، و رد IP در سطح دقیقتر به دلیلی کاملاً بیربط به این ماجرا دیگر قابل بازیابی نبود: یک کانتینر ریبیلد شده بود درحالیکه لاگهای access آن به یک فایل اشاره میکرد نه stdout، پس هر کاری بات قبل از آن ریبیلد کرده صرفاً از بین رفته، اشتباهی که از آنموقع فیکسش کردهایم. چیزی که فیکس کردیم تحلیل بود: حذف آن اثرانگشت مرورگر از گزارشگیری کانال Direct تا عملکرد واقعی کانال دیده شود، و رفتار با هر خوشهی آیندهی «ترافیک Direct با بُعد مرورگر خالی» بهعنوان یک سیگنال قابلبررسی، نه نویزی که باید در میانگین گم شود.
نتیجه
یک متریک داشبورد که کمی نامتعارف به نظر میرسد، ارزش یک فیلتر بُعدی را دارد پیش از اینکه آن را بهعنوان «کانال همینجوری است» کنار بگذارید. کانال ما ضعیف عمل نمیکرد. یک چهارمش اصلاً یک کانال نبود.