نگــــــــار پـــورجــــــــــواد
متخصص تبلیغات کلیکی، ایکامرس ترکینگ و …
Analytics 4
آموزش بیگ کوئری
با توجه به اینکه هزینه Google BigQuery کاملا بر اساس میزان مصرف شما محاسبه میشود، در هنگام برآورد هزینهها، عمدتا فقط سه جنبه اصلی در مورد ذخیره سازی دادههای BigQuery خود باید در نظر بگیرید: ذخیره سازی داده (Storage Data)، ذخیره سازی بلندمدت داده (Long Term Storage Data) و پردازش کوئری (Query Data Usage). صفحه رسمی هزینه بیگ کوئری شامل جزئیات و اطلاعات مفید بسیار بیشتری است که حتما باید آن را بررسی کنید، در این راهنما به طور خلاصه هر یک از این سه عنصر قیمت گذاری را برای برآورد هزینه های ماهانه خود بررسی خواهیم کرد.
برای خرید دوره 9 ساعته آموزش بیگ کوئری، روی لینک کلیک کنید و فرم موجود را تکمیل کنید. در سریع ترین زمان ممکن به شما تماس میگیرم 🙂
تاثیر هزینه ذخیره سازی بر قیمت استفاده از BigQuery
هزینههای ذخیره سازی معمولا به صورت ماهانه برای دادههایی که در جداول یا پارتیشنهای BigQuery ذخیره شدهاند و فعال هستند، محاسبه میشود. منظور از دادههای فعال، دادههایی است که در 90 روز گذشته تغییر کردهاند. اگر در 90 روز گذشته هیچ تغییری در جداول یا پارتیشنهای BigQuery خود ایجاد نکردهاید، میتوانید با کاهش 50 درصدی هزینه ها، همچنان داده های خود را در انبار داده بیگ کوئری داشته باشید.
هنگام استفاده از API های ذخیره سازی BigQuery، بسته به حجم دادههای ورودی ممکن است نیاز به پرداخت هزینه باشد. در این صورت هزینه هر 200 مگابایت داده ورودی که با موفقیت در بیگ کوئری ذخیره می شود، 0.01 دلار است.
تاثیر هزینه کوئری بر قیمت هزینه استفاده از بیگ کوئری
در حالت قیمت گذاری بر اساس میزان مصرف (On-Demand Pricing)، هزینه بر اساس حجم داده پردازش شده کوئریهایتان محاسبه میشود. برای کوئریهای ناموفق یا کوئریهایی که از حافظه کش بارگذاری شدهاند، هزینه پرداخت نمیکنید. علاوه بر این، اولین 1 ترابایت داده کوئری پردازش شده در هر ماه رایگان است. همچنین، قیمتها بر اساس منطقه جغرافیایی که هنگام ساخت پروژه در بیگ کوئری تعیین کرده اید، متفاوت است.
به عنوان مثال، انتخاب بمبئی (asia-south1) به عنوان مکان ذخیره سازی 0.023 دلار به ازای هر گیگابایت هزینه از شما دریافت میکند، در حالی که با انتخاب ایالات متحده (چند منطقه ای) (ایالات متحده) یا اتحادیه اروپا (چند منطقه) (اروپا) 0.02 دلار به ازای هر گیگابایت باید هزینه پرداخت کنید.
در حالت قیمت گذاری با نرخ ثابت (Flat-Rate Pricing)، بدون توجه به حجم داده پردازش شده توسط کوئریهایتان، هزینه ثابتی را پرداخت میکنید. این گزینه قیمتی برای مشتریانی ایدهآل است که به هزینه ماهانه قابل پیش بینی با بودجه مشخص نیاز دارند. برای بهره مندی از قیمت گذاری با نرخ ثابت، باید اسلاتهای BigQuery را خریداری کنید که در ادامه به بررسی آن خواهیم پرداخت.
هزینه ذخیره سازی داده در بیگ کوئری چقدر است؟
هزینه ذخیره سازی به فضایی که برای نگهداری اطلاعات خود در BigQuery نیاز دارید اشاره دارد. شما برای هر دو نوع ذخیره سازی فعال و بلندمدت هزینه پرداخت می کنید.
ذخیره سازی فعال: هر جدول یا پارتیشنی از یک جدول که در 90 روز گذشته به روز شده باشد، ذخیره سازی فعال در نظر گرفته می شود. در حال حاضر، BigQuery برای ذخیره سازی فعال، هزینه ماهانه ثابتی معادل 0.02 دلار به ازای هر گیبی بایت در ماه دریافت می کند. هزینه ذخیره سازی فیزیکی فعال نیز 0.04 دلار به ازای هر گیگابایت در ماه است. 10 گیبی بایت اولیه هر ماه رایگان است. بنابراین، اگر یک جدول 200 گیبی بایتی را برای یک ماه نگه داریم، هزینه آن (200 * 0.02) = 4 دلار خواهد بود.
توجه: با احتساب 10 گیگابایت رایگان هر ماه، کاربر با 4 دلار مجموعا 210 گیگابایت دریافت خواهد کرد.
برای مثال، ذخیره سازی بلندمدت یک جدول 200 گیبی بایتی برای یک ماه (200 * 0.01) = 2 دلار هزینه خواهد داشت. اگر جدول به روز شود، به ذخیره سازی فعال تبدیل می شود و دوره 90 روزه مجددا از ابتدا شروع می شود.
ذخیره سازی بلندمدت: هر جدول یا پارتیشنی از یک جدول که در 90 روز گذشته به روز نشده باشد، ذخیره سازی بلندمدت در نظر گرفته می شود. پس از 90 روز، قیمت داده های ذخیره سازی 50 درصد کاهش می یابد. هزینه ذخیره سازی منطقی بلندمدت 0.01 دلار به ازای هر گیگابایت در ماه است. هزینه ذخیره سازی فیزیکی بلندمدت، بیشتر بوده و 0.02 دلار به ازای هر گیگابایت در ماه است. 10 گیگابایت اولیه هر ماه رایگان است.برای مثال، ذخیره سازی بلندمدت یک جدول 200 گیبی بایتی برای یک ماه (200 * 0.01) = 2 دلار هزینه خواهد داشت. اگر جدول به روز شود، به ذخیره سازی فعال تبدیل می شود و دوره 90 روزه مجددا از ابتدا شروع می شود.
برای مثال، ذخیره سازی بلندمدت یک جدول 200 گیبی بایتی برای یک ماه (200 * 0.01) = 2 دلار هزینه خواهد داشت. اگر جدول به روز شود، به ذخیره سازی فعال تبدیل می شود و دوره 90 روزه مجددا از ابتدا شروع می شود.
1 گیبی بایت (gibibyte) معادل 1.1 گیگابایت (gigabyte)
عملکرد، پایداری داده و دسترسی در هر دو نوع ذخیره سازی فعال و بلندمدت یکسان است.
هزینه BigQuery به ازای هر ۱ ترابایت
حجم دادههای ذخیره شده و دادههای پردازش شده توسط کوئریهای شما بر حسب گیبیبایت (GiB) اندازهگیری میشود. اگر هزینه هر گیگابایت فضای ذخیرهسازی ۰.۰۲ دلار باشد و ۱ ترابایت تقریباً معادل ۱,۰۰۰ گیگابایت (۹۳۱.۳۲۳) باشد، در این صورت هزینه ۱ ترابایت ۲۰ دلار خواهد بود.
برای محاسبه هزینه ۵ ترابایت، به سادگی مقدار داده را در ۱۰۰۰ (برای تبدیل به گیبیبایت) ضرب میکنیم، سپس حاصل را در ۰.۰۲ دلار به ازای هر گیگابایت ضرب میکنیم.
۵ ترابایت * ۱۰۰۰ = ۵,۰۰۰ گیبیبایت
۵,۰۰۰ گیبیبایت * ۰.۰۲ دلار = ۱۰۰ دلار
حجم ذخیره سازی أنواع داده در بیگ کوئری
همانطور که گفته شد، هزینه بر اساس میزان داده ای که در BigQuery قرار می دهید محاسبه می شود. برای تعیین حجم کل داده های خود، باید بدانید که حجم أنواع داده ای که در بیگ کوئری ذخیره می شود، داده چقدر است..در ادامه حجم انواع داده های موجود در BigQuery آورده شده است:
نوع داده | اندازه |
INT64 | 8 بایت |
FLOAT | 8 بایت |
NUMERIC | 16 بایت |
Bool | 1 بایت |
STRING | 2 بایت |
Date | 8 بایت |
Datetime | 8 بایت |
Time | 8 بایت |
Timestamp | 8 بایت |
Interval | 16 بایت |
جدول هزینه ذخیره داده به ازای هر 1 گیگابایت در بیگ کوئری
نوع ذخیره سازی | قیمت | سطح رایگان |
ذخیره سازی منطقی فعال | 0.02 دلار به ازای هر گیگابایت | 10 گیگابایت اول هر ماه رایگان است |
ذخیره سازی فیزیکی فعال | 0.04 دلار به ازای هر گیگابایت | 10 گیگابایت اول هر ماه رایگان است |
ذخیره سازی منطقی بلندمدت | 0.01 دلار به ازای هر گیگابایت | 10 گیگابایت اول هر ماه رایگان است |
ذخیره سازی فیزیکی بلندمدت | 0.02 دلار به ازای هر گیگابایت | 10 گیگابایت اول هر ماه رایگان است |
تحلیل ساختار قیمت گذاری کوئری در Google BigQuery
در BigQuery، از قیمت گذاری تحلیلی برای محاسبه هزینه اجرای کوئریها (شامل کوئریهای SQL، توابع تعریفشده توسط کاربر و اسکریپتها) و همچنین قیمت گذاری ذخیرهسازی برای محاسبه هزینه ذخیره دادههایی که در BigQuery بارگذاری میکنید، استفاده میشود.
BigQuery دو مدل قیمتگذاری مجزا برای انتخاب کاربران هنگام اجرای کوئری ارائه میدهد. این مدل های قیمتی به شرح زیر هستند:
قیمت گذاری بر اساس تقاضا (On-demand pricing)
در قیمتگذاری بر اساس تقاضا، شما بر اساس اندازه هر کوئری و تعداد بایتهایی که توسط هر کوئری مدیریت میشود، هزینه پرداخت میکنید. در صورت عدم اجرای کوئری، هیچ هزینهای از شما دریافت نمیشود. برای تمام کاربران، اولین ترابایت داده کوئری پردازش شده در هر ماه رایگان ارایه میشود.
قیمت گذاری با نرخ ثابت (Flat-rate pricing)
با رویکرد قیمتگذاری با نرخ ثابت، صرف نظر از حجم دادههایی که کوئریهای شما اشغال میکنند، هزینه ثابتی را پرداخت میکنید. این بهترین انتخاب قیمت گذاری برای کاربرانی است که یک هزینه ماهانه ثابت را در محدودیت هزینه تعیین شده میخواهند. دسترسی کاربران به قیمت گذاری با نرخ ثابت با خرید اسلاتهای BigQuery، که اساسا CPUهای مجازی مورد استفاده BigQuery برای اجرای کوئریهای SQL هستند، امکان پذیر است. ظرفیت اسلات اختصاصی که خریداری میکنید، میزان قدرت پردازش اختصاصیافته برای تمام کوئریهای شما در هر زمان خاص را تعیین میکند، نه برای هر کوئری به صورت جداگانه. اگر درخواستهای شما از ظرفیت اختصاصی شما فراتر رود، BigQuery واحدهای کاری را به صف انتظار میفرستد و منتظر میشود تا اسلاتها در دسترس قرار گیرند.با پیشرفت پردازش کوئری و در دسترس قرار گرفتن اسلاتها، واحدهای کاری صف انتظار به صورت پویا برای اجرا انتخاب میشوند و هیچ هزینه اضافی دریافت نمیشود.
اسلاتها در هر دو قیمت گذاری بر اساس تقاضا و با نرخ ثابت استفاده میشوند، اما رویکرد با نرخ ثابت کنترل خاصی بر اسلاتها و ظرفیت تجزیه و تحلیل به شما ارائه میدهد. به عنوان مثال، در قیمت گذاری با نرخ ثابت، میتوانید انتخاب کنید که اسلاتها را برای موارد زیر رزرو کنید:
- ۶۰ ثانیه: اسلاتهای انعطافپذیر
- ماهانه: ۳۰ روز
- سالانه: ۳۶۵ روز
شما همیشه میتوانید این دو مدل را برای برآورده کردن نیازهای خاص خود ترکیب کنید. با قیمت گذاری بر اساس تقاضا، هزینه آنچه مصرف میکنید را پرداخت میکنید، در حالی که با قیمت گذاری با نرخ ثابت، در ازای یک برنامه بلندمدت، ظرفیت تضمین شدهای را با هزینه کمتری دریافت میکنید.
چه عواملی بر هزینه ذخیره داده در بیگ کوئری تاثیر میگذارند؟
هنگام استفاده از BigQuery با GA4، سه نوع هزینه اصلی وجود دارد که ممکن است متحمل شوید: ذخیره سازی، محاسبات و دریافت داده. این ابزار محاسبه بر ارائه تخمین هزینه ذخیره سازی به شما تمرکز دارد، که جزء کلیدی هزینه کلی BigQuery شما خواهد بود.
هزینه ای که برای ذخیره سازی پرداخت می کنید به میزان داده، مدت زمان ذخیره سازی و مکان ذخیره سازی بستگی دارد. 10 گیگابایت اول ذخیره شده در هر ماه رایگان است، بنابراین بسیاری از سایت های کوچک ممکن است اصلاً هزینه ای پرداخت نکنند.
برای مناطق ایالات متحده (ایالات متحده) و اروپا (اتحادیه اروپا) هر گونه داده ای بالاتر از 10 گیگابایت برای هر گیگابایت در ماه برای ذخیره سازی فعال (هر جدولی که در 90 روز گذشته اصلاح شده است) 0.02 دلار یا برای ذخیره سازی بلندمدت (هر جدولی که برای بیش از 90 روز اصلاح نشده است) 0.01 دلار در ماه محاسبه می شود. ممکن است سایر مناطق قیمت گذاری کمی متفاوتی داشته باشند، به عنوان مثال برای منطقه لندن (اروپا-غرب2) قیمت 0.023 دلار در هر گیگابایت در ماه برای فعال و 0.016 دلار در هر گیگابایت در ماه برای ذخیره سازی بلندمدت است. برای مشاهده قیمت فعلی هر منطقه می توانید به اینجا: BigQuery Pricing مراجعه کنید.
میزان داده ای که در BigQuery ذخیره می کنید به تعداد ایونت هایی که توسط پراپرتی GA4 شما جمع آوری می شود و میزان داده ای که با آن ایونت ها جمع آوری می شود بستگی دارد. اگر با هر ایونت پارامترهای زیادی ارسال میکنید یا ایونت های ایکامرسی را با تعداد زیادی آیتم در هر رویداد جمعآوری میکنید، جداول شما بسیار بزرگتر از سایتی خواهند بود که فقط تنظیمات پیاده سازی آنالیتیکس 4 را انجام داده است.
گوگل تخمین می زند که 1 گیگابایت تقریباً معادل 600 هزار رویداد است، اما در بین پراپرتی های مختلف، این رقم از 800 هزار تا 1.6 میلیون متغیر است.
چگونه با استفاده از ماشین حساب هزینه BigQuery، هزینههای خود را برآورد کنیم؟
قیمتگذاری بر اساس تقاضا (On-demand Pricing)
- به صفحه اصلی کنسول BigQuery خود بروید.
- هنگام وارد کردن یک کوئری، اعتبارسنج کوئری (علامت تیک سبز) آن را تأیید میکند و تخمین میزند که چند بایت پردازش کند.
همانطور که در تصویر مشاهده میکنید، این کوئری برای اجرا تقریباً 10.07 MB فضا برای پردازش نیاز دارد.
- گام بعدی دسترسی به ماشین حساب قیمتگذاری GCP است. BigQuery را به عنوان محصول خود و قیمتگذاری بر اساس تقاضا را به عنوان روش قیمتگذاری خود انتخاب کنید. فرم موجود در صفحه را با تمام اطلاعات لازم، همانطور که در تصویر نشان داده شده است، تکمیل کنید.
اگر هنوز ۱ ترابایت رایگان ماهانه خود را تمام نکرده باشید، هزینه اجرای کوئری صفر است. با این حال، اگر نیاز دارید این کوئری را هر روز برای ماه آینده اجرا کنید؛ قطعا مقدار پردازش رایگان هر ماه را رد خواهید کرد و باید هزینه پرداخت کنید. برای محاسبه این هزینه باید مقدار مورد نیاز برای پردازش کوئری را در 30 ضرب کنید.
چگونه هزینه ذخیره سازی و اجرای کوئری در BigQuery را برآورد کنیم؟
برای محاسبه هزینه ذخیره سازی و اجرای کوئری در BigQuery، ابتدا باید اطلاعات لازم برای تخمین هزینه ها را جمع آوری کنیم:
- تعداد کاربران (Number of Users)
- تعداد کوئری در روز (Number of Queries)
- میانگین حجم دیتای مصرفی (Average Data Usage)
به عنوان مثال، فرض کنید 10 کاربر در روز از دیتایی که از آنالیتیکس به بیگ کوئری انتقال داده شده است، استفاده میکنند. به طوری که هر کاربر روزانه پنج کوئری با میانگین مصرف داده 2 گیگابایت برای هر کوئری اجرا می کند. ما هزینه را بر اساس ماه (فرض می کنیم 30 روز) محاسبه می کنیم.
با استفاده از این پارامترها، می توانیم با یک محاسبه ساده، هزینه ماهانه متوسط خود را با BigQuery تخمین بزنیم.
کل حجم کوئری دیتا در ماه:
10 کاربر در روز * 5 کوئری در روز * 2 گیگابایت در کوئری * 30 روز = 3000 گیگابایت = 3 ترابایت
محاسبه هزینه ذخیره سازی BigQuery:
در زمان نگارش این متن، هزینه ذخیره سازی برای 1 ترابایت داده حدود 20 دلار است (قیمت دقیق بستگی به منطقه انتخابی شما دارد). بنابراین، برای به دست آوردن هزینه ذخیره سازی در هر ماه، به سادگی 3 ترابایت را در 20 دلار ضرب می کنیم.
3 ترابایت * 20 دلار در هر ترابایت = 60 دلار
محاسبه هزینه اجرای کوئری بر اساس میزان مصرف (On-Demand):
با استفاده از همان داده های کوئری، قیمت پردازش 1 ترابایت داده 5 دلار است. بنابراین، برای به دست آوردن هزینه اجرای کوئری بر اساس میزان مصرف در هر ماه، به سادگی 3 ترابایت را در 5 دلار ضرب می کنیم.
3 ترابایت * 5 دلار در هر ترابایت = 15 دلار
این قیمت ممکن است کاهش یابد، به شرطی که از 1 ترابایت فضای ذخیره سازی رایگان ماهانه خود استفاده نکرده باشید.
هزینه پردازش 1 ترابایت داده در BigQuery چقدر است؟
برای قیمت گذاری بر اساس میزان مصرف (On-Demand)، هزینه پردازش 1 ترابایت داده 6.25 دلار است.
هزینه اجرای یک کوئری 12 گیگابایتی در BigQuery چقدر است؟
12 گیگابایت تقریباً معادل 0.01288 ترابایت است. از آنجایی که هزینه پردازش 1 ترابایت 6.25 دلار است، هزینه اجرای یک کوئری 12 گیگابایتی به شرح زیر محاسبه می شود:
6.25 دلار در هر ترابایت * 0.01288 ترابایت = 0.08 دلار
هزینه اجرای یک کوئری 100 گیگابایتی در BigQuery چقدر است؟
100 گیگابایت تقریباً معادل 0.107 ترابایت است. برای محاسبه هزینه اجرای یک کوئری 100 گیگابایتی، محاسبه زیر را انجام می دهیم:
6.25 دلار در هر ترابایت * 0.107 ترابایت = 0.66 دلار
آیا استفاده از ویوها (Views) در BigQuery هزینه اضافی دارد؟
خیر. جداول مجازی (Virtual Tables) با استفاده از کوئری های SQL به عنوان ویو تعریف می شوند. به همان روشی که می توانید روی یک کوئری بزنید، می توانید همین کار را با ویوها نیز انجام دهید. ویوها ممکن است فقط داده هایی را از جداول و فیلدهایی ارائه دهند که توسط کاربر هنگام اجرای کوئری درخواست می شود. بنابراین افزودن یا حذف یک ویو هیچ هزینه ای ندارد.
بهینه سازی هزینه BigQuery
به عنوان یک متخصص پرفورمنس مارکتینگ، بهینه سازی هزینه در BigQuery اهمیت زیادی دارد. فرقی نمی کند که داده های خود را از طریق آنالیتیکس 4 یا از Google Sheets وارد BigQuery کنید، رعایت برخی نکات برای بهینه سازی هزینه در BigQuery ضروری است. این موارد عبارتند از:
- *استفاده بهینه از عبارت SELECT : در کوئری های خود از عبارت
SELECT *
کمتر استفاده کنید و فقط اطلاعات مورد نیاز خود را درخواست نمایید. - استفاده از قابلیت پیش نمایش BigQuery: هنگامی که می خواهید نمونه کوچکی از داده های خود را ببینید، به جای اجرای یک کوئری برای مشاهده بخش کوچکی از داده ها، از قابلیت پیش نمایش BigQuery استفاده کنید.
- بررسی هزینه ها قبل از اجرا: قبل از اجرای هر کوئری یا فعالیت ذخیره سازی، با استفاده از ابزار محاسبه گر قیمت GCP (Google Cloud Platform Price Calculator)، هزینه های مرتبط را بررسی کنید.
- تقسیم کوئری به بخش های کوچکتر: اگر قصد دارید روی یک مجموعه داده بزرگ پرس و جو انجام دهید، کوئری خود را به بخش های کوچکتر تقسیم کنید. اجرای تک تک کوئری های کوچکتر بهتر است. این کار باعث کاهش حجم داده هایی که باید خوانده شوند و در نتیجه صرفه جویی در هزینه می شود.
گوگل ادز یکی از ابزارهای تبلیغاتی محبوب است که توسط بیزینسهای کوچک تا بزرگ برای تبلیغ محصولات و خدمات استفاده می شود. اما گوگل ادز نمی تواند اطلاعات زیادی در مورد کمپین های تبلیغاتی شما ارائه دهد. بنابراین، شما باید داده های خود را از گوگل ادز به بیگ کوئری، یک انبار داده ابری کاملا مدیریت شده و نسبتا کم هزینه، منتقل کنید. با انتقال داده های خود از گوگل ادز به بیگ کوئری، می توانید چندین تحلیل داده انجام دهید تا اطلاعات مفید دوره ای یا زمان واقعی برای بهینه سازی کمپین های خود بدست اورید. در این راهنما، ما به قدم فرآیند انتقال داده های گوگل ادز به بیگ کوئری را با استفاده از چند روش ساده بررسی خواهیم کرد.
مقدمهای بر گوگل ادز
گوگل ادز یکی از پلتفرمهای تبلیغات آنلاین پرکاربرد است که به شما امکان میدهد تا خدمات و محصولات خود را تبلیغ کنید. این پلتفرم گزینههای متنوعی برای هدفگیری مخاطبان دارد تا آگهیهای محصول یا خدمات توسط مخاطبین مرتبط در زمان درست مشاهده شوند. شما میتوانید از گوگل ادز برای نمایش تبلیغات از طریق تصاویر، تماس تلفنی، متن و ویدئو، بسته به کمپین تبلیغاتی و هدف خود استفاده کنید. برای بهبود عملکرد، گوگل ادز از قابلیت تبلیغات ریسپانسیو و از دستگاههای مختلف مانند دسکتاپ، موبایل، تلویزیون و غیره پشتیبانی میکنند.
علاوه بر این، گوگل ادز ابزارهای جامع تحلیلی و گزارشدهی ارائه میدهد که اطلاعات مفیدی در مورد عملکرد کمپینهای تبلیغاتی در اختیارتان قرار میدهد. برای سنجش اثربخشی کمپینهای تبلیغاتی خود، میتوانید معیارهایی مانند دسترسی، نرخ کلیکها (CTR)، نرخ تبدیل و بازگشت سرمایه (ROI) را ردیابی کنید. همچنین این فرصت را در اختیار شما قرار میدهد که با دقت بودجه خود را کنترل کنید و حداکثر بودجه روزانه یا ماهانه را برای مدیریت موثر هزینههای تبلیغاتی خود تعیین کنید.
مقدمهای بر بیگ کوئری
گوگل بیگ کوئری، یک انبار دادههای بدون سرور و پلتفرم تحلیلی است که توسط گوگل کلود ارائه میشود. بیگ کوئری به عنوان یک انبار دادههای آماده، امکان ذخیرهسازی و استخراج گزارش های کاربردی از مجموعه دادههای بزرگ (بیگ دیتا) را برای بیزینس های مختلف در هر مقیاسی فراهم میآورد. برای مدیریت و تحلیل دادهها، بیگ کوئری از زبان SQL پشتیبانی میکند که این امر برای طیف وسیعی از متخصصان، فرآیند کار را بدون درز میکند.
علاوه بر این، به عنوان بخشی از گوگل کلود، بیگ کوئری به راحتی با سایر خدمات گوگل کلود مانند گوگل کلود استوریج، گوگل شیتس و گوگل دیتا استودیو یکپارچه میشود. این یکپارچگی، جذب سریع دادهها، ذخیرهسازی و تجسم آنها را فراهم میکند و یک اکوسیستم تحلیلی جامع را ارائه میدهد.
بیگ کوئری همچنین با پشتیبانی از تحلیل دادههای زمان واقعی از طریق جذب دادههای جاری، به شما کمک میکند تا بینشهای لحظهای را به دست آورید و تصمیمات مبتنی بر داده را به سرعت اتخاذ کنید.
روش های اتصال گوگل ادز به بیگ کوئری
روشهای متنوعی برای ادغام دادههای گوگل ادز با بیگ کوئری گوگل وجود دارد. در ادامه برخی از رایجترین روشهای استفاده شده برای انتقال دادهها از گوگل ادز به بیگ کوئری را به شما عزیزان آموزش میدهیم.
- روش ۱: بارگذاری دستی دادهها از گوگل ادز به بیگ کوئری با استفاده از فایلهای CSV . این روش شامل استخراج دادهها از گوگل ادز به صورت فایل CSV و سپس بارگذاری آنها در بیگ کوئری است. این فرآیند میتواند به صورت دستی انجام شود و یک روش مستقیم برای اتصال گوگل ادز به بیگ کوئری است.
- روش ۲: بارگذاری دادهها از گوگل ادز به بیگ کوئری با استفاده از سرویس انتقال داده بیگ کوئری. سرویس انتقال داده بیگ کوئری گوگل امکان اتوماتیک کردن فرآیند انتقال دادهها را فراهم میآورد. این روش به کاربران اجازه میدهد تا دادهها را به صورت خودکار و بدون دخالت دستی از گوگل ادز به بیگ کوئری منتقل کنند.
بارگذاری دستی دادهها از گوگل ادز به بیگ کوئری با استفاده از فایلهای CSV
اگر به دنبال روشی فوری برای انتقال دادهها از گوگل ادز به بیگ کوئری هستید، استفاده از فایلهای CSV گزینه مناسبی است. تنها کاری که لازم است انجام دهید، خروجی گرفتن از دادههای گوگل ادز به صورت فایلهای CSV و سپس بارگذاری این فایلها در بیگ کوئری است.
مرحله 1: وارد حساب گوگل ادز خود شوید و از گزارش تبلیغات یا کمپینی که میخواهید تحلیل کنید، خروجی بگیرید. میتوانید این گزارش را با تنظیم بخشها، فیلدها، تاریخ و زمانی که میخواهید در فایل CSV خود خروجی بگیرید، سفارشی سازی کنید.
مرحله 2: پس از انتخاب گزارش مورد نظر، روی دکمه دانلود واقع در سمت راست صفحه کلیک کنید. یک پنجره بازشو ظاهر میشود، فرمت فایل را به عنوان CSV برای دانلود فایل انتخاب کنید.
مرحله 3: حالا، فایل CSV شما آماده بارگذاری در انبار دادههای بیگ کوئری است. پیش از بارگذاری دادهها در بیگ کوئری، مطمئن شوید که یک دیتاست بیگ کوئری برای ذخیره دادههای خود دارید. سپس، میتوانید دادههای CSV را در یک جدول بیگ کوئری جدید بارگذاری کنید.
هر چند این روند به طور کلی ساده است، اما با محدودیتهای تاخیر و آسیبپذیری به خطاها همراه است.
بارگذاری گوگل ادز به بیگ کوئری با استفاده از سرویس انتقال دادههای بیگ کوئری
روش دیگر برای انتقال اطلاعات گوگل ادز به بیگ کوئری، استفاده از سرویس انتقال دادههای بیگ کوئری است. این سرویس به طور خودکار زمانبندی، بارگذاری، و مدیریت دادههای مورد نیاز از گوگل ادز به جداول بیگ کوئری شما را به طور منظم انجام میدهد. قبل از انتقال گوگل ادز به بیگ کوئری، اطمینان حاصل کنید که دارای دسترسی های زیر هستید:
- دسترسی ادمین در بیگ کوئری.
- دسترسی حداقل read در حساب گوگل ادز.
- فعال کردن سرویس انتقال دادههای بیگ کوئری.
شما میتوانید اطلاعات گوگل ادز را به بیگ کوئری با استفاده از سرویس انتقال دادهها به چهار روش منتقل کنید:
- کنسول گوگل کلود
- ابزار خط فرمان bq
- API سرویس انتقال دادهها
- زبان برنامهنویسی جاوا
در این روش، ما از کنسول گوگل کلود برای انتقال دادهها از گوگل ادز به بیگ کوئری استفاده خواهیم کرد.
گام 1: وارد پلتفرم گوگل کلود شوید و صفحه بیگ کوئری را باز کنید.
گام 2: روی گزینه انتقال دادهها در سمت چپ پنل کلیک کنید.
گام 3: حالا روی گزینه Creat a Transfer کلیک کنید.
به صفحه ایجاد انتقال هدایت خواهید شد. در بخش نوع سورس، گوگل ادز را جستجو کنید.
گام 4: در بخش Transfer config name، نام منحصر به فردی برای این انتقال داده وارد کنید. سپس، در بخش گزینههای برنامهریزی، میتوانید زمانبندی انتقال خود را با انتخاب فرکانس و زمان شروع انتقال مشخص کنید.
الف) میتوانید فرکانس به روز شدن اطلاعات را تعیین کنید. میتوانید گزینههای روزانه (پیشفرض)، هفتگی، ماهانه، سفارشی، یا درخواستی را از جعبه کشویی تکرار انتخاب کنید.
ب) در گزینه دوم، میتوانید حالت هم اکنون شروع کنید تا یا روی گزینه شروع در زمان تعیین شده برای شروع فرآیند انتقال داده از گوگل ادز به بیگ کوئری کلیک کنید تا انتقال دادههای خود را زمانبندی کنید.
گام 5: در بخش Destination settings، دیتاست مورد نظر برای ذخیره دادههای گوگل ادز خود را ایجاد کنید یا انتخاب کنید.
گام 6: در بخش Data source details، کاستومر آیدی حساب گوگل ادز را وارد کنید.
گام 7: به طور پیشفرض، Refresh window به مدت 7 روز تنظیم شده است تا دادههای 7 روز گذشته را در هر انتقال وارد بیگ کوئری و بهروزرسانی کند. با این حال، میتوانید این مقدار را به 30 روز تغییر دهید.
گام 8: گزینههای اطلاعرسانی ایمیل را فعال کنید تا هر زمان که روند انتقال با مشکل رو به رو شود، اطلاعیه ایمیل دریافت کنید.
گام 9: روی دکمه ذخیره کلیک کنید.
نتیجهگیری
انتقال دادهها از گوگل ادز به بیگ کوئری به شما امکان انجام تحلیلهای پیشرفته از طریق ماشین لرنینگ و ابزارهای قدرتمند تصویرسازی را فراهم میکند. تمامی روشهایی که در این راهنما پوشش داده شدهاند، میتوانند به طور موثری دادههای گوگل ادز را با بیگ کوئری ادغام کرده و به شما کمک کنند تا تحلیل بهتری برای بهینهسازی کمپین تبلیغاتی خود انجام دهید.
در یکی از به روز رسانی های مربوط به اتصال بیگ کوئری به آنالیتیکس ۴، بخشی به اسم user data به آنالیتیکس ۴ در قسمت اتصال به بیگ کوئری اضافه شد. همانطور که در توضیحات این بخش نوشته شده است، با انتخاب این گزینه، به اطلاعات مرتبط با کاربر در بیگ کوئری به صورت خام دسترسی خواهید داشت. این اطلاعات از طریق جدول هایی به اسم pseudonymous_users_( number of days) و users_(number of days) در بیگ کوئری در دسترس هستند. برای آشنایی بیشتر با این جداول در بیگ کوئری در ادامه این مطلب همراه من باشید.
جدول pseudonymous_users در داده های آنالیتیکس ۴ در بیگ کوئری چیست؟
اگر قبل از این آنالیتیکس ۴ را به بیگ کوئری وصل کرده باشید، حتما میدانید که بعد از اتصال این دو ابزار به یک دیگر، اطلاعات مربوط به هر یک از ایونت های انجام شده توسط کاربر در سایت یا اپلیکیشن در بیگ کوئری از طریق جدولی به اسم events_ یا events_intraday_ در اختیار شما قرار داده می شود. احتمالا این سوال برای شما مطرح می شود که تفاوت این جدول ها با جداول events چیست؟
به طور کلی میتوان گفت که مزیت استفاده از جدول های نسبت به جدول های …، دسترسی به اطلاعات بیشتری از کاربران است. درواقع در این جدول ها شما به اطلاعاتی همچون audience ، prediction data، موقعیت جغرافیایی، دیوایس و … دسترسی دارید که در جدول های مربوط به ایونت در دسترس نیست.
همانطور که در اسکیمای جداول در بیگ کوئری میتوانید مشاهده کنید، میتوانید مشاهده کنید که کاربران سایت به کدام یک از سگمنت هایی که در آنالیتیکس ۴ ساخته اید، تعلق دارند. در نتیجه میتوانید از این اطلاعات برای استفاده در ابزارهایی به غیر از ابزارهای گوگل برای ری تارگتینگ استفاده کنید.
نام فیلد | نوع داده | توضیحات |
audiences | RECORD | اطلاعات audience |
audiences.id | INTEGER | آیدی audience |
audiences.name | STRING | اسم audience |
audiences.membership_start_timestamp_micros | INTEGER | زمانی که کاربر برای اولین بار در این audience قرار گرفت (بر حسب میکروثانیه) |
audiences.membership_expiry_timestamp_micros | INTEGER | زمانی که عضویت کاربر در این گروه مخاطبی منقضی میشود (برحسب میکروثانیه). |
audience.npa | BOOLEAN | درست یا نادرست بر اساس تنظیمات NPA شما برای ایونت و custom dimensions یوزر اسکوپ |
نام فیلد | نوع داده | توضیحات |
predictions | RECORD | اطلاعات پیش بینی |
predictions.in_app_purchase_score_7d | DOUBLE | احتمال اینکه کاربری که در 28 روز گذشته فعال بوده است، یک رویداد in_app_purchase را طی 7 روز آینده انجام دهد |
predictions.purchase_score_7d | DOUBLE | احتمال اینکه کاربری که در 28 روز گذشته فعال بوده است، یک ایونت خرید را طی 7 روز آینده انجام دهد. |
predictions.churn_score_7d | DOUBLE | احتمال اینکه کاربری که در ۷ روز گذشته در اپلیکیشن یا سایت شما فعال بوده است، در ۷ روز آینده فعال نخواهد بود. |
predictions.revenue_28d_in_usd | FLOAT | درآمد مورد انتظار (به دلار آمریکا) از همه ایونت های خرید در 28 روز آینده توسط کاربری که در 28 روز گذشته فعال بوده است. |
جدول pseudonymous_users در بیگ کوئری شامل چه اطلاعاتی می شود؟
در این جدول اطلاعات تمام کاربران سایت شما که یوزر آیدی ندارند، وجود دارد. اطلاعات این جدول هر زمان که اطلاعات مربوط به کاربران تغییر کند، به روز می شود.
به خاطر داشته باشید که اطلاعات این جدول در بیگ کوئری، تنها یک بار در روز به روز می شود و امکان ارسال اطلاعات به صورت لایو یا استریم وجود ندارد.
pseudonymous_users_( number of days) به معنای اطلاعات تمام کاربرانی است که درواقع شبه یوزر هستند و توسط سایت شما یوزر آیدی به آنها اختصاص داده نشده است. عدد داخل پرانتز، به تعداد روزهایی که اطلاعات از آنالیتیکس ۴ به بیگ کوئری انتقال پیدا کرده است، اشاره دارد.
- در این جدول، هر ردیف به یک user_pseudo_id اختصاص دارد.
- زمانی که یکی از مقادیر فلیدهای جدول تغییر کند، اطلاعات جدول به روز می شود.
- اطلاعات کاربرانی که با قوانین کوکی اعلام موافقت نکرده اند، در این جدول در دسترس نیست.
- فیلد user_id در جدول pseudonymous_users_ در دسترس نیست.
- در هر ردیف یک timestamp است که به آخرین زمانی که کاربر اکتیو بوده است، اشاره دارد.
منظور از شبه یوزر چیست؟
زمانی که کاربر برای اولین بار وارد سایت شما می شود، آنالیتیکس برای ردیابی کاربر، یک آیدی منحصر به فرد به ان اختصاص می دهد. تا زمانی که کاربر کوکی خود را پاک نکند و تا یک مدت زمان مشخص، آنالیتیکس کاربر را از طریق همین کلاینت آیدی، شناسایی و ردیابی می کند.
در حال حاضر آنالیتیکس ۴ برای شناسایی کاربر از روش های زیر استفاده می کند:
- User ID: در صورتی که یک سایت قابلیت ثبت نام یا لاگین داشته باشد، میتوان به کاربری که داخل سایت ثبت نام میکند، یک آیدی منحصر به فرد اختصاص داد و این آی دی را برای آنالیتیکس ۴ ارسال کرد. این روش، بهترین و شاید دقیق ترین روش ردیابی کاربران است. اما با توجه به اینکه تمام سایتها قابلیت لاگین ندارند، برای همه قابل استفاده نیست.
- Google Signals: در صورتی که کاربر در دیوایس های مختلف وارد اکانت گوگل خود شده باشد، آنالیتیکس میتواند از این طریق کاربر را شناسایی کرده و اطلاعات مربوط به آن را به صورت یکپارچه در اختیار شما قرار دهد.
- Device ID: اگر آنالیتیکس قادر به استفاده از دو روش قبلی نباشد، از این روش برای شناسایی و ردیابی کاربران استفاده می کند. این روش نسبت به روش های قبلی دقت کمتری دارد چون اگر کاربر از چند دیوایس برای مراجعه به سایت شما استفاده کند، به اشتباه چندین بار شمرده می شود.
جدول users در داده های آنالیتیکس ۴ در بیگ کوئری چیست؟
این جدول حاوی اطلاعات شبه یوزرهایی است که توسط سایت شما یک یوزر آیدی به آنها اختصاص داده شده است.
مهمترین نکاتی که در خصوص این جدول ها باید در نظر داشته باشید، عبارت هستند از:
- در صورتی که سایت شما قابلیت لاگین نداشته باشد یا یوزر ترکینگ انجام نشده باشد، این جدول در بیگ کوئری ایجاد نخواهد شد.
- در صورتی که چک باکس ارسال طالاعات به صورت روزانه را هنگام اتصال آنالیتیکس ۴ به بیگ کوئری نزده باشید، این اطلاعات در بیگ کوئری در دسترس نخواهند بود.
- در صورتی که یک وب سایت اروپایی دارید و کاربر با قوانین کوکی اعلام موافقت نکرده باشد، اما توسط سایت شما دارای یک یوزر آی دی اختصاصی باشد، اطلاعات کاربر در جدول users در دسترس خواهد بود.
چه اطلاعاتی در جدول users_ وجود دارد؟
- در این جدول، هر ردیف به یک user_ id اختصاص دارد.
- زمانی که یکی از مقادیر فلیدهای جدول تغییر کند، اطلاعات جدول به روز می شود.
- اطلاعات کاربرانی که با قوانین کوکی اعلام موافقت نکرده اند، در این جدول در دسترس هست.
- فیلد user_pseudo_id در جدول users_ در دسترس نیست.
- در هر ردیف یک timestamp است که به آخرین زمانی که کاربر اکتیو بوده است، اشاره دارد.
بیگ کوئری از چهار گروه تابع مربوط به تاریخ و زمان DATE، TIME، DATETIME، و TIMESTAMP پشتیبانی می کند. این 4 گروه شامل توابع خاصتری مانند CURRENT_DATETIME، DATE_SUB، EXTRACT، FORMAT_TIME و غیره هستند. این توابع به کاربران اجازه می دهد تا انواع دادههای مربوط به تاریخ و زمان را در BigQuery به راحتی استخراج و ویرایش کنند. به عنوان مثال، با استفاده از این توابع میتوان بخشی از عبارت تاریخ یا زمان را استخراج کرد، یک فاصله زمانی به تاریخ یا زمان اضافه کرد و غیره. با توجه به اینکه تنوع و کارکرد هریک از این توابع متنوع و گاها گیج کننده است، در این مطلب به بررسی توابع مربوط به تاریخ در بیگ کوئری و کاربرد هریک میپردازیم.
انواع دادههای مربوط به تاریخ و زمان در BigQuery
قبل از آنکه به بررسی انواع توابع مربوط به تاریخ و زمان در بیگ کوئری بپردازیم، بهتر است که با انواع داده در بیگ کوئری در رابطه با تاریخ و زمان آشنا شوید:
توابع DATE، TIME، DATETIME، و TIMESTAMP در BigQuery SQL
در زیر جدولی از چهار گروه تابع تاریخ و زمان در BigQuery و همچنین توابع فرعی آنها آورده شده است.
دریافت تاریخ امروز در بیگ کوئری
برای دریافت عبارت تاریخ یا زمان امروز می توانید از تابع CURRENT در BigQuery استفاده کنید. برای استفاده از این تابع، از ساختار زیر استفاده کنید:
CURRENT_DATE()
CURRENT_DATETIME()
CURRENT_TIMESTAMP()
CURRENT_TIME()
مثال زیر نحوه استفاده از تابع CURRENT_DATETIME را برای دریافت تاریخ امروز و زمان حال نشان می دهد.
نحوه تغییر فرمت تاریخ در بیگ کوئری
هنگامی که با دادههای مربوط به تاریخ و زمان سروکار دارید، ممکن است بخواهید فرمتی که داده در آن ظاهر میشود را با استفاده از تابع FORMAT تغییر دهید. به عنوان مثال، بعد از اتصال آنالیتیکس 4 به بیگ کوئری، در بخش اسکیمای جدول آنالیتیکس متوجه میشوید که اطلاعات مربوط به event_date به صورت رشته در بیگ کوئری ذخیره می شوند. با توجه به اینکه خروجی تابع FORMAT از جنس رشته است؛ به راحتی میتوانید از این تابع همراه با ستون event_date استفاده کنید.
برای استفاده از این تابع، از ساختار زیر استفاده کنید:
FORMAT_DATE(format_string, date)
FORMAT_DATETIME(format_string, datetime)
FORMAT_TIMESTAMP(format_string, timestamp,[timezone])
FORMAT_TIME(format_string, time)
در مثال زیر با استفاده از تابع FORMAT، نحوه نمایش تاریخ را تغییر دادهایم:
فرمت رشته “%x” تاریخ را به صورت MM/DD/YY نشان می دهد.
اضافه یا کم کردن تاریخ و زمان در بیگ کوئری
در BigQuery میتوانیم عملیاتی مانند اضافه کردن یک سال به تاریخ، کم کردن یک هفته، اضافه کردن یک ساعت یا دقیقه به یک زمان و غیره را اجرا کنیم.
اضافه کردن به تاریخ یا زمان در بیگ کوئری
برای اضافه کردن به تاریخ و زمان در BigQuery باید از دستورات زیر استفاده کنید:
DATE_ADD(date_expression, INTERVAL int64_expression date_part)
DATETIME_ADD(datetime_expression, INTERVAL int64_expression date_part)
TIMESTAMP_ADD(timestamp_expression, INTERVAL int64_expression date_part)
TIME_ADD(time_expression, INTERVAL int64_expression date_part)
- با استفاده از interval برای بیگ کوئری مشخص میکنیم که قصد داریم دیتای مربوط به تاریخ یا زمان را به چه صورتی تغییر دهیم.
- int64_expression حاوی مقادیری است که از (9,223,372,036,854,775,808- تا 9,223,372,036,854,775,807-) متغیر است.
- به جای بخش date_part میتوانید از یکی از مقادیر DAY، HOUR، MINUTE، SECOND، MILLISECOND، MICROSECOND، WEEK، QUARTER، MONTH و YEAR استفاده کنید.
به عنوان مثال، در کوئری زیر از تابع DATE_ADD برای اضافه کردن یک روز به تاریخ استفاده میکنیم:
کم کردن از تاریخ یا زمان در بیگ کوئری
برای کم کردن از تاریخ و زمان در BigQuery باید از دستورات زیر استفاده کنید:
DATE_SUB(date_expression, INTERVAL int64_expression part)
DATETIME_SUB(datetime_expression, INTERVAL int64_expression part)
TIMESTAMP_SUB(timestamp_expression, INTERVAL int64_expression part)
TIME_SUB(time_expression, INTERVAL int64_expression part)
- با استفاده از interval برای بیگ کوئری مشخص میکنیم که قصد داریم دیتای مربوط به تاریخ یا زمان را به چه صورتی تغییر دهیم.
- int64_expression حاوی مقادیری است که از (9,223,372,036,854,775,808- تا 9,223,372,036,854,775,807-) متغیر است.
- به جای بخش date_part میتوانید از یکی از مقادیر DAY، HOUR، MINUTE، SECOND، MILLISECOND، MICROSECOND، WEEK، QUARTER، MONTH و YEAR استفاده کنید.
به عنوان مثال، در کوئری زیر از تابع DATETIME_SUB برای کم کردن یک روز از تاریخ استفاده میکنیم:
نحوه گروه بندی تاریخ/زمان در BigQuery
هنگام ارزیابی دادههای تاریخ/زمان در BigQuery، میتوانیم دادههای خود را بر اساس بخشهای مختلف تاریخ مانند دقیقه، ساعت، روز، سال، هفته و غیره سازماندهی و گروهبندی کنیم. برای انجام این کار میتوانید از دستورات زیر استفاده کنید:
DATE_TRUNC(date_expression, date_part)
DATETIME_TRUNC(datetime_expression, date_part)
TIMESTAMP_TRUNC(timestamp_expression, date_part)
TIME_TRUNC(time_expression, date_ part)
- به جای بخش date_part میتوانید از یکی از مقادیر DAY، HOUR، MINUTE، SECOND، MILLISECOND، MICROSECOND، WEEK، QUARTER، MONTH، YEAR، DAYOFWEEK، DAYOFYEAR، ISOWEEK و ISOYEAR استفاده کنید.
در مثال زیر از تابع DATE_TRUNC برای برگرداندن اولین روز ماه استفاده میکنیم.
SELECT
DATE_TRUNC(DATE ‘2021-07-25’, MONTH) AS first_day_of_month;
علاوه بر این، به جای استفاده از تابع TRUNC، می توانید از تابع LAST DAY برای بدست آوردن آخرین روز هر date_part استفاده کنید.
LAST_DAY(date_expression, [date_part])
LAST_DAY(datetime_expression, [date_part])
مثال زیر از تابع LAST_DAY برای برگرداندن آخرین روز هفته که از یکشنبه شروع می شود استفاده می کند.
SELECT
LAST_DAY(DATETIME ‘2021-07-10 11:45:00’, WEEK(SUNDAY))
7-last-day
نحوه استخراج بخشی از تاریخ و زمان در بیگ کوئری
میتوانید بخشی از تاریخ را از داده تاریخ خود استخراج کنید، مانند بررسی زمان ورود کاربر یا بررسی آمار کلی ماهانه برای بررسی اینکه کدام ماهها فروش بیشتری دارند. برای اجرای چنین عملیاتی میتوانید از دستورات زیر استفاده کنید:
EXTRACT(part FROM date_expression)
EXTRACT(part FROM datetime_expression)
EXTRACT(part FROM timestamp_expression)
EXTRACT(part FROM time_expression)
- به جای بخش date_part میتوانید از یکی از مقادیر DAY، HOUR، MINUTE، SECOND، MILLISECOND، MICROSECOND، WEEK، QUARTER، MONTH، YEAR، DAYOFWEEK، DAYOFYEAR، ISOWEEK و ISOYEAR استفاده کنید.
مثال زیر از تابع EXTRACT برای برگرداندن مقدار دقیقه استفاده می کند.
SELECT
EXTRACT(MINUTE FROM DATETIME(“2020-12-25 15:30:00”)) as minute;
8-extract
چگونه تفاوت بین دو تاریخ یا زمان را بیگ کوئری محاسبه کنیم؟
برای محاسبه تفاوت بین دو تاریخ، میتوانید از دستورات زیر استفاده کنید:
DATE_DIFF(date_expression_a, date_expression_b, part)
DATETIME_DIFF(datetime_expression_a, datetime_expression_b, part)
TIMESTAMP_DIFF(timestamp_expression_a, timestamp_expression_b, part)
TIME_DIFF(time_expression_a,time_expression_b, part)
در مثال زیر از تابع DATE_DIFF برای محاسبه تفاوت ماه بین دو تاریخ استفاده شده است:
SELECT
DATE “2021-12-15 12:30:10” as first_date,
DATE “2021-07-15 17:45:33” as second_date,
DATE_DIFF(DATE “2021-12-15”,
DATE “2021-07-15”, MONTH) as month_difference;
9-date-diff
نحوه تبدیل انواع دادههای تاریخ و زمان در BigQuery
با تابع CAST میتوانید نوع یک داده را به یک نوع دیگر تبدیل کنیم. نحوه استفاده از تابع CAST به صورت زیر است:
CAST(expression AS datatype)
تبدیل رشته به تاریخ یا زمان
SELECT
CAST(’19:30:12′ AS TIME) AS time
10-cast-string
تبدیل datetime به date
SELECT
CAST(CURRENT_DATETIME() AS DATE);
11-cast-datetime-date
توجه: برای انجام این کار میتوانید از DATE(datetime expression) هم استفاده کنید.
عملگرهای موجود برای مقایسه تاریخ در بیگ کوئری
در BigQuery، گاهی اوقات ممکن است نیاز به مقایسه تاریخ و زمان برای انجام عملیاتی مانند دریافت دادههای هفته قبل یا در محدوده خاصی با استفاده از عملگرهای مختلف مقایسه داشته باشید:
<, <=, >, >=, = , != or <>, [NOT] BETWEEN, [NOT] LIKE, [NOT] IN
مثال زیر از عملگرهای >= و < برای دریافت تمام تاریخ های مشخص شده بین دو تاریخ استفاده می شود:
SELECT
date
FROM
(
SELECT
CAST(‘2021-07-02’ AS DATE) AS date
UNION ALL
( SELECT
CAST(‘2021-07-11’ AS DATE) AS date)
UNION ALL
( SELECT
CAST(‘2021-10-02’ AS DATE) AS date)
) AS table_3
WHERE
((date >= ‘2021-07-02’) AND (date < ‘2021-07-30’))
12-date-comparison
خدمات نصب و راه اندازی آنالیتیکس 4
قبل از شروع صحبت در مورد مهاجرت به آنالیتیکس 4، مهم است که تنظیمات GA فعلی شما را بررسی کنم. قبل از هرچیز من تمام ایونت ترکینگ هایی که انجام داده اید را بررسی میکنم. بعد از آن نوبت به بررسی تنظیمات آنالیتیکس شما میرسد. سپس بر اساس آنچه که میتوانید ردیابی کنید اما هنوز این کار را انجام نداده اید، پیشنهادات خودم را در اختیار شما قرار میدهم. بسیاری از مشتریان نمیدانند (یا مطمئن نیستند که چگونه باید ایونت ترکینگ را انجام دهند. بر اساس تجربه میگویم که بسیاری از صاحبان بیزینسهای مختلف نمیدانند که میتوانند به اطلاعاتی مانند تجزیه و تحلیل ویدیو، تراکنشها، پر کردن فرمها و حتی موارد دیگر با استفاده از GA4 دسترسی داشته باشند. اما جای نگرانی نیست؛ چون من این کار را به طور کامل برای شما انجام خواهم داد.
آموزش آنالیتیکس 4
ابزارهای تحلیل وب مثل Google Analytics، Yandex Metrica، Woopra، Kissmetrics و Crazy Egg، تنوع زیادی دارند. همین موضوع باعث شده وبمسترها در انتخاب بهترین ابزار گیج شوند.
در دنیای وب، گوگل نقش اصلی را بازی میکند و Google Analytics اطلاعات زیادی به شما میدهد. اما هر ابزاری ویژگیهای خاص خودش را دارد و مثلاً Yandex Metrica در بعضی موارد عملکرد بهتری دارد.
با اینکه گوگل در محبوبیت و سهم بازار پیشتاز است، اما Google Analytics هم محدودیتهایی دارد که شاید از آنها خبر نداشته باشید. این محدودیتها ممکن است باعث شود اطلاعات ارزشمندی درباره عملکرد سایت و رفتار کاربران را از دست بدهید. فراموش نکنید هر ابزار مزایا و معایب خودش را دارد. هدف این نیست که Google Analytics را کنار بگذارید، بلکه میخواهیم نقاط ضعف آن را بررسی کنیم و راهکارهایی برای بهتر کردن نتایج ارائه دهیم.
با استفاده از ابزارهای جایگزین مثل Yandex Metrica، میتوانید به دادههایی دست پیدا کنید که Google Analytics در اختیار شما نمیگذارد.
اگر میخواهید تفاوتها را ببینید، میتوانید یک دموی زنده از Yandex Metrica و Google Analytics دریافت کنید.
وب آنالیتیکس چیست؟
به زبان خیلی ساده، وب آنالیتیکس یک ابزار دیجیتال مارکتینگ است که برای اندازهگیری، جمعآوری، تحلیل و گزارش اطلاعات مهم درباره یک صفحه یا کل سایت استفاده میشود.
یاندکس متریکا چیست؟
Yandex Metrica دومین ابزار بزرگ تحلیل وب در جهان است که توسط موتور جستجوی معروف روسی، Yandex، ارائه شده است. این ابزار در سال 2008، سه سال پس از معرفی Google Analytics، عرضه شد. برای استفاده از این ابزار، باید یک کد جاوااسکریپت (counter) را در بخش هد (Head) صفحات سایت خود قرار دهید. این کد اطلاعات مربوط به هر بازدید را جمعآوری میکند.
خبر خوب این است که یاندکس متریکا کاملاً رایگان است! استفاده از این ابزار فقط به سایتهای روسی محدود نیست و برخلاف Google Analytics، در بازار چین هم بدون محدودیت قابل استفاده است. شما میتوانید از هر نقطهای در جهان برای تحلیل دادههای وبسایت خود از این ابزار بهره ببرید. Yandex Metrica به شما کمک میکند تا معیارهای مهم سایتتان را بررسی کنید، اطلاعات ارزشمندی به دست آورید و برای بهبود عملکرد سایت و رفع مشکلات، اقدامات موثری انجام دهید.
چرا Yandex Metrica متفاوت است؟
یکی از ویژگیهای مهم Yandex Metrica این است که هیچ محدودیتی برای دادههای شما ایجاد نمیکند. فرقی ندارد که سایت شما چند بازدید یا چند جلسه (Session) داشته باشد، این ابزار برخلاف Google Analytics، دادههای شما را نمونهگیری نمیکند و اطلاعات کاملاً دقیق و کامل ارائه میدهد.
اما این تازه شروع ماجراست! تصور کنید بتوانید رفتار کاربران در سایت خود را بهطور دقیق مشاهده کنید. Yandex Metrica این امکان را با ابزارهای جذابی مثل نقشههای حرارتی (Heatmaps) و بازپخش سشن ها (Session Replays) فراهم میکند. این قابلیتها به شما نشان میدهند که کاربران دقیقاً چه مسیری را در سایت شما طی میکنند و چه اقداماتی انجام میدهند.
ابزارهای Yandex.Metrica: مشابه سرویس Hotjar
Yandex.Metrica ابزارهایی شبیه به سرویس Hotjar ارائه میدهد که برای تحلیل پیشرفته رفتار کاربران طراحی شدهاند. این ابزارها شامل Webvisor، نقشه کلیک (Click Map) و نقشه اسکرول (Scrolling Map) هستند و به شما کمک میکنند تا:
- مشکلات فنی سایت را شناسایی کنید، نوع آنها را بفهمید و تأثیرشان را بر کاهش نرخ تبدیل بررسی کنید.
- مراحلی را که کاربران در تعامل با سایت سردرگم یا منصرف میشوند، شناسایی کنید.
- خطاهای کاربران را بازسازی کرده و آنها را به توسعهدهندگان گزارش دهید.
- میزان راحتی کاربران در استفاده از سایت، ناوبری، پر کردن فرمها، کلیک روی دکمهها و تعامل با سایت روی دستگاهها و مرورگرهای مختلف را ارزیابی کنید.
- مشکلات منطقی موجود در ساختار و طراحی رابط کاربری سایت را کشف کنید.
Webvisor: مشاهده دقیق رفتار کاربران
Webvisor ابزاری است که به شما امکان میدهد فعالیت بازدیدکنندگان وبسایت را بهصورت ویدئوی آنلاین مشاهده کنید. با استفاده از پلیر داخلی این ابزار، میتوانید تمامی حرکات کاربران را بهصورت دقیق بازبینی کنید، از جمله:
- حرکت ماوس
- کلیکها
- پیمایش صفحات
- تایپ کردن
- پر کردن فرمها
- هایلایت و کپی کردن متنها
نقشه کلیک و نقشه اسکرول
ابزارهای Click Map و Scrolling Map به شما اطلاعات ارزشمندی میدهند:
- شناسایی مکانهایی که کاربران بیشترین کلیک را روی آنها انجام میدهند.
- بررسی اینکه کاربران تا کجا در صفحات پیمایش میکنند و کدام بخشها بیشتر دیده میشوند.
تحلیل فرمها
این ابزار به شما کمک میکند تعامل کاربران با فرمهای سایت را بهینه کنید. میتوانید بفهمید:
- کدام فیلدها کاربران را بیشتر درگیر میکنند؟
- کاربران در کدام مرحله از پر کردن فرم منصرف میشوند؟
- چگونه میتوان فرمها را کاربرپسندتر کرد؟
نکات فنی:
- Webvisor محتوای عناصر
iframe
وcanvas
و اطلاعات واردشده در فیلدهای رمز عبور را ثبت نمیکند. - دادههای جمعآوریشده توسط Webvisor به مدت ۱۵ روز از زمان بازدید ذخیره میشوند.
تحلیل تجربه کاربری (UX) و رابط کاربری (UI)
این ابزارها مخصوصاً برای بررسی تجربه کاربری (UX) و طراحی رابط کاربری (UI) مناسب هستند. آنها به شما کمک میکنند تا راحتی و کارایی سایت را برای کاربران ارزیابی کنید، چه کاربران از طریق:
- نتایج ارگانیک موتورهای جستجو
- تبلیغات در موتورهای جستجو یا سایتهای همکار
- شبکههای اجتماعی
- یا ایمیل مارکتینگ
به سایت شما دسترسی پیدا کرده باشند.
Link Map: بررسی دکمهها و لینکها
ویژگی Link Map ابزار مفیدی برای شناسایی و بهینهسازی لینکها و دکمههای سایت است:
- شناسایی بخشها و دکمههایی که بیشترین کلیک را دارند.
- پیدا کردن مسیرهایی که کاربران از طریق آنها به صفحات دیگر سایت منتقل میشوند.
- شناسایی دکمهها و لینکهای غیرضروری یا ناکارآمد که هیچ تأثیری در تعامل کاربر ندارند و میتوان آنها را حذف کرد.
در ادامه، به مقایسه ویژگیهای مشترک و منحصربهفرد Yandex Metrica و Google Analytics میپردازیم.
تفاوتهای کلیدی بین Google Analytics و Yandex Metrica
Google Analytics و Yandex Metrica دو ابزار محبوب برای تحلیل وب هستند که اطلاعات ارزشمندی درباره عملکرد سایت و رفتار کاربران ارائه میدهند. با این حال، تفاوتهای مهمی بین آنها وجود دارد که مدیران وبسایت و بازاریابان باید از آن آگاه باشند:
یکپارچگی با پلتفرمهای تبلیغاتی
Google Analytics بهطور کامل با ابزارهای تبلیغاتی گوگل مانند Google Ads و Display & Video 360 هماهنگ است و به کاربران امکان میدهد اثربخشی کمپینهای تبلیغاتی خود را مستقیماً از طریق این ابزار بررسی کنند. در مقابل، Yandex Metrica با پلتفرمهای تبلیغاتی Yandex.Direct، Yandex.Display و Yandex.Audience ادغام میشود و امکانات مشابهی را در اکوسیستم تبلیغاتی Yandex ارائه میدهد. انتخاب ابزار مناسب به پلتفرم تبلیغاتی مورد استفاده شما بستگی دارد.
رابط کاربری و امکانات گزارشدهی
Google Analytics امکانات پیشرفتهای برای سفارشیسازی گزارشها، داشبوردها و بخشبندیها فراهم میکند و برای کاربران حرفهای بسیار انعطافپذیر است. در مقابل، Yandex Metrica با یک رابط کاربری ساده و طراحی کاربرپسند ارائه میشود. این طراحی سادهتر، استفاده از ابزار را برای کاربران مبتدی یا کسانی که به دنبال یک تجربه سریعتر هستند، راحتتر میکند.
روش ردیابی
یک تفاوت کلیدی در نحوه جمعآوری دادهها بین این دو ابزار وجود دارد. Google Analytics از تگهای جاوااسکریپت و کوکیها استفاده میکند که ممکن است با مرورگرها یا مسدودکنندههای تبلیغاتی محدود شود. در حالی که Yandex Metrica از کدهای مبتنی بر Beacon استفاده میکند که کمتر در معرض محدودیتهای مسدودکنندهها قرار دارد. این تفاوت میتواند بر دقت و کامل بودن دادههای جمعآوریشده تأثیر بگذارد.
مقایسه Yandex Metrica و Google Analytics
معیار مقایسه | Yandex Metrica | Google Analytics |
---|---|---|
رتبه محبوبیت | رتبه چهارم در میان ابزارهای تحلیل وب | رتبه اول و پرطرفدارترین ابزار |
سهم بازار | ۴٪ | ۹۶٪ |
ضبط سشن کاربران | موجود | موجود نیست |
نقشه حرارتی کلیک و لینک | دارد | ندارد |
محدودیت ردیابی کانورژن | ۲۰۰ هدف | ۲۰ هدف |
محدودیت ترافیک | نامحدود | ۱۰ میلیون ایونت در ماه برای نسخه رایگان |
تأثیر بر سرعت سایت | تأثیر قابل توجه بر سرعت | تأثیر کمتری بر سرعت بارگذاری صفحات دارد |
مانیتورینگ سایت | امکان نظارت بر دسترسپذیری سایت در صورت وقوع خطا یا قطعی | این قابلیت را ندارد |
محاسبه بازدید صفحات | اگر صفحه در کمتر از ۱۵ ثانیه رفرش شود، بازدید جدید محسوب نمیشود | هر بار رفرش، بازدید جدید محسوب میشود |
نرخ پرش (Bounce Rate) | کاربر تنها زمانی بانس محسوب میشود که کمتر از ۱۵ ثانیه در صفحه بماند | – |
نمونهگیری دادهها | دادهها بدون سمپلینگ نمایش داده میشوند | در صورت پیچیدگی و بالا بودن حجم دیتا، گزارشها نمونه گیری می شوند. |
تعداد سایتها در هر حساب | نامحدود | حداکثر ۵۰ سایت |
هزینه ابزار | کاملاً رایگان | نسخه پرمیوم: ۱۵۰,۰۰۰ دلار در سال |
کسبوکارها برای شناخت بهتر مشتریان و بهبود خدمات خود به دادههای آنلاین وابسته هستند. اگر یک فروشگاه آنلاین را مدیریت میکنید، چگونه میتوانید رفتار کاربران در وبسایت خود را زیر نظر داشته باشید؟ با استفاده از Measurement Protocol (MP) در آنالیتیکس 4 ، میتوانید نه تنها بازدید از صفحات را بهطور دقیق رصد کنید، بلکه اتفاقات جزئیتری مانند کلیک روی محصولات، اضافه کردن به سبد خرید، و تکمیل خریدها را نیز ردیابی کنید.
Measurement Protocol به شما امکان میدهد متوجه شوید کدام محصولات محبوبتر هستند، کاربران در کجای قیف فروش از خرید منصرف میشوند و کدام کمپین های بازاریابی بیشترین کانورژن را ایجاد میکنند. با تحلیل این دادهها، میتوانید محصولات یا تبلیغاتی که برای مشتریان جذابتر هستند را شناسایی کنید، مسیر کاربران را بهبود بخشید و در نهایت درآمد خود را افزایش دهید.
Measurement Protocol در آنالیتیکس 4 چیست؟
Measurement Protocol هسته اصلی جمعآوری دادهها در Google Analytics 4 (GA4) محسوب میشود.
این پروتکل، مجموعهای از قوانین و دستورالعملهاست که به کسبوکارها و توسعهدهندگان اجازه میدهد تا دادههای مختلف را بهصورت بهینه و هوشمندانه به GA4 ارسال کنند.
دادههای ارسالشده میتوانند شامل هر چیزی باشند؛ از بازدید صفحات و تعاملات کاربران گرفته تا خرید آنلاین و ایونت های سفارشی. ویژگی برجسته Measurement Protocol این است که میتواند دادهها را از منابع مختلف، مانند وبسایت، اپلیکیشنهای موبایل و هر پلتفرم دیجیتالی دیگری که توانایی ارسال درخواستهای HTTP را دارد، دریافت کند.
بهعنوان مثال، وقتی کاربری محصولی را به سبد خرید خود در وبسایت شما اضافه میکند، کدی که در پشتصحنه وبسایت قرار دارد، یک درخواست ویژه به GA4 ارسال میکند. این درخواست شامل اطلاعاتی مانند نام محصول، قیمت آن و اقدام به اضافه کردن به سبد خرید است. GA4 این اطلاعات را دریافت و پردازش میکند تا به شما نشان دهد چند کاربر محصولات را به سبد خرید خود اضافه کردهاند.
این روش، به شما کمک میکند تا رفتار کاربران را بهتر درک کنید و تصمیمات دادهمحور برای بهبود تجربه کاربری و افزایش فروش اتخاذ کنید.
کلاینت چیست؟
در زبان Measurement Protocol، کلاینت مسئولیت ارسال اطلاعات (درخواست) را به عهده دارد. این کلاینت میتواند یک مرورگر وب هنگام بازدید از یک وبسایت، یک اپلیکیشن موبایل یا حتی یک صندوق فروشگاهی باشد که هنگام خرید مشتری، دادهها را ارسال میکند. کلاینتها از طریق پیامهای خاص وب به نام HTTP requests دادهها را به GA4 ارسال میکنند. این پیامها اطلاعاتی درباره اقدامات کاربران دارند و از قوانین مشخصی در پروتکل اندازهگیری پیروی میکنند.
نمونههایی از کلاینتها در پروتکل اندازهگیری:
مرورگرهای وب
وقتی کاربری با مرورگری مانند Google Chrome یا Safari به یک وبسایت وارد میشود، آن مرورگر نقش کلاینت را دارد.
اپلیکیشنهای موبایل
اپلیکیشنهایی که روی دستگاههای موبایل نصب شدهاند – مانند اپلیکیشنهای شبکههای اجتماعی، بازیها، یا فروشگاهی – بهعنوان کلاینت عمل میکنند وقتی دادهها را به GA4 ارسال میکنند.
سیستمهای پایانه فروش (POS)
در فروشگاههای فیزیکی، صندوقها و پایانههای پرداخت بهعنوان کلاینت دادههای تراکنش را به GA4 ارسال میکنند.
دستگاههای هوشمند
تلویزیونهای هوشمند، دستیارهای صوتی (مانند Amazon Echo) و یخچالهای هوشمند میتوانند نقش کلاینت را ایفا کنند و دادههای مربوط به استفاده کاربر را به GA4 ارسال کنند.
کنسولهای بازی
کنسولهایی مانند Xbox، PlayStation یا Nintendo Switch کلاینتهایی هستند که دادههای مربوط به استفاده و تعامل کاربر با بازیها را ارسال میکنند.
دستگاههای IoT (اینترنت اشیا)
دستگاههایی مانند دستبندهای تناسباندام، ترموستاتها، و لوازم خانگی هوشمند نیز میتوانند به عنوان کلاینت عمل کنند.
اپلیکیشنهای سمت سرور
برنامههایی که روی سرورها اجرا میشوند – مانند پلتفرمهای تجارت الکترونیک یا سرورهای ایمیل – نیز میتوانند دادههای تراکنش یا تعامل کاربران را به GA4 ارسال کنند.
این تنوع کلاینتها امکان جمعآوری دادهها از منابع متعدد را فراهم میکند و به شما کمک میکند تصویر جامعتری از رفتار کاربران و مشتریان خود داشته باشید.
سرور چیست؟
در Measurement Protocol، سرور مانند یک دریافتکننده درخواست عمل میکند که دادهها را از کامپیوتر یا اپلیکیشنهای شما از طریق درخواستهای HTTP دریافت میکند.
سرورها با سرعت و دقت بالا حجم زیادی از دادهها را مدیریت میکنند. پس از دریافت دادهها، وظایف مهمی را انجام میدهند، از جمله:
- بررسی صحت و اعتبار دادهها
- پردازش و تحلیل اطلاعات
- ذخیرهسازی امن دادهها
این دادهها نقش حیاتی در تحلیل رفتار کاربران دارند و ابزار ارزشمندی برای تصمیمگیریهای هوشمندانه در کسبوکار شما محسوب میشوند.
سرورها با اطمینان از صحت دادههای ارسالشده و فراهم کردن بستری امن برای ذخیرهسازی و پردازش آنها، یکی از ارکان کلیدی در مدیریت دادهها هستند.
اصول کار با Measurement Protocol
Measurement Protocol (MP) یک ابزار مکمل برای زیرساختهای گوگل آنالیتیکس است و قرار نیست جایگزین روشهای خودکار جمعآوری داده مانند gtag.js، Google Tag Manager یا Google Analytics for Firebase SDK شود. درواقع، MP در شرایطی که روشهای رایج کافی نیستند، میتواند به کمک شما بیاید.
این پروتکل زمانی کارآمد است که بخواهید فعالیتهایی را ردیابی کنید که با کد جاوااسکریپت معمولی امکانپذیر نیست، مثل برخی تعاملات در اپلیکیشنها، ارسال فرم به سرور یا ارتباط با دستگاههای خارجی.
در ادامه، به چند نمونه از کاربردهای Measurement Protocol اشاره میکنیم:
1. ردیابی فروش آفلاین
فرض کنید یک سیستم پرداخت، موفقیت یک تراکنش را ثبت می کند. با استفاده از MP، میتوانید اطلاعات این تراکنش را مانند شناسه پرداخت، مبلغ، لیست محصولات خریداریشده و سایر جزئیات به Google Analytics (GA) ارسال کنید. این دادهها به شما کمک میکند تا عملکرد فروشگاه و رفتار مشتریان خود را بهتر تحلیل کنید.
2. ثبت رویدادهای اپلیکیشنهای موبایل و پلتفرمهای خاص
گاهی ایونت ترکینگ در شرایطی که نمیتوانید از جاوااسکریپت استفاده کنید (مانند اپلیکیشنهای موبایل)، چالشبرانگیز است. در این شرایط، MP میتواند ایونت هایی مثل باز شدن اپلیکیشن، کلیک روی تبلیغات یا استفاده از امکانات خاص را مستقیماً به GA ارسال کند. این اطلاعات برای بهبود تجربه کاربری و سنجش اثربخشی قابلیتهای اپلیکیشن ضروری است.
3. ردیابی فرمهایی که بدون بارگذاری مجدد ارسال میشوند
در وبسایتهایی که از تکنولوژی AJAX برای ارسال فرم استفاده میکنند، میتوانید از MP برای فرم ترکینگ استفاده کنید. در این شرایط به جای استفاده از مرورگر کاربر، MP این دادهها را مستقیماً از سمت سرور به سیستم آنالیتیکس ارسال میکند. برای مثال، اگر کاربری در خبرنامه ثبتنام کند، اطلاعات مربوط به این ایونت (مانند زمان و صفحه تکمیل فرم) از طریق MP قابل ثبت است.
4. تحلیل تبدیلها و رفتار کاربران
وقتی یک فرم (مثل سفارش یا اشتراک) با موفقیت ارسال میشود، میتوانید با کمک MP اطلاعات کانورژن را به گوگل آنالیتیکس منتقل کنید. این اطلاعات میتواند شامل نام فرم، موقعیت جغرافیایی کاربر، زمان ارسال و هر دادهی دیگری باشد که برای تحلیل نیاز دارید.
5. تحلیل دادههای خارج از مرورگر
گاهی نیاز دارید اطلاعاتی را که در سمت سرور تولید شدهاند، تحلیل کنید. MP این امکان را میدهد که این دادهها را مستقیماً به سیستم آنالیتیکس ارسال کنید. نمونههایی از این دادهها شامل موارد زیر است:
- لاگهای سرور: اطلاعاتی مثل بازدید صفحات، سرچ در پایگاه داده و خطاها.
- فرآیندهای داخلی سرور: نتایج اجرای اسکریپتها، اطلاعات تراکنشها و پردازش درخواستهای API.
برای مثال، در یک فروشگاه آنلاین، زمانی که خریدی انجام میشود، سرور اطلاعاتی مثل نام محصول، قیمت و مشخصات خریدار را ذخیره میکند. با MP میتوانید این اطلاعات را به گوگل آنالیتیکس ارسال کنید تا تحلیل دقیقی از فروش و رفتار مشتریان انجام شود.
اگر دسترسی ادمین یا ادیتور در آنالیتیکس 4 داشته باشید، میتوانید میتوانید تنظیمات User-provided data collection را فعال کنید. این قابلیت به شما اجازه میدهد دادههایی که کاربران با رضایت خود در اختیار شما قرار میدهند و متعلق به وبسایت شما هستند (دادههای First-Party) را به Google Analytics ارسال کنید. این دادهها به صورت ایمن و با رعایت اصول حریم خصوصی با دادههای گوگل ترکیب میشوند تا دقت گزارشها و تحلیلها را افزایش داده و امکانات پیشرفتهتری در اختیار شما قرار دهند.
اگر دادهها را از وبسایت ارسال میکنید، دو گزینه پیش روی شماست:
- رمزگذاری دادهها با استفاده از الگوریتم امن SHA256 قبل از ارسال.
- استفاده از قابلیت داخلی گوگل برای اعمال همین الگوریتم روی دادهها پیش از ارسال.
اگر از Measurement Protocol برای ارسال دادهها استفاده میکنید، باید حتماً خودتان دادهها را با الگوریتم SHA256 رمزگذاری کنید و سپس آنها را به Google Analytics ارسال کنید.
توجه داشته باشید که این ویژگی برای وبسایتها یا اپلیکیشنهایی که در دستهبندی صنعتی “سلامت” قرار دارند، فعال نیست.
مزایای استفاده از جمعآوری دادههای کاربر در Google Analytics 4
1. آمادهسازی برای دنیای بدون کوکیهای شخص ثالث
یکی از مهمترین مزایای جمعآوری دادههای کاربر این است که شما دیگر به کوکیهای شخص ثالث که به زودی حذف خواهند شد، وابسته نیستید. این روش به شما کمک میکند تنظیمات دادهای خود را برای آینده آماده کنید و در عین حال قابلیتهای پیشرفتهتری را فعال نمایید.
2. تطابق مشتری (Customer Match)
این قابلیت به شما اجازه میدهد از دادههای کاربری برای پشتیبانی از Customer Match در مخاطبان Google Analytics 4 که به محصولات تبلیغاتی گوگل متصل هستند، استفاده کنید. این مزیتها را به همراه دارد:
- دسترسی بهتر به مخاطبان مناسب: ریمارکتینگ شما با هدفگیری دقیقتری انجام میشود و کمپینهایتان به افراد مرتبطتری نمایش داده میشوند.
- گسترش دامنه مخاطبان هدف: دادههای هششده و تأییدشده شما با دادههای گوگل تطبیق داده میشود و در مواقعی که شناسههای کاربر در دسترس نیستند، مخاطبان بیشتری را شناسایی میکند.
3. کانورژن های پیشرفته (Enhanced Conversions)
جمعآوری دادههای کاربر امکان استفاده از کانورژن های پیشرفته را فراهم میکند. این ویژگی به شما کمک میکند:
- دید دقیقتر به تعاملات تبلیغاتی: زمانی که کوکیها یا شناسههای کاربری در دسترس نیستند، دادههای شما شکافهای موجود را پر میکند.
- بهبود مدلسازی تبدیل و بهینهسازی کمپینها: دادههای کاملتر باعث میشود Google Analytics 4 و Google Ads عملکرد بهتری در تحلیل مسیر تبدیل و بهینهسازی تبلیغات داشته باشند.
- اندازهگیری دقیقتر تعاملات در کانالها و دستگاههای مختلف: این قابلیت دید گستردهتری از رفتار کاربران شما فراهم میکند.
4. گزارشهای دموگرافیک و علایق
جمعآوری دادههای کاربر امکان دسترسی به گزارشهای دموگرافیک و علایق کاربران را فراهم میکند. این گزارشها با استفاده از دادههای First-Party شما و اطلاعات کاربران لاگینشده در گوگل تهیه میشوند.
- پایداری بیشتر در اندازهگیری: دیگر نیازی به کوکیهای شخص ثالث ندارید.
- شناخت بهتر مخاطبان: این قابلیت کمک میکند دید عمیقتری نسبت به ویژگیهای جمعیتی و علایق کاربران خود داشته باشید.
جمعآوری دادههای کاربر نه تنها تنظیمات شما را با قوانین حریم خصوصی همگام میکند، بلکه به شما امکان میدهد تحلیلهای عمیقتر و کمپینهای تبلیغاتی مؤثرتری را اجرا کنید. این راهکار هوشمند، آیندهای پایدارتر و دقیقتر برای دادههای شما به ارمغان میآورد.
نکاتی که قبل از فعال کردن User-provided data collection باید بدانید
برای ارسال دادههای تأییدشده و First-Party از طریق جمعآوری دادههای کاربر، باید حساب Google Analytics خود را به حساب Google Ads متصل کنید.
با تأیید قوانین استفاده از ویژگی دادههای کاربر، امکان جمعآوری دادههای کاربران در Property شما فعال میشود. با این حال، توجه داشته باشید که تأیید این قوانین دائمی است و تغییرات زیر پس از تأیید ایجاد میشوند. حتی اگر جمعآوری دادههای کاربر را از تگهای خود غیرفعال کنید، این تغییرات قابل بازگشت نخواهند بود، بنابراین قبل از تأیید قوانین، موارد زیر را بررسی کنید:
برای اینکه دادههای شما دقیقتر شود، نتایج مثبت که از طریق تبدیلهای پیشرفته (Enhanced Conversions) ارائه میشوند، بلافاصله قابل مشاهده نیستند. این نتایج مثبت معمولاً حدود یک ماه زمان میبرند تا در گزارشهای Google Analytics و همچنین گزارشها و پیشنهادات تبلیغاتی Google Ads دیده شوند.
اگر مخاطبان شما شامل کاربرانی باشند که از طریق دستگاههای مختلف با بیزینس تعامل داشتهاند، ممکن است تعداد این افراد در سگمنت های تعریف شده توسط شما، کمتر شود. دلیل این موضوع این است که دادههای کاربران لاگینشده (User-ID) جدا از کاربران غیرلاگین نگهداری میشود. این موضوع میتواند فرصت شما را برای هدفگیری مجدد این کاربران در دستگاههای دیگر محدود کند. البته اگر Google Signals در آنالیتیکس را فعال کرده باشید، این کاهش تا حدی جبران میشود.
دستورالعمل فعالسازی جمعآوری دادههای کاربر در Google Analytics
با فعالسازی این قابلیت، Google Analytics میتواند دادههای ارائهشده توسط کاربران را از تمام دیتا استریم های موجود در Property شما جمعآوری کرده و آنها را به اکانت های تبلیغاتی متصل به آنالیتیکس شما ارسال کند.
وارد ادمین شوید و در قسمت Data Collection and Modification، گزینه Data Collection را انتخاب کنید.
توجه: برای فعالسازی این قابلیت، باید در سطح Property دارای دسترسی Editor یا بالاتر باشید.
در بخش User-provided Data Collection، روی Turn on کلیک کنید.
گزینه Collect automatically detected user-provided data را فعال کنید تا Google Analytics بتواند دادههای ارائهشده توسط کاربران را بهصورت خودکار شناسایی و جمعآوری کند.
- اگر میخواهید این گزینه را فعال کنید، باید جمعآوری خودکار را در Google Tag نیز فعال کنید. این گزینه را میتوانید بعد از روشن کردن قابلیت جمعآوری دادههای کاربر تغییر دهید.
پس از مطالعه قواستفاده از دادههای کاربر، روی Turn on کلیک کنید.
برای جمعآوری دادههای کاربر از یکی از روشهای زیر استفاده کنید:
gtag.js | اگر از gtag.js برای جمعآوری داده از وبسایت استفاده میکنید، باید تنظیمات مربوط به gtag.js را مطابق دستورالعملها بهروزرسانی کنید تا دادههای کاربران شناسایی شوند. دستورالعملهای gtag.js را مشاهده کنید |
Google Tag Manager | اگر از Google Tag Manager برای جمعآوری داده استفاده میکنید، باید تنظیمات کانتینر خود را با متغیرهایی که دادههای کاربران را جمعآوری میکنند، بهروزرسانی کنید. دستورالعملهای Tag Manager را مشاهده کنید |
Measurement Protocol | اگر میخواهید دادههای کاربر را از تعاملات آفلاین جمعآوری کنید، میتوانید از Measurement Protocol استفاده کنید. دستورالعملهای Measurement Protocol را مشاهده کنید |
زمان مناسب برای استفاده از قابلیت User-ID
دادههای ارائهشده توسط کاربر (User-provided data) هم با قابلیت User-ID و هم بدون آن قابل استفاده هستند. قابلیت User-ID از شناسههای منحصربهفردی استفاده میکند که شما برای هر کاربر ایجاد و مدیریت میکنید. این شناسهها باید با شناسههایی که برای user-provided data collection استفاده میشوند، متفاوت باشند.
برای برخی وبسایتها، مثل وبسایتهای شرکتی، امکان پیادهسازی قابلیت User-ID وجود ندارد. اما برای سایتهایی مانند فروشگاههای اینترنتی، توصیه میشود یوزر آیدی ترکینگ را همراه با جمعآوری دادههای کاربر راهاندازی کنید تا گزارشهای دقیقتری از کاربران در Google Analytics داشته باشید.
اگر دادههای کاربر ارسال شود اما User-ID ارسال نشود:
- دادههای کاربران بهصورت ناشناس (Pseudonymized) ذخیره میشود و برای شناسایی کاربران منحصربهفرد، حذف تکرار (Deduplication)، و گزارشدهی استفاده خواهد شد.
- در صورتی که چند نوع داده کاربر ارسال کنید، Google Analytics به ترتیب زیر اولویتبندی میکند:
- ایمیل
- تلفن
- نام و آدرس
نکته: اگر بعداً برای کاربرانی که قبلاً فقط دادههای کاربر بدون User-ID داشتند، User-ID ارسال شود، این کاربران در گزارشها بهعنوان کاربران جداگانه شناسایی میشوند.
غیرفعال کردن قابلیت user-provided data collection
با اینکه تأیید قوانین مربوط به این قابلیت دائمی است، میتوانید جمعآوری دادههای ارائهشده توسط کاربر را در Google Analytics به روشهای زیر متوقف کنید:
- خاموش کردن جمعآوری دادههای کاربر از طریق تنظیمات Google Analytics:
در مسیر Admin > Data Settings > Data Collection، گزینه مربوط به جمعآوری دادههای کاربر را غیرفعال کنید. این کار باعث میشود پردازش و دریافت دادههای کاربر در Property شما متوقف شود. - خاموش کردن جمعآوری داده در تنظیمات تگ یا Tag Manager:
اگر از Google Tag یا Tag Manager استفاده میکنید، میتوانید جمعآوری دادههای کاربر را از طریق این ابزارها غیرفعال کنید.- اگر دادههای کاربر را از طریق Measurement Protocol ارسال میکنید، باید پیادهسازی خود را بهروزرسانی کنید و ارسال دادههای کاربر را متوقف کنید.
- غیرفعال کردن استفاده از این دادهها در گزارشها:
اگر نمیتوانید دادههای ارسالشده به Analytics را تغییر دهید اما نمیخواهید از این قابلیت در گزارشها استفاده کنید، میتوانید Blended Reporting را در تنظیمات Reporting Identity غیرفعال کنید.
گاهی ممکن است بخواهید یک ایونت جدید ایجاد کنید که به صورت خودکار هنگام وقوع یک ایونت موجود با مقادیر خاصی از پارامترها ایجاد شود. برای مثال:
اگر بخواهید هنگام ورود کاربر به صفحه تشکر از تکمیل فرم، یک key event ثبت کنید، میتوانید یک ایونت کاستوم با نام مثلاً confirm_form ایجاد کنید که هر زمان ایونت page_view با مقدار پارامتر page_location برابر با URL صفحه تشکر شما رخ داد، فعال شود. سپس میتوانید ایونت confirm_form عنوان یک کانورژن (Key Event) تعیین کنید.
علاوه بر این، میتوانید نام یا پارامترهای مربوط به یک ایونت را در داشبورد آنالیتیکس تغییر دهید. این قابلیت به شما اجازه میدهد اشتباهات مربوط به ایونت ترکینگ به دلایل مختلف مثل اشتباه تایپی در نام ایونت، شرایط، یا پارامترها رخ دادهاند، اصلاح کنید.
پیش از شروع
قبل از اینکه ایونت جدیدی ایجاد کنید یا نام یک ایونت موجود را تغییر دهید، این موارد را بررسی کنید:
- اطمینان حاصل کنید که نام جدید، یک نام رزرو شده نیست
- مطمئن شوید که نام انتخابی شما در لیست نامهای رزرو شده توسط Google Analytics قرار ندارد.
- تغییرات را با تیم خود مرور کنید
- بررسی کنید که نام ایونت انتخابی با نامهای دیگر در سیستم شما تداخل نداشته باشد یا ایونتی با نام مشابه قبلاً وجود نداشته باشد.
- محدودیتهای جمعآوری ایونتها را مرور کنید
- اطمینان حاصل کنید که تغییرات پیشنهادی از محدودیتهای تعیینشده برای جمعآوری ایونتها تجاوز نکند.
ایجاد یک ایونت از یک ایونت موجود
ایجاد یک ایونت جدید به این معنی است که یک ایونت موجود را کپی کرده و با همان پارامترها و هر پارامتر جدیدی که مشخص میکنید، به یک ایونت جدید تبدیل کنید.
- به بخش Admin بروید و در قسمت Data Display روی Events کلیک کنید. شما باید دارای نقش Editor یا بالاتر در سطح property باشید تا بتوانید ایونت جدیدی از یک ایونت موجود ایجاد کنید.اگر دکمه Create event را در گوشه بالا سمت راست جدول نمیبینید، به این معنی است که نقش لازم برای ایجاد ایونتها را ندارید.
- روی Create event کلیک کنید و سپس Create را انتخاب کنید.
- در بخش Custom event name، یک نام برای ایونت وارد کنید که با قوانین نامگذاری ایونتها سازگار باشد.
- در بخش Matching conditions، یک یا چند شرط مشخص کنید.
- Google Analytics هر ایونتی که با شرایط مشخصشده شما مطابقت داشته باشد را کپی میکند.
- به عنوان مثال، اگر شرطی مانند “event_name equals view_item” تعریف کنید، Analytics ایونت view_item را به ایونت جدید شما کپی میکند.
- اگر میخواهید شرط تطبیق حساس به حروف کوچک و بزرگ باشد، از عملگرهایی استفاده کنید که شامل عبارت “(ignore case)” نیستند. برای مثال، به جای equals (ignore case) از equals استفاده کنید.
- (اختیاری) پارامترهای ایونت منبع را کپی کنید.
- به صورت پیشفرض، گزینه Copy parameters from the source event فعال است تا پارامترهای ایونت منبع را استفاده کند.
- برای غیرفعال کردن این قابلیت، روی گزینه Copy parameters from the source event کلیک کنید.
- (اختیاری) در بخش Modify parameters، پارامترهای ایونت کپیشده را تغییر دهید.
- به عنوان مثال، اگر در شرایط تطبیق ایونت view_item را مشخص کردهاید، میتوانید پارامتر currency را تغییر دهید.
- توجه: با استفاده از ابزار ساخت ایونت نمیتوانید عملیات ریاضی روی ایونتها اعمال کنید. در عوض، باید مقدار بهروزشده را در یک ایونت جدید ارسال کنید.
- روی Create کلیک کنید.
فرض کنید ایونت موجود article_scroll زمانی فعال میشود که یک بازدیدکننده مقالهای را بهصورت کامل در وبسایت اسکرول میکند. حال، برای گزارشدهی جداگانه روی اسکرول صفحه محصولات (product.html)، میتوانید یک ایونت جدید با نام product_scroll ایجاد کنید.
هر دو ایونت article_scroll و product_scroll در گزارشها نمایش داده خواهند شد و دادههای جمعآوریشده پس از فعالشدن ایونت جدید در دسترس خواهد بود.
ساخت ایونت بر اساس مقدار یک پارامتر
میتوانید ایونتی جدید ایجاد کنید که بر اساس مقادیر خاصی از یک ایونت یا پارامتر موجود فعال شود. فرض کنید میخواهید یک ایونت سفارشی به نام large_purchase ایجاد کنید که هر زمان ایونت purchase با مقداری برابر یا بیش از $100 ارسال شد، ثبت شود.
تغییر یک ایونت موجود
تغییر یک ایونت به معنای بازنویسی ایونت موجود با افزودن، تغییر یا حذف پارامترها است. ایونتهای تغییر دادهشده پیش از ایونتهای ایجادشده پردازش میشوند.
به عنوان مثال، اگر ایونت پیشفرض page_view که توسط Google ارائه شده است را تغییر دهید و آن را به یک صفحه خاص محدود کنید، دیگر دادهای از صفحات دیگر جمعآوری نخواهد شد. در چنین مواردی، بهتر است به جای تغییر ایونت اصلی، یک ایونت جدید بر اساس page_view ایجاد کنید تا ایونت اصلی بدون تغییر باقی بماند.
مراحل تغییر یک ایونت موجود
- روی Modify event کلیک کنید و سپس Create را انتخاب کنید. شما باید دارای نقش Editor یا بالاتر در سطح property باشید تا بتوانید ایونتها را تغییر دهید. اگر دکمه Modify event را در گوشه بالا سمت راست جدول نمیبینید، به این معنی است که نقش لازم برای تغییر ایونتها را ندارید.
- در بخش Modification name، یک نام وارد کنید که توصیفی از تغییرات باشد.
- در بخش Matching conditions، یک یا چند شرط مشخص کنید.
- شما میتوانید ایونتهایی را تغییر دهید که حداقل یک پارامتر آنها با تمام شرایط مشخصشده شما مطابقت داشته باشد.
- به عنوان مثال، اگر شرطی مانند “event_name equals view_item” تعریف کنید، میتوانید ایونت view_item را تغییر دهید.
- اگر میخواهید شرط تطبیق حساس به حروف کوچک و بزرگ باشد، از عملگرهایی استفاده کنید که شامل عبارت “(ignore case)” نیستند. به عنوان مثال، به جای equals (ignore case) از equals استفاده کنید.
- در بخش Modify parameters، پارامترهای ایونت موردنظر را تغییر دهید.
- در این بخش میتوانید تغییراتی مانند افزودن، تغییر یا حذف پارامترها انجام دهید.
- توجه: با استفاده از ابزار ساخت ایونت نمیتوانید عملیات ریاضی روی پارامترها انجام دهید. اگر به این نوع تغییرات نیاز دارید، باید مقدار جدید را در یک ایونت جدید ارسال کنید.
- روی Create کلیک کنید.
نکات مهم درباره ترتیب اجرای ایونتها
ایونتهای تغییر دادهشده به ترتیب ظاهر شدن آنها در لیست Event modifications اجرا میشوند.
در این مثال، نحوه تغییر نام ایونت pub_article به publish_article توضیح داده شده است. پس از اعمال این تغییر، تمام دادههای جمعآوریشده بعد از این تغییر، با نام publish_article در گزارشها نمایش داده میشود و نه pub_article.
نکته مهم
- اگر ایونتی که میخواهید تغییر نام دهید، قبلاً به عنوان یک کانورژن (Key Event) تعیین شده باشد، پس از تغییر نام دیگر به عنوان ایونت کلیدی شناخته نخواهد شد.
- اگر فقط پارامترهای ایونت را تغییر دهید و نام آن را تغییر ندهید، ایونت همچنان به عنوان یک Key event باقی میماند.
نام تغییر:
Change pub_article to publish_article
شرایط تطبیق:
پارامتر | عملگر | مقدار |
---|---|---|
event_name | equals | pub_article |
تغییر پارامترها:
پارامتر | مقدار جدید |
---|---|
event_name | publish_article |
با استفاده از این تنظیمات، ایونت pub_article به publish_article تغییر میکند و دادههای آینده با نام جدید ثبت و گزارش خواهند شد.
تغییر ترتیب رخداد ایونتهای تغییر دادهشده
ترتیب اجرای تغییرات ایونتها برای دادهها بر اساس ترتیب آنها در لیست تغییرات است. این ترتیب اهمیت دارد، بهویژه اگر تغییرات به یکدیگر وابسته باشند.
به عنوان مثال:
اگر در تغییر اول (Modification 1) یک ایونت را تغییر نام دهید و سپس از نام جدید آن برای ایجاد ایونت دیگری در تغییر دوم (Modification 2) استفاده کنید، باید تغییرات به ترتیب Modification 1 > Modification 2 اجرا شوند. اگر ترتیب تغییرات بهدرستی رعایت نشود، تغییر دوم (Modification 2) با خطا مواجه خواهد شد.
مراحل تغییر ترتیب ایونتها
- در بخش Admin و زیرمجموعه Data Display روی Events کلیک کنید.
- روی Modify event کلیک کنید.
- در پنل Event modifications روی Reorder کلیک کنید.
- با درگ و دراپ کردن میتوانید ترتیب رخداد ایونت ها را تغییر دهید.
- روی Apply کلیک کنید.
ویرایش یکی از ایونتهای ایجاد یا تغییر دادهشده
- در بخش Admin و زیرمجموعه Data Display روی Events کلیک کنید.
- روی Create event کلیک کنید.
- در جدول Custom events، ایونتی را که میخواهید تغییر دهید، انتخاب کنید.
- شرایط و پارامترها را بر اساس نیاز تغییر دهید.
- روی Save کلیک کنید.
محدودیتها و نکات مهم
- تغییرات روی دادههای قدیمی اعمال نمیشوند
- ایونتهای جدید و تغییرات فقط بر دادههای آینده تأثیر میگذارند و تغییری در دادههای قبلی ایجاد نمیکنند.
- محدودیت در تعداد تغییرات و ایونتهای جدید
- شما میتوانید حداکثر ۵۰ ایونت موجود را تغییر دهید و تا ۵۰ ایونت جدید مبتنی بر ایونتهای موجود ایجاد کنید.
- تأخیر در اعمال تغییرات
- اعمال تغییرات ممکن است حداقل یک ساعت یا بیشتر طول بکشد تا در دادهها منعکس شود.
- محاسبه تغییرات در سمت کاربر (Client-Side)
- تغییرات قبل از ارسال دادهها به Google Analytics انجام میشوند و در مرورگر یا دستگاه کاربر محاسبه میشوند.
- محدودیت در استفاده از پارامترهای آرایه آیتمها (Items Array)
- نمیتوانید ایونتهایی را که بر اساس پارامترهای موجود در آرایه آیتمها مانند item_brand، item_name یا item_id هستند ایجاد یا تغییر دهید (در صورتی که از gtag.js استفاده میکنید).
- عدم امکان تغییر ایونتهای ارسالی از طریق سرور (Server-Side)
- ایونتهایی که از طریق تنظیمات سرور به سرور (Server-to-Server) ارسال میشوند، مانند ایونتهایی که با استفاده از Measurement Protocol ارسال میشوند، قابل تغییر نیستند.
Client ID در گوگل آنالیتیکس چیست، چطور کار میکند، و چه نقشی در تحلیل دادههای کاربران دارد.در این مقاله، قرار است به زبانی ساده و روان توضیح دهیم که Client ID چیست، چطور توسط گوگل آنالیتیکس تولید و استفاده میشود، و در عین حال به محدودیتها و نکات مهمی که باید درباره آن بدانید هم بپردازیم.
شناسه مشتری گوگل آنالیتیکس چیست؟
Client ID یک کد شناسایی منحصر به فرد است که گوگل آنالیتیکس برای هر مرورگر زمانی که یک کاربر از وبسایت شما بازدید میکند، ایجاد میکند. این کد به ردیابی تعاملات و فعالیتهای کاربر در طول یک سشن کمک میکند و به شما اجازه میدهد رفتار مخاطبان خود را بهتر درک کنید.
Client ID به صورت تصادفی تولید میشود و هدف اصلی آن تشخیص تفاوت بین بازدیدکنندگان جدید (new user) و بازگشتی (returning user) و همچنین کمک به سازماندهی و جمعآوری دادههای رفتاری کاربران (به عبارت دیگر، ارتباط دادن چندین ایونت به یک کاربر) است.
شناسه کاربر (Client ID) چگونه کار میکند؟
هنگامی که کاربری وارد وبسایتی با کد ردیابی Google Analytics میشود، یک کوکی First-Party با نام (_ga) در دستگاه یا مرورگر او ذخیره میشود. این کوکی حاوی شناسهای منحصربهفرد است که به هر کاربر اختصاص داده میشود. به صورت پیشفرض، این شناسه تا دو سال ثابت باقی میماند (در تئوری) و تغییر نمیکند. به همین دلیل، بازدیدها و تعاملات بعدی همان کاربر به همان شناسه مرتبط میشوند.
با این حال، مرورگرهای مدرن روزبهروز محدودیتهای بیشتری برای عمر کوکیها اعمال میکنند، بنابراین در عمل، طول عمر این شناسه اغلب کمتر از دو سال است.
Google Analytics در هنگام تعامل کاربر با وبسایت، دادههایی مانند بازدید صفحات، ایونت ها و تراکنشها را جمعآوری کرده و آنها را به شناسه کاربر متصل میکند. این فرآیند به صورت خودکار انجام میشود و امکان تجمیع رفتار کاربران را فراهم میسازد.
نکتهای که باید به آن توجه داشت این است که Client ID تنها به دستگاه و مرورگری که کاربر از آن استفاده میکند محدود است. به عبارت دیگر، این شناسه نمیتواند کاربر را در دستگاهها یا مرورگرهای مختلف ردیابی کند. بنابراین، اگر یک کاربر از مرورگر یا دستگاه دیگری وارد همان وبسایت شود، یک شناسه جدید برای او تولید شده و تعاملات او به عنوان سشن ها و کاربران جداگانه ثبت میشوند.
لازم به ذکر است که با پیاده سازی قابلیت کراس دامین ترکینگ در آنالیتیکس 4، میتوان یک یوزر را در چند دامنه متفاوت به صورت یکتا ردیابی کرد.
روش های پیدا کردن Client ID آنالیتیکس 4
برای پیدا کردن شناسه کاربر (Client ID) در Google Analytics، چند روش وجود دارد:
استفاده از گزارش یوزر اکسپلور در آنالیتیکس
برای پیدا کردن شناسه کاربر در Google Analytics 4، مراحل زیر را دنبال کنید:
- وارد حساب Google Analytics 4 خود شوید.
- به بخش Explore بروید.
- روی User Explorer کلیک کنید.
- در گزارش User Explorer، شناسه کاربر برای هر کاربر به صورت جداگانه نمایش داده میشود.
استفاده از BigQuery
در Google BigQuery، هر رویداد شامل یک فیلد به نام user_pseudo_id است که حاوی شناسه کاربر است.
بررسی کوکی _ga
این روش کمی فنیتر است:
ابزار توسعهدهنده مرورگر خود را باز کنید (معمولاً با فشار دادن کلید F12 در ویندوز یا کلیک راست و انتخاب گزینه “Inspect”). به تب Application بروید (در این مثال از Google Chrome استفاده شده است).
به بخش Cookies بروید و دامنه خود را انتخاب کنید. سپس کوکی _ga را پیدا کنید. مقدار این کوکی ممکن است شبیه به این باشد (البته مقدار در مورد شما متفاوت خواهد بود):
دو بخش آخر (که با یک نقطه از هم جدا شدهاند) همان شناسه کاربر است. برای مثال، اگر مقدار کوکی این باشد: GA1.1.397373793.1735307452، مقدار شناسه کاربر برابر است با 397373793.1735307452.
در صورت نیاز میتوانید برای دسترسی به این کوکی از گوگل تگ منیجر استفاده کنید.
در GTM به بخش Variables ، New ، 1st Party Cookie بروید و تنظیمات زیر را وارد کنید (نام آن را دقیقاً همانطور که در تصویر زیر نشان داده شده است وارد کنید):
این متغیر مقدار کامل کوکی مانند GA1.1.397373793.1735307452 را برمیگرداند. اگر میخواهید فقط دو بخش آخر را استخراج کنید، به Variables > New > Custom JavaScript بروید و کد زیر را وارد کنید (این کد تنها در صورتی کار میکند که متغیر کوکی 1st Party دقیقاً به همان نام تعریف شده باشد):
function() {
return {{ga cookie}}.substring(6)
}
این کد شش کاراکتر اول کوکی _ga را حذف میکند و نتیجه چیزی شبیه به 397373793.1735307452 (یا هر مقدار دیگری که در کوکی ذخیره شده است) خواهد بود.
استفاده از دستور “get” در gtag()
کد ردیابی Google Analytics 4 (با نام GTAG) دستوری به نام “get” ارائه میدهد که میتواند مقادیر خاصی از فیلدها/پارامترهای GA4 را بازگرداند.
در اینجا مثالی از دستوری آورده شده است که میتوانید مستقیماً در کنسول Google Chrome اجرا کنید:
gtag(‘get’, ‘G-XXXXXX’, ‘client_id’, function(clientId) {console.log(clientId)})
استفاده از تمپلیت تگ GTAG GET API در گوگل تگ منیجر
این روش از همان دستور get در مثال قبلی استفاده میکند، اما Simo Ahava این کار را برای کاربران Google Tag Manager آسانتر کرده است. او یک تمپلیت تگ ایجاد کرده که میتوانید به کانتینر GTM خود اضافه کنید و سپس مقادیر فیلدهای خاص GA (از جمله client_id) را به data layer منتقل کنید.
در Google Tag Manager به Templates > Tag Templates > Search Gallery بروید و قالب GTAG GET API را پیدا کنید. آن را به کانتینر خود اضافه کنید.
سپس به بخش Tags > New > Tag Configuration > GTAG GET API بروید. شناسه اندازهگیری (Measurement ID) خود را وارد کنید، نامی برای تگ انتخاب و آن را ذخیره کنید. توجه کنید که تریگر به آن اضافه نکنید.
سپس، تگ نصب Google Tag موجود را باز کنید.
در Advanced Setting این تگ روی Tag Sequencing کلیک کنید. گزینه Fire a tag after GA4 config tag fires را انتخاب کنید و تگ GTAG GET API که تازه ایجاد کردهاید را انتخاب کنید.
دکمه Preview را در GTM بزنید. در نوار کناری سمت چپ در حالت Preview، ایونت جدیدی در data layer ظاهر میشود به اسم gtagApiGet که شامل client_id است.
اگر میخواهید از آن استفاده کنید، یک متغیر data layer برای آن ایجاد کنید (client_id). با توجه به این که کلاینت آیدی در یک آبجکت جاوا اسکریپتی قرار گرفته است، برای دسترسی به مقدار آن باید از ساختار چایلد و پرنتی استفاده کرد. یعنی: gtagApiResult.client_id
مهم: شناسه کاربر را به عنوان کاستوم دایمنشن به GA4 ارسال نکنید، زیرا این کار میتواند باعث مشکلات Cardinality شود.
چه زمانی باید client ID کاربران را ترک کنیم؟
دلایل دریافت شناسه کاربر (Client ID) به شرایط و اهداف شما بستگی دارد. برای اکثر کاربران GA4، نیازی به دریافت این شناسه نیست. با این حال، در برخی از موارد خاص، ممکن است به آن نیاز داشته باشید:
استفاده از Measurement Protocol
اگر شرکت شما قصد دارد دادهها را از طریق Measurement Protocol به GA4 ارسال کند، شناسه کاربر ضروری است.
- دولوپرها باید شناسه کاربر را از کاربران وبسایت شما دریافت کنند.
- این شناسه سپس در پایگاه داده یا سیستم مدیریت ارتباط با مشتری (CRM) ذخیره میشود.
- با استفاده از این شناسه، سرور شما میتواند ایونت ها را مستقیماً به سرورهای GA4 ارسال کند.
ارسال داده به سیستم داخلی یا CRM
ممکن است تگ هایی در Google Tag Manager تعریف کرده باشید که دادهها را به سیستم داخلی یا CRM شما ارسال میکنند. در چنین حالتی، ممکن است بخواهید شناسه کاربر GA را همراه با دادهها ارسال کنید.
محدودیتهای شناسه کاربر (Client ID) در Google Analytics
با اینکه شناسه کاربر یکی از اجزای اصلی Google Analytics است، دارای محدودیتهایی است که باید از آنها آگاه باشید.
ردیابی بین دستگاهها و مرورگرها (Cross-device and cross-browser tracking)
شناسه کاربر به دستگاه و مرورگر خاصی اختصاص داده میشود. بنابراین، نمیتواند کاربران را بین دستگاهها یا مرورگرهای مختلف ردیابی کند.
اگر کاربری از دستگاهها یا مرورگرهای متفاوت وارد یک وبسایت شود، برای هر بار ورود یک شناسه کاربر جدید ایجاد میشود و تعاملات او بهعنوان سشن های جداگانه در Google Analytics ثبت میشود. این موضوع میتواند منجر به دادههای پراکنده و درک نادرست از رفتار کاربران شود.
حذف و بلاک کردن کوکیها (Cookie deletion and blocking)
کاربران میتوانند کوکیها را حذف یا بلاک کنند، که این کار باعث از بین رفتن شناسه کاربر میشود.
در چنین شرایطی، وقتی کاربر دوباره به وبسایت بازمیگردد، یک شناسه جدید ایجاد میشود و Google Analytics او را بهعنوان یک بازدیدکننده جدید شناسایی میکند. این مسئله میتواند باعث بروز اختلاف در ردیابی Returning Users و کاهش دقت دادهها شود.
تفاوت Client ID و User ID در آنالیتیکس
گاهی اوقات کاربران Google Analytics (بهویژه مبتدیان) ممکن است شناسه کاربر (Client ID) را با شناسه کاربر (User ID) اشتباه بگیرند. هرچند Google Analytics از هر دوی آنها پشتیبانی میکند، اما هدف و کاربرد آنها متفاوت است.
محدوده ردیابی (Tracking Scope)
- Client ID برای ردیابی سشن و تعاملات فردی در یک دستگاه و مرورگر خاص استفاده میشود. اما قابلیت ردیابی کاربران در دستگاهها یا مرورگرهای مختلف را ندارد.
- User ID امکان ردیابی کاربران در دستگاهها و مرورگرهای مختلف را فراهم میکند. این ویژگی به شما کمک میکند که یک نمای کلی و جامع از مسیر و تعاملات کاربران با وبسایت خود داشته باشید.
نحوه ذخیرهسازی (Storage)
- Client ID بهصورت خودکار توسط Google Analytics تولید میشود و به عنوان یک کوکی First-Party (_ga) در مرورگر کاربر ذخیره میشود.
- User ID (برای کاربران ثبتنامشده) در پایگاه داده سیستم یا وبسایت شما ذخیره میشود و سپس به Google Analytics ارسال میگردد.
بیشتر بخوانید: تفاوت لوکال استوریج (Local storage) با سشن استوریج و کوکی (Cookie)
دقت دادهها (Data Accuracy)
- دقت Client ID میتواند به دلیل حذف یا بلاک شدن کوکیها کم باشد. این موضوع ممکن است منجر به دادههای پراکنده و درک نادرست از رفتار کاربران شود.
- User ID به دلیل اتصال به سیستم احراز هویت (Authentication System) معمولاً دقت بیشتری دارد و حتی در صورت حذف یا مسدودسازی کوکیها همچنان قابل اعتماد است.
موارد استفاده
- Client ID برای ردیابی رفتارهای عمومی کاربران مفید است، مانند مقایسه بازدیدکنندگان جدید و بازگشتی، میانگین مدت زمان جلسه، و نرخ تبدیل. حتی با وجود حذف یا مسدودسازی کوکیها، Client ID همچنان برای پیوند دادن ایونت های یک بازدیدکننده به یک سشن مفید است.
- User ID برای ردیابی پیشرفتهتر مانند تجزیه و تحلیل بین دستگاهی (Cross-Device Analysis) استفاده میشود. با این حال، اگر وبسایت شما قابلیت ورود (Login) ندارد، امکان ارسال User ID در GA4 برای شما وجود نخواهد داشت.
Google Analytics 4 (GA4) مجموعهای از متریک ها را برای اندازهگیری درآمد حاصل از وبسایت یا اپلیکیشن شما ارائه میدهد. سه مورد از مهمترین این متریک ها، درآمد کل (Total Revenue) ، درآمد خرید (Purchase Revenue) و درآمد آیتم (Item Revenue) هستند.
- درآمد کل به مجموع کل درآمدی اشاره دارد که از خرید، تبلیغات و پس از کسر ریفاند حاصل میشود. این متریک با استفاده از فرمول زیر محاسبه میشود:
درآمد کل = purchase + Subscription revenue + Ad revenue – ریفاند
- درآمد خرید به مجموع کل درآمدی اشاره دارد که از فروش آنلاین و خریدهای درونبرنامهای حاصل میشود. این متریک با استفاده از فرمول زیر محاسبه میشود:
درآمد خرید = مجموع قیمت تمام آیتمهای خریداری شده
- درآمد آیتم به درآمد حاصل از هر آیتم خریداری شده اشاره دارد. این متریک با استفاده از فرمول زیر محاسبه میشود:
درآمد آیتم = قیمت آیتم * تعداد آیتم خریداری شده
رابطه بین این سه متریک چیست؟
درآمد کل، جامعترین حالت این سه متریک است و شامل تمام درآمد حاصل از وبسایت یا اپلیکیشن شما میشود. درآمد خرید، زیرمجموعهای از درآمد کل است و تنها شامل درآمد حاصل از فروش آنلاین و خریدهای درونبرنامهای میشود. درآمد آیتم، دقیقترین حالت این سه متریک است و درآمد حاصل از هر آیتم خریداری شده را ردیابی میکند.
چگونه از این سه متریک برای سنجش درآمد کسب و کار خود استفاده کنیم؟
برای نظارت بر عملکرد درآمدی کسبوکار خود، تحلیل روندها، و اتخاذ تصمیمات آگاهانه، میتوانید از سه معیار کلیدی بهرهبرداری کنید. این متریکها شامل کل درآمد، درآمد خرید، و درآمد آیتم میشوند.
کل درآمد:
- ردیابی رشد کلی: با بررسی روند کل درآمد، میتوانید تصویر کاملی از عملکرد کلی کسبوکار خود به دست آورید.
- مقایسه با بودجه: این متریک به شما کمک میکند تا میزان تحقق بودجه درآمدی خود را ارزیابی کنید.
درآمد خرید:
- سنجش عملکرد فروش آنلاین یا خرید درونبرنامهای: با تحلیل روند درآمد خرید، میتوانید عملکرد این بخش از کسبوکارتان را ارزیابی کنید.
- شناسایی محصولات پرفروش: با بررسی درآمد خرید بر اساس آیتم، میتوانید محصولات یا خدماتی که بیشترین سهم را در درآمد دارند، شناسایی کنید.
درآمد آیتم:
- شناسایی محصولات پرفروش: این متریک به شما کمک میکند تا محصولات یا خدماتی که بیشترین فروش را داشتهاند، شناسایی کنید.
- سنجش عملکرد کمپینهای بازاریابی: با تحلیل درآمد آیتم بر اساس کمپینهای مختلف، میتوانید اثربخشی هر کمپین را ارزیابی کنید.
با درک تفاوت بین این سه متریک و نحوه استفاده از آنها در Google Analytics 4، میتوانید بینشهای ارزشمندی در مورد عملکرد درآمدی کسبوکار خود به دست آورید و تصمیمات استراتژیک مؤثرتری اتخاذ کنید.
آموزش گوگل تگ منیجر
گاهی اوقات ممکن است نیاز داشته باشید تا به آدرس IP بازدیدکنندگان خود دسترسی پیدا کنید. این کار میتواند برای اهداف مختلفی از جمله مسدود کردن ترافیک داخلی، تنظیم قوانین برای فعالسازی تگها، پیشپر کردن فرمها و غیره مفید باشد. اگرچه امکان ردیابی آدرس IP با Google Analytics نیز وجود دارد، اما توصیه نمیشود زیرا ممکن است با سیاستهای Google در رابطه با اطلاعات شخصی در تضاد باشد. در این پست، نحوه جمعآوری آدرس IP در یک متغیر GTM را با استفاده از یک اسکریپت توضیح میدهیم.
مرحله 1: جمعآوری آدرس IP بازدیدکننده
برای اولین قدم، باید آدرس IP بازدیدکننده را استخراج کنیم. روشهای مختلفی برای این کار وجود دارد، اما ما از جاوا اسکریپت استفاده خواهیم کرد زیرا یک روش جهانی است که تقریباً در هر شرایطی کار میکند.
<script type="application/javascript">
function getIP(json) {
dataLayer.push({"event":"ipEvent","ipAddress" : json.ip});
}
</script>
<script type="application/javascript" src="https://api.ipify.org?format=jsonp&callback=getIP"></script>
این کد با فرستادن یک درخواست به وبسایت IPify، آدرس IP را دریافت میکند. سپس آدرس IP به همراه یک ایونت با نام “ipEvent” به دیتا لیر GTM فرستاده میشود. برای دیدن نحوهی عملکرد این کد و دریافت آدرس IP خود، میتوانید روی این لینک کلیک کنید.
برای اضافه کردن این تگ به سایت، وارد تگ منیجر شوید.
از بخش تگ، Custom HTML را انتخاب کنید. تریگر این تگ را ALL Page قرار دهید.
سپس از بخش Variables، آی پی آدرس را به عنوان یک متغیر دیتالیر تعریف کنید. مشابه با تصویر زیر:
بعد از آن مجدد از بخش تگ، Google Analytics: GA4 Event را انتخاب کنید و تنظیمات تگ را مشابه با تصویر زیر انجام دهید.
برای تعیین تریگر این ایونت، باید از تریگر Custom Event استفاده کنید و مشابه با تصویر زیر تنظیمات آن را انجام دهید:
بعد از طریق بخش Preview Mode گوگل تگ منیجر، بررسی کنید که این ایونت به درستی کار میکند یا نه. در سمت چپ بخش دیباگ مود گوگل تگ منیجر باید اسم ایونت ipEvent را مشاهده کنید. با کلیک روی این ایونت، در بخش Variavles، باید آدرس آی پی خودتان را در متغیر دیتالیری که ایجاد کرده اید، مشاهده کنید.
بعد از اینکه مطمئن شدید همه چیز در سمت تگ منیجر به درستی کار میکند، نوبت به این میرسد که آدرس آی پی را به عنوان یک کاستوم دایمنشن در آنالیتیکس تعریف کنید تا بتوانید در گزارش های اکسپلور آنالیتیکس 4 از آن استفاده کنید.
بعد از آن باید 24 الی 48 ساعت منتظر باشید تا دیتا در آنالیتیکس قرار بگیرد. شما میتوانید با اتصال آنالیتیکس 4 به گوگل بیگ کوئری، یوزر آیدی هایی که رفتار ربات گونه دارند را شناسایی کرده و مسدود کنید.
در رابط کاربری گوگل تگ منیجر، بخشی تحت عنوان “Container quality” وجود دارد. اگر وضعیت آن به رنگ سبز و با عبارت “Excellent” نمایش داده شود، پس احتمالا با چالش خاصی رو به رو نیستد. اما در اکثر موارد، پیام “Needs attention” را مشاهده خواهید کرد که نشاندهنده وجود یک یا چند مسئله بالقوه میباشد. برای کسب اطلاعات بیشتر، بر روی لینک “View issues” کلیک کنید. در این مقاله به بررسی یکی از رایجترین مشکلات گزارششده در این بخش، یعنی ” Some of your pages are not tagged”، خواهیم پرداخت. لازم به ذکر است که بخش مشابهی با عنوان “Tag quality” نیز در گوگل آنالیتیکس وجود دارد و موارد ارائه شده در این مقاله برای آن بخش نیز قابل استفاده است. برای دسترسی به این بخش، وارد بخش ادمین در پراپرتی آنالیتیکس خود شوید و سپس دیتا استریم و استریم وب سایت خود را انتخاب کنید. در نهاید روی گزینه Configure tag settings کلیک کنید.
هشدار “برخی از صفحات شما تگ نشدهاند” در تگ منیجر
پس از کلیک بر روی لینک “View issues” در بخش “Container quality”، فهرستی از تمامی هشدارهایی که باید رفع کنید، نمایش داده خواهد شد.
بر روی “See untagged pages” کلیک کنید.
در این بخش، صفحات وب سایت شما بر اساس وضعیتی که دارند در ۴ دسته قرار میگیرند:
- Included pages: تمام صفحاتی که گوگل برای این کانتینر خاص شناسایی کرده است، اعم از تگ شده و نشده.
- Not tagged: براساس اطلاعات گوگل، این صفحات فاقد تگ هستند (به این معنی که Google Tag یا Google Tag Manager روی آنها فعال نشده است). در ادامه به این موضوع خواهیم پرداخت.
- No recent activity: صفحاتی که در گذشته توسط گوگل ردیابی شدهاند اما در ۳۰ روز اخیر هیچ فعالیت بر روی آنها ثبت نشده است.
- Tagged: گوگل تگ در ۳۰ روز گذشته بر روی این صفحات بارگذاری شده است.
اگر حداقل یک صفحه در دسته “Not tagged” وجود داشته باشد، پیام خطای “Some of your pages are not tagged” نمایش داده خواهد شد.
منظور از گوگل تگ چیست؟
در این خطا، گوگل تگ به دو مفهوم اشاره دارد:
- قطعه کد gtag.js: این قطعه کد مستقیماً در سورس کد وبسایت قرار داده می شود میشود. این روش برای وبسایتهایی مناسب است که از گوگل تگ منیجر استفاده نمیکنند و ترجیح میدهند ایونت ترکینگ در GA4 یا گوگل ادز را به صورت دستی در سورس کد قرار دهند.
- قطعه کد کانتینر گوگل تگ منیجر: این قطعه کد برای مدیریت تگهای مختلف در گوگل تگ منیجر استفاده می شود و به سورس کد وبسایت اضافه میشود.
با وجود اینکه گوگل تگ منیجر دارای فرمتی به نام “گوگل تگ” است، سیستم تشخیص خطا به تگهای درون کانتینر اهمیت نمیدهد. در واقع، صرفاً بررسی میکند که آیا هر صفحه از وبسایت دارای کد ردیابی GTAG یا کد کانتینر گوگل تگ منیجر است یا خیر.
برای رفع خطای Some of your pages are not tagged در تگ منیجر چه کنیم؟
معمولاً سه حالت ممکن برای این خطا وجود دارد:
- صفحه مورد نظر باید تگ شود اما تگ نشده است: در این حالت، لازم است بررسی شود که چرا تگ نصب نشده و مشکل برطرف گردد.
- صفحه نباید تگ شود: این شرایط ممکن است در مورد صفحات خاصی مانند فایلهای PDF یا بخشهای ادمین وبسایت صدق کند.
- خطای کاذب: در برخی موارد، ممکن است سیستم به اشتباه وجود مشکل را گزارش کند.
در هر یک از این موارد، بررسی دقیقتر برای تشخیص علت خطا ضروری است.
۱. تایید تگگذاری صفحات
فرآیند بررسی را با سناریویی آغاز میکنیم که GA4 به صورت مستقیم (با افزودن کد آن به سورس وبسایت) نصب شده باشد.
ابتدا به لیست صفحات “Not tagged” مراجعه کرده و اولین URL را کپی نمایید. سپس به آدرس tagassistant.google.com مراجعه کرده، بر روی “Add domain” کلیک کنید، URL کپیشده را وارد نموده و دکمه “connect” را بزنید.
یک تب یا پنجره جدید باز وبسایت شما باز خواهد شد. ویجت دستیار تگ (در گوشهی پایین سمت راست) باید وضعیت اتصال را تایید نماید. به تب یا پنجرهی tagassistant بازگردید.
در بالای صفحه، ترکینگ کد GA4 متعلق به وبسایت خود را یافته و روی آن کلیک کنید. در بخش “Hits Sent” میبایست ایونت هایی (مانند “page_view” یا موارد مشابه) را مشاهده نمایید.
در صورت مشاهدهی این ایونت ها، به احتمال زیاد GA4 به درستی نصب شده و عملکرد درستی دارد. در این حالت، هشداری که در تگ منیجر میبیند یک اشتباه است و نیازی به انجام کاری از سمت شما نیست.
اکنون میتوانید به لیست صفحات “Not tagged” بازگشته و صفحهی مورد نظر را به عنوان “Ignore” علامتگذاری نمایید. برای انجام این کار، نشانگر ماوس را بر روی URL مربوطه نگه داشته و سپس روی علامت منفی کلیک کنید.
امکان نادیده گرفتن گروهی صفحات نیز وجود دارد. بدین منظور، باکس کنار صفحات مورد نظر را علامت زده و سپس بر روی دکمهی “Ignore” در بالای لیست کلیک نمایید.
چنانچه با عدم مشاهدهی ایونت های رایج در GA4 مانند بازدید از صفحه در tagassistant مواجه شدید، ممکن است GA4 به درستی نصب نشده باشد. پس باید از دولوپر خود کمک بگیرید و یا خودتان بررسی کنید که آیا کد نصب آنالیتیکس را در تمام صفحات قرار داده اید یا نه.
این فرآیند را برای سایر URLهای صفحه تکرار نمایید. در صورت یافتن صفحهای بدون تگ، نسبت به رفع مشکل اقدام نمایید.
بررسی Google Tag Manager:
در صورتی که از Google Tag Manager استفاده میکنید، فرآیند بررسی اندکی متفاوت است. به کانتینر Google Tag Manager خود مراجعه نموده و بر روی “Preview” کلیک نمایید.
سپس، URL وبسایت خود را وارد کرده و بر روی “Connect” کلیک کنید. در صورت برقراری اتصال در حالت Preview، احتمالا مشکلی ندارید. در واقع این اتصال نشان میدهد که صفحه تگگذاری شده و میتوانید آن را به عنوان “Ignore” علامتگذاری نمایید. اما اگر اتصال به درستی برقرار نشد، پس باید برای شناسایی علت عدم نصب درست تگ منیجر روی سایت اقدام کنید.
صفحات معاف از تگگذاری
ابزار تشخیص تگ گاهی اوقات صفحاتی را شناسایی میکند که هرگز نباید با تگ گوگل یا تگ منیجر گوگل تگگذاری شوند. به عنوان مثال، یک URL مربوط به یک فایل PDF (قرار دادن کدهای ردیابی جاوا اسکریپت روی فایلهای غیر وب امکانپذیر نیست). مثال دیگر میتواند پنل ادمین یک وبسایت باشد، مانند: “mywebsite.com/wp-admin/”.
در صورتی که چنین آدرسهایی را در لیست صفحات “تگ نشده” مشاهده میکنید و قصد ردیابی آنها را هم ندارید، به سادگی آن صفحات را “Ignore” کنید.
اخطار اشتباه
دلایل دیگری نیز وجود دارد که برخی از صفحات به اشتباه به عنوان “Not tagged” علامت گذاری شوند.
- صفحات با ترافیک کم: این احتمال وجود دارد که صفحاتی با ترافیک کم، حتی در صورت عمدی بودن ترافیک پایین، به اشتباه به عنوان “Not tagged” علامت گذاری شوند. به عنوان مثال، صفحات تایید سفارش.
- صفحات ری دایرکت شده: بر اساس اعلام گوگل، ری دایکرت نیز میتوانند باعث تشخیص اشتباه صفحات شوند. به عنوان مثال، اگر “https://mywebsite.com” به “https://www.mywebsite.com” ری دایرکت شود، هر دو URL ممکن است به عنوان تگ نشده علامت گذاری شوند.
- اسلش انتهای آدرس: مشابه شرایط ری دایکرت، اسلش در انتهای URL میتواند باعث ایجاد این خطا شود. “https://mywebsite.com” و “https://mywebsite.com/” هر دو ممکن است به عنوان “تگ نشده” علامت گذاری شوند.
- حروف بزرگ و کوچک: این موضوع شبیه به دو مثال قبلی است. اگر به یک صفحه با حروف کوچک و بزرگ بتوان دسترسی داشت، هر دو ممکن است به عنوان “تگ نشده” علامت گذاری شوند. مثال: “https://mywebsite.com/contact” و “https://mywebsite.com/CONTACT“
۲۴ ساعت صبر کنید
لطفا 24 ساعت منتظر باشید. هدف نهایی تأیید URL های مشخص شده به عنوان “Not tagged” و سپس انجام یکی از اقدامات زیر است:
- رفع مشکل عدم وجود قطعه کد GTM/GTAG
- علامتگذاری صفحه به عنوان “Ignore”
هنگامی که لیست صفحات “Not tagged” خالی شود، هشدار “Some of your pages are not tagged” حذف خواهد شد.
با این حال، توجه داشته باشید که این ابزار برای بهروزرسانی 24 ساعت زمان نیاز دارد. اگر صفحهای بدون کد ردیابی پیدا کردید و مشکل آن را برطرف کردید، لطفا 24 ساعت منتظر بمانید تا وضعیت آدرس اینترنتی به “Tagged” تغییر کند.
در دهه گذشته، تغییرات هیجانانگیز بسیاری در زمینه سنجش و تحلیلها رخ داده است که منجر به معرفی و رشد ابزارهای بسیاری شده است. این ابزارها به همراه ویژگیها و بهروزرسانیهای دائماً در حال تغییر خود میتوانند بسیاری از بازاریابان و افرادی که به طور روزانه از آنها استفاده نمیکنند را گیج کنند، زیرا دنبال کردن تمام این تغییرات سخت است. گوگل آنالیتیکس 4 یا به اختصار GA4، جانشین یونیورسال آنالیتیکس (UA)، یکی از این ابزارهاست که توسط کسبوکارهای کوچک تا بزرگ استفاده میشود و در حال تکامل است، به این معنی که همیشه چیزهای بیشتری در رابطه با این ابزار برای یادگیری وجود دارد. آنالیتیکس۴ اغلب به همراه Google Tag Manager استفاده میشود.در این بلاگ پست، ما Google Tag Manager را با Google Analytics 4 مقایسه خواهیم کرد تا به عنوان دیجیتال مارکتر با هریک از این ابزارها و تفاوت های این دو باهم، بهتر آشنا شوید.
Google Analytics 4 چیست؟
Google Analytics 4 جانشین Universal Analytics است، ابزار تحلیل وب گوگل که به مدت ۱۲ سال کار میکرد و در تاریخ ۱ جولای ۲۰۲۳ (جولای ۲۰۲۴ برای مشتریان ۳۶۰) کار خود را متوقف کرد.
GA4، ابزاری است که انواع دادهها در مورد رفتار و تعاملات کاربران را جمعآوری میکند، یعنی اقداماتی که کاربران در وبسایت یا اپلیکیشن انجام میدهند و گزارشهای مختلفی را برای سنجش عملکرد وبسایت/اپلیکیشن شما فراهم میکند. این ابزار به طور پیوسته در حال تغییر است، به گونه ای که به نظر میرسد یادگیری و آموزش آنالیتیکس ۴ تمامی ندارد!
به عنوان یک متخصص پرفورمنس مارکتر، GA4 ابزاری ضروری برای تحلیل دقیق رفتار کاربران و تعاملات آنها با وبسایت یا اپلیکیشن شما است. با استفاده از دادهها و گزارشهای فراهم شده توسط GA4، شما میتوانید عملکرد کمپینهای بازاریابی خود را به طور دقیق اندازهگیری کنید، استراتژی بازاریابی خود را بهینهسازی کنید و تجربه کاربری را بهبود ببخشید تا به اهداف کسبوکار خود دست یابید.
گوگل آنالیتیکس ۴ با ویژگیهای کلیدی جدیدی وارد عرصه بازاریابی دیجیتال شده است که به ما اجازه میدهد درک بهتری از رفتار کاربران داشته باشیم و کمپینهای بازاریابی خود را با دقت بیشتری هدفگذاری و بهینهسازی کنیم. در ادامه به برخی از ویژگیهای اساسی که GA4 ارائه میدهد، اشاره میکنیم:
- ردیابی مبتنی بر ایونت: در آنالیتیکس ۴، تمرکز ردیابی اتفاقات بر مبنای ایونت است و نه سشن. این امر به دلیل آن است که ایونتها، که اقداماتی هستند که کاربران انجام میدهند، در نتیجه دیدگاه بهتری از میزان تعامل کاربران ارائه میدهند.
- یکپارچهسازی دادههای وب و اپ: GA4 اطلاعات وبسایت و اپلیکیشن را در یک پراپرتی جمعآوری میکند تا درک بهتر و یکپارچه ای از نحوه تعامل کاربر با سایت و اپلیکیشن شما در اختیارتان قرار دهد.
- اضافه شدن بخش DebugView: عیبیابی و رفع مشکلات ایونت ترکینگ در آنالیتیکس ۴ به لطف اضافه شدن بخشی به نام دیباگ ویو آسانتر شده است. شما میتوانید دادههای در لحظه را با جزئیات کامل مشاهده کنید تا اطمینان حاصل کنید آنالیتیکس ۴ داده ها را همانطوری دریافت میکند که شما میخواهید.
- کنترل حریم خصوصی: GA4 حریم خصوصی کاربران را به طور پیشفرض بهبود بخشیده و به طور مداوم در تلاش است تا آن را بهتر کند. شما اکنون میتوانید زمان نگهداری دادهها و نحوه شناسایی کاربران را تعیین کنید.
- اتصال به بیگ کوئری: در نسخه یونیورسال تنها کاربرانی میتوانستند از مزایای بیگ کوئری استفاده کنند که از نسخه ۳۶۰ آنالیتیکس استفاده میکردند. اما امکان اتصال بیگ کوئری به آنالیتیکس ۴ در حال حاضر برای تمامی کاربران فراهم شده است.
- ردیابی بین چند دامنه: با استفاده از GA4، ردیابی کاربران در دامنههای مختلف یا همان کراس دامین ترکینگ بسیار آسانتر شده است بدون آنکه به دستکاری کد یا استفاده از گوگل تگ منیجر نیاز باشد.
گوگل تگ منیجر (GTM) چیست؟
گوگل تگ منیجر یک سیستم مدیریت تگ (TMS) است که به شما کمک میکند تا کدهای ردیابی ابزارهای دیگر مانند GA4 را بدون دستکاری دستی کد وبسایت اضافه کنید و ایونت های مختلف را ردیابی کنید.
مانند GA4، استفاده و کار با گوگل تگ منیجر به صورت رایگان امکان پذیر است. ابزارهای مدیریت تگ دیگری در بازار وجود دارند، مانند Tealium، Adobe Launch و غیره، اما GTM یکی از پرکاربردترین ابزارها است.
تنها کاری که کاربران باید انجام دهند این است که کد GTM را روی وبسایت خود نصب کنند و سپس از GTM برای افزودن کد ردیابی ابزارهای دیگر مانند گوگل ادز، متا، X، لینکدین و غیره، تگهای ریتارگتینگ و ایونت ترکینگ در صورت نیاز استفاده کنند.
نحوه کار گوگل تگ منیجر به این صورت است که، GTM اطلاعات را از دیتالیر برای استفاده در ساخت ایونت و سپس ارسال آن دادهها به ابزارهای دیگر مانند GA4دریافت میکند. بنابراین میتوان گوگل تگ منیجر را واسطه ای بین سایت و دیگر ابزارهای دیجیتال مارکتینگ مانند گوگل آنالیتیکس ۴ و گوگل ادز در نظر گرفت.
روشهای دیگر، مانند اسکریپینگ دیتا از وبسایت مانند حالت DOM، زمانی استفاده میشوند که دیتا لیر در دسترس نباشد. گرچه این روش خیلی قابل اعتماد نیست، زیرا با ایجاد هرگونه تغییری در ساختار کدنویسی سایت، ممکن است ایونت ترکینگ هم با مشکل رو به رو شود. به همین دلیل بهتر است که همیشه در صورت امکان از روش ارسال دیتا به دیتا لیر توسط دولوپر استفاده شود.
تفاوت آنالیتیکس ۴ با گوگل تگ منیجر چیست؟
در زمینه بازاریابی و تجزیه و تحلیل دادههای وب یا همان وب آنالیتیکس، دو ابزار اساسی و متمایز از گوگل وجود دارد: گوگل تگ منیجر (GTM) و گوگل آنالیتیکس (GA4). این دو ابزار در عملکرد و ویژگیهای خود تفاوتهای اساسی دارند که درک آنها برای بازاریابان دیجیتال اهمیت زیادی دارد.
- جمعآوری دادهها: GTM وظیفه ردیابی و جمعآوری دادهها را بر عهده دارد اما آنها را ذخیره نمیکند. این در حالی است که GA4 علاوه بر جمعآوری، قابلیت ذخیرهسازی دادهها را نیز دارد. بنابراین، GTM به عنوان یک واسط برای ردیابی، جمعآوری و ارسال دادهها به GA4 عمل میکند.
- گزارشدهی: GA4 تواناییهای گزارشدهی قوی دارد که اجازه میدهد تجزیه و تحلیلهای مختلفی انجام شود. اما این امکان با استفاده از GTM وجود ندارد، زیرا GTM هیچ گونه گزارشدهی انجام نمیدهد.
- یکپارچگی: فقط میتوان رویدادهای خاصی را که مربوط به GA4 هستند از طریق GTAG (که شامل کدنویسی مستقیم است) ردیابی کرد. اما با استفاده از GTM، میتوان رویدادها را برای سایر پلتفرمها نیز ردیابی کرد و آنها را در یک مکان مدیریت نمود.
- ایونتها: هنگام استفاده از GA4 برای ردیابی رویدادها، باید از الگوی کد مشخصی پیروی کرد و این قطعات کد باید برای تمام رویدادهایی که میخواهید ردیابی کنید، در وبسایت قرار گیرند. مانند مثال زیر که
button_click
به عنوان رویداد با پارامترbutton_text
است.
با استفاده از GTM، میتوانید ایونتها را با ایجاد تگ ایونت GA4 و تنظیم شرایطی (معروف به تریگر) که در آنها باید این ایونتها جمعآوری و به GA4 ارسال شوند، ردیابی کنید.
- کانورژن ها: GTM ایونتها را به GA4 میفرستد. این سیستم نمیداند آیا آنها کانورژن هستند چرا که کانورژن ها در رابط کاربری GA4 پیکربندی میشوند.
- کاربران: کاربران هر دو ابزار ممکن است متفاوت باشند. GA4 معمولاً مخاطبان گستردهتری دارد که در آن دیجیتال مارکترها، مدیران محصول/پروژه و سایر ذینفعان مایل به کسب اطلاعات مهم هستند. GTM به طور کلی محل بازی افرادی است که به جنبههای فنی نسبت به گزارشدهی و تحلیل علاقه بیشتری دارند.
درک این تفاوتها برای در پرفورمنس مارکتینگ ضروری است تا بتواند از تواناییهای هر دو ابزار به نحو احسن استفاده کند و استراتژیهای بازاریابی دیجیتال خود را به بهترین شکل ممکن پیادهسازی نماید.
چه زمانی باید از Google Tag Manager به جای Google Analytics 4 استفاده کنیم؟
پاسخ کوتاه در بیشتر موقعیتها این است که استفاده همزمان از هر دوی آنها توصیه میشود، زیرا این دو ابزار یکدیگر را تکمیل میکنند و این موضوع به معنای انتخاب یکی از دو نیست.
بله، شما میتوانید بدون استفاده از GTM از GA4 استفاده کنید، اما با استفاده از GTM، پیادهسازی و مدیریت تگها آسانتر و منظمتر میشود. در غیر این صورت، شما برای تغییرات جزئی نیز به شدت به توسعهدهندگان وابسته خواهید بود که این امر منجر به تاخیر در انجام کارها میشود.
به همین ترتیب، استفاده از GTM بدون GA4 امکانپذیر است، اما این اتفاق به ندرت میافتد. صادقانه بگوییم، استفاده نکردن از GTM برای نصب GA4 در وبسایت/اپ خود و ارسال دادهها به GA4، چندان منطقی به نظر نمیرسد، زیرا با استفاده از GTM میتوانید تغییرات را به صورت سریع و آسان اعمال کنید.
پس، اگر شما از قدرت هر دو ابزار به خوبی استفاده کنید و آنها را برای اهدافی که برایشان ساخته شدهاند به کار ببرید، کل فرآیند ردیابی و گزارشدهی را برای خودتان ساده تر خواهید کرد و در زمان و پول زیادی که صرف ارتباطات رفت و برگشتی با توسعهدهندگان برای تغییرات دستی در کدها صرف می شود ، صرفهجویی خواهید کرد.
شاید ندانید، اما هنگامی که از Google Tag Manager استفاده میکنید، در واقع کدهای جاوااسکریپتی را پیکربندی میکنید که به دنبال ردیابی تعاملات در وبسایت هستند. Google Tag Manager درواقع یک رابط کاربری آسان برای انجام این کار ارائه میدهد، بنابراین هنگام کار با آن نیازی به دانش برنامه نویسی نیست! با این حال، هرچه بیشتر با Google Tag Manager کار کنید، بیشتر نیازمند درک و استفاده از جاوااسکریپت برای پیشبرد تحلیلهای خود خواهید بود. استفاده از جاوااسکریپت در تگ های Custom HTML، متغیرهای جاوااسکریپت، یا تمپلیت های سفارشی، انعطافپذیری بیشتری به شما میدهد تا اطلاعات دقیقتری در مورد نحوه تعامل کاربران با سایت خود به دست آورید. اگر به برنامهنویسی علاقهمند هستید اما تازهکار هستید، یادگیری جاوااسکریپت ممکن است چالشبرانگیز به نظر برسد. اما بالاخره باید از جایی شروع کرد، درست است؟ این آموزش به شما کمک خواهد کرد تا با استفاده از پنج موضوع کلیدی در مورد جاوااسکریپت برای گوگل تگ منیجر، پیاده سازی و اجرای ایونت ترکنیگ خود را بهتر پیش ببرید.
به عنوان یک پرفورمنس مارکتر، درک این مفاهیم اساسی نه تنها به شما اجازه میدهد تا با ابزارهایی مانند Google Tag Manager به طور بهتری کار کنید، بلکه به شما این قدرت را میدهد که دادههای خود را به شیوهای دقیقتر تجزیه و تحلیل کنید. بهرهبرداری از دادهها برای بهبود تبلیغات، افزایش تعامل کاربر و بهینهسازی تجربه کاربری، میتواند تفاوت قابل توجهی در عملکرد کمپینهای شما ایجاد کند.
چرا یادگیری جاوا اسکریپت برای دیجیتال مارکترها ضروری است؟
در دنیای وب امروز، نقش جاوا اسکریپت فراتر از یک زبان برنامهنویسی ساده است؛ آن را میتوان روح پنهانی دانست که در پس پرده به وبسایتها جان میبخشد و تعامل کاربری را به اوج میرساند. جاوا اسکریپت به همراه HTML و CSS، سهگانهای را تشکیل میدهد که اساس و بنیان یک وبسایت تعاملی و پویا را رقم میزنند. HTML ساختار و محتوای وبسایت را مشخص میکند، CSS زیبایی و استایل را به آن میبخشد و جاوا اسکریپت با قدرت تعاملی خود، جانی تازه به این عناصر میدهد.
برای دیجیتال مارکترها، دانستن نحوه بهکارگیری جاوا اسکریپت در Google Tag Manager به منظور افزودن اسکریپتهای سفارشی به وبسایت بدون دستکاری مستقیم کد وب، یک مهارت کلیدی است. اگر به دنبال افزایش دانش خود در زمینه جاوا اسکریپت هستید، پیشنهاد میکنم دورههای رایگان جاوا اسکریپت ارائه شده توسط W3Schools را شرکت کنید.
مفاهیم پایه جاوا اسکریپت برای گوگل تگ منیجر
در دنیای بازاریابی دیجیتال و بهینهسازی سایتها، داشتن دانش برنامهنویسی، بهخصوص در JavaScript، میتواند یک مزیت رقابتی بهشمار آید. در این راستا، شناخت سینتکس (دستورالعمل نوشتاری کد) JavaScript و تفاوتهای موجود میان نسخههای مختلف آن، از اهمیت ویژهای برخوردار است.
امروزه، نسخه فعلی JavaScript که بهعنوان ECMAScript 6 (ES6) شناخته میشود، تحولات قابل توجهی را در نحوه نوشتار کدها به ارمغان آورده است. با این حال، نکته قابل توجه برای دیجیتال مارکترها و کارشناسان SEO این است که اگرچه Google Tag Manager (GTM) از ES6 پشتیبانی میکند، اما در تگهای کاستوم HTML یا متغیرهای کاستوم JavaScript، تنها به نسخه ES5 وفادار مانده است.
این تفاوتهای نسخهای میتواند برای دیجیتال مارکترها بهویژه زمانی که در تلاش برای اجرای اسکریپتهای پیچیده در GTM هستند، حائز اهمیت باشد. بهعنوان مثال، یکی از ویژگیهای کلیدی ES6، معرفی Arrow Functions است که سینتکس سادهتر و خواناتری برای تعریف توابع فراهم میآورد. با این حال، این توابع در ES5 و در نتیجه در بخشهایی از GTM که تنها از ES5 پشتیبانی میکنند، قابل استفاده نیستند.
تعریف و مقدار دهی متغیرها در جاوا اسکریپت
در عرصه برنامهنویسی، تعریف متغیرها یکی از اصول پایهای است که به ما امکان میدهد تا با اختصاص دادن نام به مقادیر یا اشیاء، به دادهها دسترسی پیدا کنیم. این امر با استفاده از متغیرها، که به عنوان نمایندهای از دادهها عمل میکنند، امکانپذیر است. نحوه تعریف متغیرها بین نسخههای مختلف جاوا اسکریپت، مانند EC5 و EC6، متفاوت است.
در نسخه EC5، متغیرها با کلیدواژه var
تعریف میشوند. این کلیدواژه انعطافپذیری بالایی دارد اما محدودیتهایی نیز به همراه دارد.
var clothingBrand = ‘Nike’;
var price = 1500;
در حالی که نسخه EC6، با استفاده از const
و let
، میتوان متغیر تعریف کرد:
const clothingBrand = ‘Nike’;
const price = 1500;
مهمترین نکات هنگام استفاده از جاوا اسکریپت برای گوگل تگ منیجر
در ادامه این مطلب به پنج موضوع کلیدی در رابطه با استفاده از جاوااسکریپت در Google Tag Manager میپردازد که به دانش فنی پیچیدهای نیاز ندارند.
دیتالیر
یک وب سایت معمولاً دارای سه لایه است: آنچه کاربران شما می بینند، لایه ابزارهای متصل به وب سایت (مانند Google Analytics و Google Tag Manager) و دیتالیر، جایی که داده های تولید شده توسط کاربر ذخیره می شود. Data Layer یک روش قابل اعتماد برای جمع آوری داده ها از وب سایت در اختیار شما قرار می دهد. مقادیر داخل این لایه اغلب توسط Google Tag Manager برای ارسال اطلاعات به تگ ها استفاده می شود. این اطلاعات شامل ایونتها، متغیرها و تریگر هایی هستند که می توانند بر اساس مقادیر متغیرها تنظیم شوند. به محض اینکه کد نصب تگ منیجر روی سایت قرار بگیرد، دیتالیر هم به صورت خودکار ایجاد می شود.
بنابراین زمانی که میخواهید مطمئن شوید که تگ منیجر روی یک سایت به درستی کار میکند یا نه، اولین کاری که باید انجام دهید این است که به دیتا لیر نگاهی بیاندازید. یک راه سریع و راحت برای دسترسی به دیتا لیر، حتی بدون دسترسی به Tag Assistant، استفاده از Developer Tools در مرورگر است. اگر از Google Chrome استفاده میکنید، به منوی برنامهها، سپس More Tools و سپس Developer Tools بروید. برای دسترسی به این بخش میتوانید از میانبر صفحه کلید Ctrl+Shift+I برای ویندوز یا Cmd+Shift+I برای مک هم استفاده کنید.
در تب Console، dataLayer را تایپ کنید، سپس Enter را فشار دهید.
با بررسی این بخش میتوانید مطمئن شوید که اطلاعات به درستی ذخیره شده اند یا نه.
انواع دادهها و ساختار داده در جاوا اسکرپیت
دیتا تایپ به کامپیوتر میگوید که متغیر چه اطلاعاتی را ذخیره میکند و نحوه پردازش و دستکاری آن را تعیین میکند. در JavaScript، انواع دادههای رایج شامل رشتهها، اعداد، بولین و آبجکت میشوند.
- رشتهها (Strings) مجموعهای از کاراکترها هستند که در ” ” قرار میگیرند و به عبارتی، متن محسوب میشوند. برای مثال،
var clothingBrand = 'Nike';
نام یک برند لباس را نشان میدهد. - اعداد (Numbers) یک مقدار عددی هستند. برای نمونه،
var price = 15;
قیمت یک کالا را نشان میدهد. - بولین (Booleans) فقط میتوانند یکی از دو مقدار true یا false را داشته باشند. این نوع دادهها برای عملیات منطقی و تصمیمگیری در کد استفاده میشوند. به عنوان مثال،
var isOnSale = true;
نشان میدهد که یک کالا در حال فروش است.
اگر انواع داده ها را مواد تشکیل دهنده در نظر بگیریم، ساختارهای داده دستور العمل هایی هستند که مواد را ترکیب می کنند. آرایه و آبجکت، رایجترین ساختارهای داده هستند که در جاوا اسکریپت برای تگ منیجر به کار برده می شوند. آرایه، که با استفاده از براکت [] مشخص می شوند، یکی از انواع ساختار داده است که به شما امکان می دهد چندین مقدار را در یک متغیر واحد نگهداری کنید. همانطور که در قطعه کد زیر مشخص است، میتوانید در یک آرایه چند نوع داده متفاوت ذخیره کنید. به خاطر داشته باشید که در جاوا اسکریپت، ایندکس هر داده از ۰ شروع میشود. در واقع برای دسترسی به داده اول در آرایه باید از ایندکس شماره ۰ استفاده کرد. آرایه ها در ایکامرس ترکینگ، برای ارسال اطلاعات محصول همراه با ایونت های مربوط به ایکامرس، مورد استفاده قرار میگیرند.
var clothingCategories = [‘shoes’, ‘t-shirts’, ‘pants’];
var firstElement = myArray[0]; // returns ‘shoes’
var dataTypes = [‘string’, 1, true, [1, 2, 3]]; // arrays can hold multiple data types
به طور مشابه، یک آبجکت می تواند چندین مقدار از انواع داده های مختلف را در خود نگه دارد.یک آبجکت شامل جفت های کلید-مقدار است که توسط {} مشخص می شوند.
var objectExample = {key: value}; // Example
var itemDetails = {
materialComposition: {
‘cotton’: 70,
‘linen’: 30
},
price: 30,
onSale: false,
searchTags: [‘t-shirt’, ‘women’, ‘tops’]
};
توابع جاوا اسکریپت
یکتابع جاوا اسکریپت بلوکی از کد است که برای اجرای یک کار هدفمند مورد استفاده قرار میگیرد. این تابع یک ورودی می گیرد، یک عملیات مشخث روی ورودی انجام می دهد و خروجی مورد نظر را برمی گرداند.می توانید تابع را به عنوان یک کارخانه در نظر بگیرید که یک یا چند قطعه می گیرد و یک محصول نهایی تولید می کند. مهمترین مزیت استفاده از توابع جاوا اسکریپت این است که میتوانید از آنها در سراسر کدها با استفاده از افراخوانی، استفاده کنید.در مثال زیر، تابع قیمت یک کالا و مالیات را (به صورت اعشاری) دریافت می کند و قیمت را پس از کسر مالیات برمی گرداند.
function priceAfterTax(price, tax) {
return price * (1 + tax);
};
هنگام ایجاد متغیرهای جاوا اسکریپت سفارشی در GTM، از توابع ناشناس استفاده می شود، منظور توابعی است که اسم مشخصی نداشته و در نتیجه در ادامه فراخوانی نمی شوند. به عنوان مثال کد زیر شامل یک تابع ناشناس است:
function () {
for (var e = document.getElementsByTagName(“iframe”), x=0; x < e.length; x++) {
if (/^https?:\/\/player.vimeo.com/.test(e[x].src)) {
return true;
}
}
return false;
}
دستورات شرطی (یا دستورات if) زمانی مورد استفاده قرار میگیرند که بر اساس بررسی یک سری شرایط خاص روی ورودی، یک سری عملیات خاص انجام میدهند. این دستورات اغلب در توابع برای برگرداندن خروجی های مختلف بسته به ورودی استفاده می شوند.در کد زیر، بسته به قیمت کالا، برای اینکه ارسال رایگان باشد یا خیر، تابع یک مقدار بولین برمیگرداند.
function freeShipping(price) {
if (price < 100) {
return false;
} else {
return true;
}
};
اسکوپ در جاوا اسکرپیت
Scope قابلیت دسترسی به یک متغیر، شی و تابع را از قسمت های مختلف کد تعریف می کند.دو اسکوپ اصلی برای EC5 وجود دارد: جهانی (global) و function (معروف به محلی). زمانی که یک متغیر به صورت گلوبال تعریف می شود، بدون هیچ محدودیتی میتوان در سراسر کد به آن دسترسی داشت. اما در حالت تابع، متغیر فقط در سطح همان تابعی که تعریف شده است، در دسترس است و بیرون از همان تابع نمیتوان به آن دسترسی داشت. در مثال زیر، نمیتوانید به متغیر isFreeShipping خارج از تابع دسترسی داشته باشید زیرا این متغیر داخل تابع تعریف شده است.با این حال، میتوانید از متغیر shippingCost و تابع addShippingCost در توابع دیگر استفاده مجدد کنید.
var shippingCost = 10; // Global scope
function addShippingCost(price) {
var isFreeShipping = freeShipping(price) // Function-Local scope
if (isFreeShipping) {
return price;
} else {
return price + shippingCost;
}};
با توجه به این موضوع، هنگام تعریف متغیر در جاوا اسکریپت به موضوع اسکوپ و میزان دسترسی به متغیرها توجه داشته باشید. اگر نیاز دارید که به یک متغیر در توابع مختلفی دسترسی داشته باشید، باید متغیر را به صورت گلوبال تعریف کنید.
کار با داده از جنس رشته یا string
برای دسترسی به بخشی از یک متن باید از توابع مربوط به رشته ها استفاده کنید. روش .split() یکی از مهمترین توابعی است که هنگام کار با داده از جنس استرینگ مورد استفاده قرار میگیرد. سایر توابع کاربردی مرتبط با داده از نوع رشته عبارت هستند از:
- .slice() – قسمت مشخص شده یک رشته را استخراج می کند و یک رشته جدید برمی گرداند.
- .concat () – دو یا چند رشته به هم پیوسته را برمی گرداند.
- .lowerCase() – رشته مشخص شده را با تمام حروف کوچک برمی گرداند.
- .upperCase() – رشته مشخص شده را در تمام حروف بزرگ برمی گرداند.
کار با آرایه ها در جاوا اسکریپت
همانطور که قبلاً به گفتیم، آرایهها مانند فهرستهایی از اطلاعات سازمانیافته هستند که ذخیره و ترتیب اطلاعات از انواع دادههای مختلف را آسان میکنند.همانند رشتهها، میتوانید از انواع توابع مربوط به آرایه ها برای دستکاری این نوع داده ها استفاده کنید. برخی از کاربردی ترین توابع مربوط به آرایه ها عبارت هستند از:
- .push() – یک یا چند عنصر را به انتهای یک آرایه اضافه می کند (از این تابع برای وارد کردن دیتا به دیتالیر گوگل تگ منیجر استفاده می شود)
- .pop() – آخرین عنصر آرایه را حذف و برمی گرداند.
- .find() – اولین عنصر آرایه ای که شرایط مشخص شده را بدون تغییر آرایه اصلی برآورده می کند، پیدا کرده و برمی گرداند.
- .slice() – نباید با .splice() اشتباه گرفته شود، این متد بخشی از آرایه بین دو شاخص مشخص شده را به عنوان یک آرایه جدید برمی گرداند.
- .map() – یک آرایه جدید را پس از فراخوانی یک تابع در هر عنصر آرایه اصلی برمی گرداند.
- .forEach() – به شما امکان می دهد از هر عنصر در یک آرایه عبور کنید و با استفاده از آن عنصر عملیاتی را انجام دهید، اما – برخلاف .map() – چیزی را بر نمی گرداند.
- .includes() – یک بولین را بر اساس اینکه آیا آرایه حاوی عنصر مشخص شده است (این روش به حروف کوچک و بزرگ حساس است) برمی گرداند.
- .filter() – یک آرایه جدید حاوی هر عنصر در آرایه اصلی که شرایط مشخص شده را برآورده می کند، برمی گرداند.
منظور از DOM در جاوا اسکریپت
Document Object Model که به اختصار DOM نامیده می شود، نمایشی پویا از ساختار و محتوای یک وب سایت است. هنگامی که یک وب سایت را باز می کنید، مرورگر یک فایل HTML را از سرور وب سایت دانلود می کند و آنچه را که در سایت می بینید با استفاده از HTML، CSS و جاوا اسکریپت تولید می کند. سپس، DOM ساخته میشود و به کمک جاوا اسکریپت اجازه دسترسی به مقادیر خاصی از وبسایت را میدهد.
هنگامی که کاربران از سایت شما بازدید می کنند، کد ردیابی Google Analytics 4 از ایونت DOM برای ردیابی ایونت هایی مانند کلیک روی یک المان استفاده میکند.
دستور کوئری سلکتور (Query Selector)
تکنیک بعدی که می توانیم برای استفاده از جاوا اسکریپت برای گوگل تگ منیجر استفاده کنیم، روش کوئری سلکتور است. همانطور که پیش از این گفته شد، لایه ای از سایت که کاربران مشاهده میکنند، متشکل از HTML و CSS است. ما زمانی که بخواهیم به یک المان خاص در صفحه اشاره کنیم، میتوانیم از سی اس اس سلکتور آن المان استفاده کنیم. اما برای اینکه مطمئن شویم سلکتور انتخاب شده به صورت دقیق به المان مد نظر ما اشاره میکند، باید از دستور کوئری سلکتور در بخش کنسول اینسپکت استفاده کنیم.
درواقع کاری که کوئری سلکتور انجام می دهد این است که یک عنصر را در صفحه پیدا می کند و آن را به شما برمی گرداند تا بتوانید عملیات بیشتری را روی آن انجام دهید و آن را به Google Tag Manager منتقل کنید. تصور کنید که من میخواهک کلیک روی دکمه مشاوره رایگان در صفحه اصلی سایت خودم را ردیابی کنم. برای انجام این کار، باید از طریق یک سلکتور منحصر به فرد، به این المان دسترسی پیدا کنم. روی المان مورد نظرم راست کلیک کرده و گزینه inspect را انتخاب میکنم.
آموزش گوگل ادز
تفاوت کانورژن Primary و Secondary
عوارض متوقف شدن کمپین های خوب بازده در گوگل
Enhanced Conversions در گوگل ادز چیست؟
آموزش دیجیتال مارکتینگ
گروه کنترل در مارکتینگ چیست؟
بهینه سازی اپ استور (ASO) چیست؟ راهنمای جامع سال 2024
دلایل رها شدن سبد خرید + روش های بازیابی سبد خرید
فرم درخواست دوره های آموزشی
معرفی کتاب
کتاب انسان در جستجوی معنا
کتاب انسان در جستجوی معنا “Man’s Search for Meaning” که توسط عصبشناس – روانپزشک اتریشی
کتاب مدیریت توجه (Indistractable)
الان که در حال نوشتن مطلب بررسی کتاب مدیریت توجه (Indistractable: How to Control Your