گاهی در Google Ads هزار کلیک میبینید، اما GA4 فقط ۷۵۰ سشن برای همان کمپین گزارش میکند. یا تعداد کانورژنهای گوگل ادز از Key Eventهای آنالیتیکس بیشتر است. حتی ممکن است تعداد خریدها تقریبا برابر باشد، ولی ارزش کانورژن و درآمد با هم نخواند.
این اختلاف همیشه نشانه خراب بودن ترکینگ نیست. Google Ads و Google Analytics 4 با هدفهای متفاوتی ساخته شدهاند، رویدادهای متفاوتی را میشمارند و اعتبار کانورژن را هم طبق قواعد یکسانی توزیع نمیکنند. مشکل از جایی شروع میشود که دو متریک غیرهمسان را کنار هم میگذاریم و انتظار داریم دقیقا یک عدد نشان دهند.
برای پیدا کردن علت واقعی، اول باید مشخص کنیم اختلاف مربوط به کدام بخش است:
- Click و Session
- Key Event و Conversion
- تعداد کانورژنها
- تاریخ ثبت کانورژن
- منبع و کمپین
- Conversion Value و Revenue
هرکدام از این اختلافها علتها و مسیر عیبیابی خودش را دارد.
Click با Session یکی نیست
کلیک در Google Ads زمانی ثبت میشود که کاربر روی تبلیغ کلیک کند. سشن در GA4 زمانی آغاز میشود که کاربر وارد سایت یا اپ شود و سشن فعالی نداشته باشد. برای شروع سشن لازم نیست کاربر حتما فرم پر کند، روی دکمهای بزند یا چند صفحه ببیند.
این نکته را نباید با Engaged Session اشتباه گرفت. یک سشن زمانی Engaged محسوب میشود که بیشتر از ۱۰ ثانیه طول بکشد، حداقل یک Key Event داشته باشد یا کاربر دو Page View یا Screen View ثبت کند.
پس Click و Session از پایه دو واحد متفاوتاند. چند مثال ساده این تفاوت را روشن میکند.
چند کلیک میتواند فقط یک سشن بسازد
فرض کنید کاربر روی تبلیغ کلیک میکند، وارد سایت میشود و چند دقیقه بعد برای مقایسه دوباره به صفحه نتایج گوگل برمیگردد. اگر دوباره روی همان تبلیغ کلیک کند، Google Ads دو Click ثبت میکند؛ اما اگر سشن قبلی هنوز فعال باشد، GA4 ممکن است همان یک Session را ادامه دهد.
به همین دلیل، بیشتر بودن Click نسبت به Session لزوما به معنی از دست رفتن داده نیست.
بعضی کلیکها اصلا به سشن نمیرسند
ممکن است کلیک در Google Ads ثبت شود، اما تگ آنالیتیکس فرصت اجرا پیدا نکند. این اتفاق معمولا در چنین شرایطی دیده میشود:
- کاربر قبل از بارگذاری کامل صفحه، آن را میبندد.
- لندینگ کند است یا فایلهای JavaScript دیر اجرا میشوند.
- تگ GA4 روی صفحه فرود نصب نشده یا خطای اجرایی دارد.
- مرورگر، افزونه Ad blocker یا تنظیمات حریم خصوصی جلوی اجرای تگ را میگیرد.
- کاربر روی Call Asset یا بخشی از تبلیغ کلیک کرده که او را وارد سایت نمیکند.
- ریدایرکت صفحه فرود با خطا مواجه میشود.
در همه این حالتها، ثبت Click بدون Session قابل انتظار است.
Session هم میتواند از Click بیشتر شود
این تصور که تعداد سشن تحت هیچ شرایطی نباید از کلیک بیشتر شود، درست نیست. کاربری که قبلا از طریق تبلیغ وارد سایت شده، ممکن است در روزهای بعد دوباره برگردد و سشن تازهای بسازد، بدون اینکه روی تبلیغ جدیدی کلیک کرده باشد. ذخیره کردن آدرس صفحه، بازگشت مستقیم، باز کردن دوباره URL حاوی پارامترهای تبلیغاتی یا ادامه مسیر کاربر در بازه انتساب، عدد Session را افزایش میدهد.
Google Ads بخشی از کلیکهای نامعتبر را نیز فیلتر میکند. در بعضی شرایط، سشن حاصل از آن بازدید در GA4 ثبت شده است، اما Click مربوط به آن پس از بررسی از گزارش Google Ads حذف میشود. این هم یکی از سناریوهایی است که تعداد Session را از Click بیشتر نشان میدهد.
حذف شدن GCLID؛ یکی از شایعترین علتهای اختلاف
وقتی Auto-tagging در Google Ads فعال باشد، گوگل پارامتری مثل gclid را به آدرس صفحه فرود اضافه میکند. GA4 از این شناسه برای تشخیص ارتباط سشن با کلیک تبلیغاتی استفاده میکند.
اگر GCLID در مسیر حذف یا تغییر کند، معمولا خود سشن از بین نمیرود؛ مشکل این است که GA4 دیگر نمیتواند آن را درست به کمپین Google Ads نسبت دهد. در نتیجه ورودی تبلیغاتی ممکن است زیر Direct، Organic، Referral یا (not set) دیده شود.
حذف GCLID معمولا در یکی از این نقاط اتفاق میافتد:
- ریدایرکت از HTTP به HTTPS یا از یک دامنه به دامنه دیگر
- انتقال کاربر از لندینگ به سابدامین
- URL Rewrite در سرور یا CDN
- استفاده از لینک کوتاه
- تنظیم اشتباه Tracking Template یا Final URL Suffix
- کدهایی که Query String را از URL پاک میکنند
- محدودیت شبکه، مرورگر یا سرویس واسط
برای تست، فقط به URL نوشتهشده داخل تبلیغ نگاه نکنید. یک کلیک آزمایشی انجام دهید و بررسی کنید GCLID تا آخرین URL پس از تمام ریدایرکتها باقی میماند یا نه.
خاموش بودن Auto-tagging و UTMهای ناقص
اتصال Google Ads به GA4 بهتنهایی کافی نیست. Auto-tagging هم باید فعال باشد و پارامترهای تبلیغاتی در مسیر حفظ شوند. لینک کردن حسابها دادههای گذشته را اصلاح نمیکند؛ اثر آن از زمان اتصال به بعد است.
در بعضی کمپینها یا محیطهایی که شناسههای تبلیغاتی قابل استفاده نیستند، GA4 از پارامترهای UTM کمک میگیرد. اگر UTMها ناقص، اشتباه یا متناقض باشند، Source، Medium و Campaign درست ساخته نمیشوند.
برای مثال، اضافه کردن utm_campaign بدون utm_source و utm_medium یک ساختار قابل اتکا برای گزارشگیری نیست. همین مشکل در کمپینهایی که بخشی از پارامترها دستی و بخشی خودکار هستند هم دیده میشود.
اگر سهم (not set)، Direct یا Organic همزمان با افت Paid Sessions بالا رفته، باید قبل از هر تحلیل بازاریابی، Auto-tagging، GCLID، UTMها و ریدایرکتها را بررسی کنید.
اتصال Google Ads و GA4 چه چیزی را حل میکند؟
لینک کردن حسابها برای انتقال داده، ساخت Audience، مشاهده کمپینهای Google Ads در Analytics و استفاده از Key Eventهای GA4 در Google Ads ضروری است. اما این اتصال قرار نیست همه اعداد دو پلتفرم را یکسان کند.
حتی با اتصال کاملا درست، این تفاوتها باقی میمانند:
- Click همچنان با Session فرق دارد.
- Google Ads و GA4 ممکن است تاریخ کانورژن را متفاوت نمایش دهند.
- مدل Attribution و Conversion Window میتواند متفاوت باشد.
- Google Ads فقط کانورژنهای منتسب به تبلیغات واجد شرایط همان حساب را گزارش میکند، اما GA4 مسیرهای Paid و Organic را کنار هم میبیند.
- Primary و Secondary بودن Conversion Action روی ستونهای Google Ads اثر میگذارد.
پس اتصال صحیح یک پیشنیاز ترکینگ است، نه راهی برای برابر کردن مصنوعی گزارشها.
Key Event در GA4 با Conversion در Google Ads چه فرقی دارد؟
در ساختار فعلی GA4، اقدام مهم کاربر ابتدا بهصورت Event ثبت میشود. اگر آن رویداد برای کسبوکار مهم باشد، میتوان آن را به Key Event تبدیل کرد. برای گزارشدهی و بهینهسازی تبلیغات نیز میتوان از آن یک Conversion ساخت و با Google Ads به اشتراک گذاشت.
مسیر به زبان ساده این است:
Event → Key Event → Conversion
به همین دلیل، مقایسه Total Key Events در GA4 با ستون Conversions در Google Ads مقایسه دقیقی نیست. Total Key Events ممکن است رویدادهای Organic، Direct، Referral، Email و سایر کانالها را هم شامل شود؛ درحالیکه Google Ads فقط بخشی را میشمارد که طبق تنظیماتش به تعامل تبلیغاتی گوگل منتسب شده است.
برای مقایسه باید همان Conversion، همان Google Ads Account و همان تنظیمات Attribution را در گزارش Conversion Performance آنالیتیکس انتخاب کنید.
تفاوت Conversions و All Conversions
یکی از خطاهای رایج این است که ستون Conversions در Google Ads با کل Key Eventهای GA4 مقایسه میشود، بدون اینکه Primary و Secondary بودن Conversion Actionها بررسی شود.
در Google Ads معمولا:
- Primary Conversion در ستون Conversions قرار میگیرد و برای Bidding استفاده میشود.
- Secondary Conversion بیشتر برای مشاهده و تحلیل است و در All Conversions دیده میشود.
- All Conversions میتواند Primary، Secondary، View-through Conversion، بعضی تماسها، Store Visit و کانورژنهای دیگری را شامل شود که در گزارش وب GA4 معادل مستقیمی ندارند.
اگر یک Key Event از GA4 وارد Google Ads شده و بهصورت Secondary تنظیم شده باشد، ممکن است در All Conversions دیده شود اما در ستون Conversions نباشد. قبل از عیبیابی، گزارش را بر اساس Conversion Action تفکیک کنید تا مشخص شود دقیقا چه چیزهایی جمع زده شدهاند.
تفاوت روش شمارش کانورژنها
GA4 و Google Ads تنظیمات جداگانهای برای شمارش دارند.
در GA4، یک Key Event میتواند بهازای هر Event یا یکبار در هر Session شمرده شود. در Google Ads نیز گزینههای One و Every وجود دارد؛ اما واحد شمارش آن بر پایه Ad Interaction است، نه Session آنالیتیکس.
به همین دلیل، Once per Session در GA4 معادل مستقیم One در Google Ads نیست.
برای خرید معمولا ثبت هر تراکنش اهمیت دارد. در این حالت، Purchase باید برای هر خرید اجرا شود و transaction_id منحصربهفرد داشته باشد. برای لید، اگر ارسال چندباره فرم توسط یک نفر ارزش جداگانهای ندارد، مدل شمارش میتواند محدودتر باشد.
مثال: کاربری بعد از یک کلیک تبلیغاتی، فرم را سه بار ارسال میکند. GA4 ممکن است سه Event ثبت کند. Google Ads با تنظیم Every میتواند هر سه مورد را بشمارد، اما با One فقط یک Conversion برای آن تعامل تبلیغاتی گزارش میکند.
تاریخ کانورژن در دو گزارش یکسان نیست
فرض کنید کاربر دوشنبه روی تبلیغ کلیک کرده و پنجشنبه خرید انجام داده است. در گزارشهای معمول Google Ads، کانورژن اغلب به تاریخ تعامل تبلیغاتی یعنی دوشنبه نسبت داده میشود. در GA4 ممکن است خرید در تاریخ واقعی وقوع، یعنی پنجشنبه، دیده شود.
این تفاوت وقتی Conversion Lag زیاد باشد، گزارش روزانه و هفتگی را کاملا جابهجا میکند. برای مقایسه زمانی باید در Google Ads از ستونهایی مانند Conversions (by conv. time) یا All conv. (by conv. time) استفاده کنید. در گزارشهای جدید Conversion Performance در GA4 نیز امکان انتخاب Interaction Time یا Conversion Time وجود دارد.
Time Zone دو حساب را هم بررسی کنید. اگر Google Ads با یک منطقه زمانی و GA4 با منطقه دیگری تنظیم شده باشد، کانورژنهای نزدیک نیمهشب در دو روز متفاوت قرار میگیرند.
Attribution Model و Conversion Window
دو پلتفرم ممکن است اعتبار یک خرید را به کانالها یا تعاملهای متفاوتی بدهند. این اختلاف بهخصوص در مسیرهایی دیده میشود که کاربر چند بار از کانالهای مختلف وارد سایت شده است.
مثلا کاربر ابتدا روی تبلیغ Google Ads کلیک میکند، دو روز بعد از طریق جستوجوی ارگانیک برمیگردد و در مراجعه سوم بهصورت Direct خرید میکند. اینکه اعتبار خرید به کدام کانال برسد، به مدل Attribution، کانالهای واجد دریافت اعتبار و Lookback Window بستگی دارد.
در GA4 میتوان تعیین کرد فقط Google Paid Channels یا مجموعه Paid and Organic Channels امکان دریافت اعتبار داشته باشند. این تنظیم روی مقایسه با Google Ads اثر مستقیم دارد.
Conversion Window هم باید همسان باشد. اگر Google Ads خریدهای تا ۳۰ روز بعد از کلیک را بپذیرد ولی گزارش دیگری بازه کوتاهتری داشته باشد، با گذشت زمان اختلاف بیشتر میشود.
View-through و Cross-device Conversion
همه کانورژنهای Google Ads نتیجه کلیک مستقیم نیستند. ممکن است کاربر تبلیغ نمایشی یا ویدیویی را ببیند، روی آن کلیک نکند و بعدا خرید انجام دهد. اگر شرایط انتساب برقرار باشد، این خرید میتواند بهعنوان View-through Conversion گزارش شود.
View-through Conversion در ستون اصلی Conversions قرار نمیگیرد، اما در View-through Conversions و All Conversions دیده میشود. کانورژنهایی که از GA4 وارد Google Ads میشوند نیز View-through ندارند؛ برای این نوع اندازهگیری باید Native Google Ads Conversion Tracking فعال باشد.
Cross-device Conversion هم زمانی رخ میدهد که کاربر مثلا روی موبایل با تبلیغ تعامل داشته باشد و خرید را روی لپتاپ انجام دهد. Google Ads و GA4 برای شناسایی و مدلسازی این مسیرها دقیقا از یک روش استفاده نمیکنند، بنابراین اختلاف در کمپینهای چنددستگاهی طبیعیتر است.
Consent Mode، محدودیت مرورگر و دادههای مدلسازیشده
بخش مهمی از اختلافهای جدید به حریم خصوصی برمیگردد. وقتی کاربر اجازه ذخیره دادههای Analytics یا Advertising را نمیدهد، بخشی از شناسهها و دادههای قابل مشاهده در دسترس نیست.
اگر Consent Mode درست پیادهسازی شده باشد و حساب شرایط لازم را داشته باشد، Google Ads و GA4 میتوانند بخشی از دادههای ازدسترفته را مدلسازی کنند. این دو سیستم از مدلها، آستانهها و دادههای آموزشی یکسانی استفاده نمیکنند. پس حتی در پیادهسازی سالم Consent Mode هم انتظار برابری کامل اعداد منطقی نیست.
پیادهسازی اشتباه Consent Mode وضعیت را بدتر میکند. برای نمونه، اگر تگ اصلی GA4 قبل از تعیین Consent اجرا شود یا session_start بهدرستی ارسال نشود، ممکن است Source و Medium به (not set) تبدیل شوند یا یک مراجعه در قالب چند سشن جدا ثبت شود.
Enhanced Conversions نیز میتواند تعداد کانورژنهای قابل انتساب در Google Ads را افزایش دهد. این قابلیت با دادههای First-party هششده، بخشی از کانورژنهایی را بازیابی میکند که اتصالشان به کلیک تبلیغاتی در روش معمول از دست رفته است. اگر Enhanced Conversions در Ads فعال باشد اما مقایسه با داده مشاهدهشده GA4 انجام شود، بیشتر بودن عدد Ads لزوما نشانه ثبت تکراری نیست.
خطاهای فنی در GTM و تگها
گاهی علت اختلاف نه مدل Attribution است و نه محدودیت حریم خصوصی؛ تگ اشتباه اجرا میشود.
موارد زیر باید بررسی شوند:
- Measurement ID درست GA4 روی همه Landing Pageها نصب شده باشد.
- تغییرات Google Tag Manager واقعا Publish شده باشند.
- Conversion ID و Conversion Label گوگل ادز درست باشند.
- تگ Purchase یا Lead فقط در زمان موفقیت واقعی اجرا شود.
- تگ قبل از انتقال سریع کاربر به صفحه دیگر فرصت ارسال داده داشته باشد.
- Content Security Policy درخواستهای Google Tag و Analytics را مسدود نکند.
- فرم یا درگاه داخل iframe مانع دسترسی تگ به رویداد نهایی نشود.
- در سایتهای چنددامنه، Cross-domain Measurement تنظیم شده باشد.
- دامنه درگاه پرداخت یا سرویسهای واسط بهعنوان Referral ناخواسته وارد گزارش نشوند.
به صفحه تشکر بهتنهایی اعتماد نکنید. اگر کاربر صفحه را Refresh کند، ممکن است Purchase دوباره اجرا شود. برای جلوگیری از ثبت تکراری خرید، transaction_id باید برای هر سفارش منحصربهفرد باشد. استفاده از مقدار ثابت باعث کمشماری و خالی گذاشتن آن باعث افزایش احتمال ثبت تکراری میشود.
چرا تعداد خرید یکی است اما Revenue فرق دارد؟
اختلاف داده همیشه مربوط به تعداد کانورژن نیست. گاهی تعداد سفارشها برابر است ولی Purchase Revenue در GA4 با Conversion Value در Google Ads یا مبلغ واقعی فروشگاه همخوانی ندارد.
علتهای رایج عبارتاند از:
valueیاcurrencyهمراه Purchase ارسال نشده است.- مقدار خرید بهصورت متن یا همراه با علامت ارز فرستاده شده است.
- مالیات و هزینه ارسال در یکی از سیستمها محاسبه شده اما در دیگری نه.
- ارز Property آنالیتیکس با ارز حساب Google Ads متفاوت است.
- مبلغ سفارش بعدا تغییر کرده ولی Conversion Adjustment انجام نشده است.
- Refund فقط در GA4 یا فقط در Google Ads ثبت شده است.
- Purchase Event چند بار اجرا شده است.
transaction_idاشتباه، تکراری یا خالی است.
برای فروش و درآمد، پنل فروشگاه یا CRM باید مرجع تعداد سفارش واقعی، لغو، مرجوعی و مبلغ نهایی باشد. Google Ads ابزار انتساب و بهینهسازی تبلیغات است و GA4 رفتار کاربر و مسیر کانالها را تحلیل میکند؛ هیچکدام جای دیتابیس تراکنشهای قطعی کسبوکار را نمیگیرند.
آیا شرایط اینترنت ایران روی این اختلاف اثر دارد؟
در ایران باید یک احتمال دیگر را هم جدی گرفت: اختلال در دامنههای واسط تبلیغات گوگل یا مسیر ریدایرکت. اگر درخواست مربوط به Google Ads کامل نشود یا پارامتر تبلیغاتی در مسیر از بین برود، Click ممکن است در Ads باقی بماند اما GA4 سشن را به کانال دیگری نسبت دهد.
این موضوع را نباید بدون تست، علت قطعی همه اختلافها دانست. شرایط بین اپراتورها، ISPها، مرورگرها و بازههای زمانی مختلف یکسان نیست. برای اثبات آن باید Redirect Chain، حفظ GCLID در Final URL و درخواستهای Network را از چند شبکه ایرانی بررسی کرد.
اگر همزمان با یک دوره اختلال، Paid Sessions کاهش پیدا کرده و Direct، Organic یا (not set) بالا رفته است، احتمال مشکل در انتقال پارامتر و Attribution جدیتر میشود. اما اگر Total Sessions هم افت کرده، باید بارگذاری تگ، دسترسی به GA4 و سرعت لندینگ را نیز بررسی کرد.
چه مقدار اختلاف طبیعی است؟
گوگل درصد ثابتی بهعنوان «اختلاف طبیعی» معرفی نکرده است. عددهایی مثل ۱۰، ۲۰ یا ۳۰ درصد که در بعضی مقالات دیده میشوند، قانون عمومی نیستند. نوع کمپین، مرورگر کاربران، سرعت سایت، Consent Rate، Conversion Lag، تعداد مراجعه مجدد و تنظیمات حساب روی این نسبت اثر میگذارند.
بهجای تکیه بر یک درصد عمومی، برای هر حساب Baseline بسازید. نسبتهای زیر را بهصورت هفتگی دنبال کنید:
- Google Ads Clicks به GA4 Paid Sessions
- Google Ads Conversions به GA4 Google Ads Conversions
- Google Ads Conversion Value به درآمد واقعی فروشگاه
- سهم Direct، Organic و
(not set)از ورودیهای کمپین - نسبت حفظ GCLID تا صفحه نهایی
اگر این نسبتها در چند هفته پایدار بودهاند و ناگهان تغییر کردهاند، احتمالا یک اتفاق فنی، تغییر Consent، انتشار جدید GTM، تغییر لندینگ یا اختلال شبکه رخ داده است. خود مقدار اختلاف همیشه مهمترین سیگنال نیست؛ تغییر غیرعادی روند معمولا اطلاعات بیشتری میدهد.
مسیر عملی بررسی اختلاف Google Ads و GA4
برای عیبیابی، از این ترتیب جلو بروید:
- متریکهای همسان انتخاب کنید. Click را با Session یکی ندانید و Total Key Events را با Ads Conversions مقایسه نکنید.
- بازه زمانی کامل بردارید. داده امروز و دیروز هنوز ممکن است در حال پردازش باشد. برای بررسی اولیه، چند روز کامل و ترجیحا بازهای حداقل هفتروزه انتخاب کنید.
- Time Zone را تطبیق دهید. منطقه زمانی GA4 Property و Google Ads Account باید مشخص باشد.
- ستون درست را انتخاب کنید. Conversions را با Conversions by conv. time و All Conversions اشتباه نگیرید.
- گزارش را بر اساس Conversion Action تفکیک کنید. Primary، Secondary، تماس، خرید، لید و سایر اکشنها را جدا ببینید.
- Linking و Auto-tagging را بررسی کنید. مطمئن شوید حساب درست متصل است و GCLID در Final URL باقی میماند.
- ورودیهای
(not set)، Direct و Organic را بررسی کنید. رشد ناگهانی آنها میتواند نشانه Attribution شکسته باشد. - با Tag Assistant و DebugView تست واقعی انجام دهید. فقط وجود تگ در سورس صفحه کافی نیست؛ باید Event و پارامترهایش واقعا ارسال شوند.
- Counting، Attribution و Window را مقایسه کنید. تنظیمات متفاوت نتیجه متفاوت میسازند.
- Consent Mode و Enhanced Conversions را Audit کنید. هم وضعیت رضایت و هم ترتیب اجرای تگها مهم است.
- Cross-domain و Payment Gateway را تست کنید. Source نباید در میانه خرید عوض شود.
- خرید و درآمد را با دیتابیس فروشگاه یا CRM تطبیق دهید. تراکنش واقعی معیار نهایی فروش است.
هدف عیبیابی این نیست که با تغییر تنظیمات، دو گزارش را به زور برابر کنیم. باید بفهمیم هر اختلاف از تفاوت تعریف متریک میآید، از نحوه انتساب است یا از یک نقص واقعی در پیادهسازی.
Google Ads برای سنجش و بهینهسازی تبلیغات پولی طراحی شده، GA4 مسیر رفتار کاربران را در کانالهای مختلف نشان میدهد و CRM یا سیستم فروش، نتیجه قطعی کسبوکار را نگه میدارد. وقتی هر ابزار را با معیار درست خودش بخوانیم، اختلاف اعداد از یک مشکل گیجکننده به یک سرنخ تشخیصی تبدیل میشود.