چرا داده های CrUX با داده های RUM من متفاوت است؟

درباره دلایلی که چرا داده‌های RUM می‌توانند اعداد Core Web Vitals مختلف را از CrUX نشان دهند، بیاموزید.

گزارش تجربه کاربر Chrome (CrUX) معیارهای تجربه کاربر را برای نحوه تجربه کاربران Chrome در دنیای واقعی مقاصد محبوب در وب ارائه می‌کند. این داده‌ها به‌طور خودکار توسط Chrome از کاربرانی که شرکت کرده‌اند جمع‌آوری می‌شود و براساس معیارهای واجد شرایط بودن CrUX در دسترس قرار می‌گیرد.

بنابراین داده های CrUX برای میلیون ها وب سایت در دسترس است. بسیاری از صاحبان سایت قبلاً به داده های فیلد دسترسی نداشته اند و CrUX به بسیاری از سایت ها این امکان را داده است که برای اولین بار ارزش این را ببینند. به عنوان یک مجموعه داده عمومی، CrUX همچنین می تواند برای تجزیه و تحلیل رقابتی و محک زدن معیارهای تجربه کاربر استفاده شود.

نظارت واقعی کاربر (RUM) مشابه CrUX است، اما به‌جای اینکه Chrome به‌طور خودکار معیارهای تجربه کاربر را جمع‌آوری کند، کدی در وب‌سایت‌ها گنجانده شده است تا این مجموعه را انجام دهد و آن را برای تجزیه و تحلیل بیشتر به یک ارائه‌دهنده RUM یا راه‌حل تحلیلی بازگرداند.

با هر دو راه حل که معیارهای تجربه کاربر را اندازه گیری می کنند، طبیعی است که فرض کنیم آنها باید معادل باشند. وقتی تفاوت ها را می بینیم ممکن است گیج کننده باشد. این راهنما توضیح می‌دهد که چرا ممکن است این اتفاق بیفتد، و پیشنهاداتی برای انجام کارهایی که در صورت عدم همسویی اعداد انجام شود ارائه می‌کند.

مزایای مکمل CrUX با محلول RUM

CrUX یک ابزار عالی برای یک نمایش ثابت در سراسر سایت ها است و - به عنوان مجموعه داده رسمی برای برنامه Core Web Vitals - سایت ها احتمالاً می خواهند آنچه را که نشان می دهد زیر نظر داشته باشند. هدف CrUX ارائه یک نمای کلی آماری مرتبط از میلیون ها وب سایت برای مقایسه متقابل است.

با این حال، برای بررسی عمیق‌تر این که چرا داده‌ها اعداد را نشان می‌دهند، سرمایه‌گذاری در یک راه‌حل RUM کامل برای تکمیل CrUX می‌تواند به شما امکان دسترسی به اطلاعات دقیق‌تری نسبت به داده‌های قابل پرس و جوی عمومی را بدهد. این می تواند به شما در توضیح و بهبود معیارهای خود از طرق مختلف کمک کند.

تجزیه و تحلیل عمیق تر برای بررسی مسائل

از CrUX اغلب می توان برای اشاره به مشکلی در سایت خود استفاده کرد، اما نه لزوماً دقیقاً در کجای سایت شما مشکل وجود دارد و نه دلیل آن. راه‌حل‌های RUM - چه در خانه از طریق کتابخانه‌هایی مانند web-vitals یا برخی از بسیاری از محصولات تجاری - می‌توانند به پر کردن این شکاف کمک کنند.

استفاده از راه حل RUM به شما امکان می دهد به داده های بسیار دقیق تری برای همه صفحات خود و در همه مرورگرها دسترسی داشته باشید. همچنین به شما این امکان را می‌دهد که این داده‌ها را به روش‌هایی که CrUX انجام نمی‌دهد، تقسیم‌بندی و تجزیه و تحلیل کنید و به شما امکان می‌دهد مناطق مشکل‌دار سایت را بررسی و بررسی کنید. آیا آنها تحت تأثیر بخش خاصی از کاربران هستند؟ یا کاربرانی که اقدامات خاصی انجام می دهند؟ دقیقا از چه زمانی مشکل شروع شد؟ اینها سوالاتی هستند که پاسخ به آنها با داده های اضافی که یک ابزار RUM می تواند ارائه دهد بسیار آسان تر است.

با سایر معیارهای کسب و کار مرتبط باشد

RUM همچنین به شما امکان می دهد معیارهای عملکرد وب خود را مستقیماً با معیارهای تجاری مقایسه کنید، ارزش سرمایه گذاری در عملکرد را نشان می دهد، و اینکه کدام کار عملکرد دیگری را باید در اولویت قرار دهید. ما مطالعات موردی متعددی با کسب‌وکارهایی داریم که این همبستگی را انجام می‌دهند، مانند Farfetch یا The Economic Times .

سایر داده های عملکرد را جمع آوری کنید

راه حل RUM امکان جمع آوری سایر معیارهای سفارشی را فراهم می کند که مستقیماً به تجارت خاص شما مرتبط است. یکی از نمونه های شناخته شده تر، معیار " زمان برای اولین توییت " توییتر است. سپس این معیارهای خاص سایت را می توان با بهبودهای Core Web Vital و معیارهای تجاری مرتبط کرد.

تفاوت بین دو مجموعه داده میدانی

مردی که ساعت دارد می داند ساعت چند است. مردی با دو ساعت هرگز مطمئن نیست.

قانون سگال

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

داده های آزمایشگاهی در مقابل داده های میدانی

اولین چیزی که باید بررسی کنید این است که آیا به معیارهای آزمایشگاهی (مصنوعی) نگاه می کنید یا معیارهای میدانی (RUM). در حالی که طبیعی است که فرض کنیم محصولات RUM فقط به داده های میدانی نگاه می کنند، بسیاری از آنها یک جزء آزمایشگاهی را نیز ارائه می دهند.

داده‌های آزمایشگاهی دقیقاً به دلیل شرایط ثابتی که تحت آن اندازه‌گیری می‌کنند بسیار مفید هستند. می توان از آن برای نظارت بر تغییرات یا رگرسیون های غیرمنتظره در یک محیط تولید بدون نویز جمعیت میدان در حال تغییر استفاده کرد. با این حال، داده های آزمایشگاهی ممکن است نماینده تجربه واقعی کاربر نباشد، بنابراین معیارهای میدانی می توانند نتایج کاملا متفاوتی را نشان دهند.

جمعیت ها

مجموعه داده‌های مورد استفاده راه‌حل‌های CrUX و RUM ممکن است به دلیل تفاوت در اندازه‌گیری بازدیدهای صفحه بسته به مرورگرها، کاربران، سایت‌ها و دستگاه‌هایی که مقایسه می‌شوند، متفاوت باشند.

شامل مرورگرها

گزارش تجربه کاربر کروم، همانطور که از نامش پیداست، فقط برای کروم است. در حالی که بسیاری از مرورگرهای مبتنی بر Chromium (Edge، Opera و Brave) وجود دارند که از معیارهای مشابه Chrome با توجه به پایگاه کد اصلی مشترک پشتیبانی می‌کنند، فقط کاربران Chrome داده‌ها را به CrUX می‌دهند. این محدودیت همچنین به این معنی است که کاربران Chrome در iOS شامل نمی‌شوند، زیرا از موتور مرورگر Webkit استفاده می‌کند. WebView‌های Android نیز به‌عنوان «Chrome» به حساب نمی‌آیند، بنابراین داده‌های این کاربران شامل نمی‌شود—اگرچه برگه‌های سفارشی Chrome گنجانده شده است.

در حالی که کروم یکی از محبوب ترین مرورگرهای جهان است - و بنابراین احتمالاً در بیشتر موارد عملکرد سایت شما را به طور گسترده نشان می دهد - اندازه گیری فقط آن مرورگر به هیچ وجه معیاری برای همه کاربران شما نیست. این ممکن است یک تفاوت اصلی بین RUM و CrUX را توضیح دهد. این امر به ویژه در مورد تکنیک‌های عملکردی که برای مثال به APIها یا قالب‌های تصویری که فقط در Chrome موجود هستند، متکی هستند، صادق است.

فقدان داده های iOS نیز می تواند منجر به سوگیری شود. به عنوان مثال، از آنجایی که کاربران iOS معمولاً از دستگاه‌های با عملکرد بیشتری استفاده می‌کنند یا از کشورهای بیشتری با زیرساخت‌های شبکه بهتر بازدید می‌کنند، از جمله آنها می‌توانند به معیارهای عملکرد کلی بالا منجر شوند. از سوی دیگر، کنار گذاشتن آن‌ها - همانطور که CrUX انجام می‌دهد - می‌تواند منجر به داده‌هایی شود که به سمت پایین بازدیدکنندگان سایت منحرف می‌شوند ( مطالعه موردی مثال ). کاربران اندروید معمولاً طیف وسیع تری از دستگاه ها، قابلیت های دستگاه و بازارها را پوشش می دهند.

راه‌حل‌های RUM می‌توانند داده‌ها را برای مرورگرهای غیرChrome، و به ویژه از مرورگرهای مبتنی بر Chromium که اغلب معیارهای یکسانی (مانند Core Web Vitals) داخلی دارند، دریافت کنند. مرورگرهای غیر مبتنی بر Chromium نیز با راه‌حل‌های RUM اندازه‌گیری می‌شوند، اما ممکن است مجموعه‌ای از معیارهای محدودتری داشته باشند. برای مثال، تغییر چیدمان تجمعی (CLS) و تعامل با رنگ بعدی (INP) فقط در مرورگرهای مبتنی بر Chromium در دسترس هستند. برخی از معیارهای دیگر مانند First Contentful Paint (FCP) را می توان کاملاً متفاوت اندازه گیری کرد (بعدا را ببینید).

کاربران انتخاب شده

علاوه بر محدود بودن به کاربران Chrome، CrUX تنها با اندازه‌گیری زیرمجموعه‌ای از کاربران Chrome که هنگام نصب مرورگر اشتراک‌گذاری داده‌های CrUX را انتخاب کرده‌اند، محدودتر می‌شود.

ارائه‌دهندگان RUM همچنین فقط به زیرمجموعه‌ای از کاربران نگاه می‌کنند، معمولاً به دلیل درخواست‌های بنر کوکی - از کاربران می‌خواهند جمع‌آوری داده‌های RUM را انتخاب کنند - یا مسدودکننده‌های ردیابی. اگر تأیید تا صفحه دوم یا بعدی، زمانی که برخی از دارایی های سایت قبلاً از صفحات قبلی ذخیره شده اند، تأیید نشود، این می تواند بر روی بارگذاری های اولیه صفحه تأثیر منفی بگذارد. اگر اغلب این اتفاق بیفتد، اگر بارگذاری صفحه اولیه کندتر در تعداد کافی از موارد حذف شود، ممکن است معیارها در RUM مطلوب‌تر از آنچه در واقع هستند به نظر برسد.

سایت های گنجانده شده

CrUX فقط برای گزارش در وب سایت های عمومی در نظر گرفته شده است، بنابراین معیارهای واجد شرایط بودن دیگری وجود دارد که ممکن است منجر به عدم ثبت اطلاعات در CrUX شود. قابل توجه ترین این معیارها این است که وب سایت باید به طور عمومی قابل کشف باشد و به اندازه کافی محبوب باشد تا از حداقل حجم نمونه اطمینان حاصل شود تا بتوان از آن نتیجه گیری های معناداری کرد. در بیشتر موارد، این باعث می شود که هیچ داده ای در CrUX در دسترس نباشد. این تفاوت کمتر گیج کننده در مقایسه با داده های موجود اما متفاوت است، اما توضیح می دهد که چرا این اتفاق می افتد.

با این حال، اگر صفحات خاصی از یک سایت به‌عنوان قابل نمایه‌سازی علامت‌گذاری شده باشند، اما سایر صفحات قابل فهرست‌بندی نباشند، ممکن است فقط زیرمجموعه‌ای از URLها را در CrUX مشاهده کنید. اگر مبدأ به صورت عمومی قابل کشف باشد، تمام نماهای صفحه در آن مبدا در داده‌های سطح مبدا گنجانده می‌شود، اما داده‌های سطح URL ممکن است در دسترس نباشند.

دستگاه ها

CrUX داده‌ها را بر اساس تلفن همراه، دسک‌تاپ و تبلت تقسیم‌بندی می‌کند - اگرچه بسیاری از ابزارها روی دو مورد اول تمرکز دارند و ممکن است داده‌های رایانه لوحی را در معرض نمایش نگذارند، یا ممکن است آن‌ها را در تلفن همراه یا دسک‌تاپ قرار دهند. ویژگی های عملکرد در تلفن همراه در مقابل دسکتاپ می تواند کاملاً متفاوت باشد - هم از نظر محتوای ارائه شده و هم از نظر قابلیت های دستگاه هایی که آنها را مشاهده می کنند.

داده‌های RUM امکان تقسیم‌بندی ترافیک را به طور مشابه فراهم می‌کنند، اما اغلب داده‌های تلفیقی را به‌طور پیش‌فرض نشان می‌دهند. RUM ممکن است فقط به بخش‌بندی بر اساس نوع دستگاه (مثلاً تلفن همراه) یا مرورگر (مثلاً Chrome) اجازه دهد، اما نه تنها برای مشاهده ترافیک Chrome تلفن همراه، هر دو. هنگام مقایسه با داده‌های CrUX، اطمینان حاصل کنید که با فیلتر کردن بر اساس نوع دستگاه و مرورگر کروم، شبیه به مشابه را مقایسه می‌کنید.

نمونه برداری

راه‌حل‌های RUM معمولاً امکان تنظیم نرخ نمونه‌برداری بازدیدکنندگانی را که داده‌ها را انتخاب کرده‌اند، تنظیم می‌کنند. این می تواند برای کاهش حجم داده های مورد نیاز برای تجزیه و تحلیل و کاهش هزینه های خدمات RUM تجاری استفاده شود. اگر آن حجم نمونه خیلی کوچک باشد و معرف جامعه وسیع‌تر نباشد، معیارهای حاصل نیز به طور مشابه دچار انحراف خواهند شد. با ارائه دهنده RUM خود در مورد اندازه نمونه گیری مناسب برای سایت خود بحث کنید.

تجمیع داده ها

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

مدت زمان

داده‌های CrUX بر اساس یک پنجره کشویی 28 روزه از ترافیک است، و امکان تغییر این بازه زمانی وجود ندارد - اگرچه داده‌های CrUX BigQuery برای هر ماه ذخیره می‌شود و به شما امکان می‌دهد ماه‌های قبل را ببینید، و CrUX History API نیز داده‌های تاریخی را ارائه می‌دهد. در یک دوره هفتگی هر دو هنوز بر اساس پنجره 28 روزه کشویی ارائه می دهند.

داده‌های RUM معمولاً به جزئیات بیشتر اجازه می‌دهد تا تأثیر تغییرات را خیلی زودتر مشاهده کنید. با این حال، هنگام انتخاب دوره‌های کوچک‌تر، داده‌های RUM می‌توانند به‌طور غیرمنطقی تحت تأثیر نوسانات ترافیک وب‌سایت و بازدیدکنندگان قرار بگیرند. هنگام مقایسه داده‌های RUM با داده‌های CrUX، همیشه مطمئن شوید که عملکرد را در طول 28 روز بررسی می‌کنید. هنگامی که از مشابه بودن داده‌ها راضی شدید، می‌توانید به بازه‌های زمانی دیگر برای بررسی داده‌های RUM نگاه کنید.

تجمیع آمار

معیارهای CrUX در صدک 75 اندازه‌گیری می‌شوند، یعنی با نگاهی به مقداری که 75 درصد از بازدیدهای صفحه به دست آورده‌اند. در داده های میدانی افراطی وجود خواهد داشت و با حذف بدترین تجربیات 25 درصدی، در نظر گرفته شده است که ارزشی به دست آورد که به طور منطقی می توان انتظار داشت اکثر بازدیدکنندگان به آن دست یابند.

محصولات RUM اغلب گزینه های بیشتری را برای نحوه جمع آوری معیارها، از جمله صدک 75، میانه و صدک های دیگر ارائه می دهند. اگر مقادیر RUM را با داده‌های CrUX مقایسه می‌کنید، لازم است مطمئن شوید که به داده‌های صدک 75 نگاه می‌کنید تا مشابه به مشابه را مقایسه کنید.

داده های هیستوگرام در CrUX شامل تمام داده های موجود است - نه فقط صدک 75 - و تعداد بازدیدهای صفحه را در هر رتبه بندی نشان می دهد، اما امتیاز کل بر اساس صدک 75 خواهد بود. این داده‌های CrUX در ابزارهایی مانند PageSpeed ​​Insights ظاهر می‌شوند:

نماگرفت PageSpeed ​​Insights که هیستوگرام بارگیری صفحه رتبه بندی LCP را نشان می دهد
PageSpeed ​​Insights صدک 75 CrUX و داده های هیستوگرام را نشان می دهد

تفاوت در معیارها

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

معیارهای اندازه گیری شده

داده‌های CrUX مجموعه داده‌های رسمی ابتکار Core Web Vitals است و در درجه اول این معیارها ( LCP ، CLS و INP ) را با چند معیار دیگر برای تکمیل این معیارها اندازه‌گیری می‌کند.

ابزارهای RUM معمولاً شامل این Core Web Vitals هستند، اما اغلب شامل بسیاری از معیارهای دیگر نیز می‌شوند. برخی از ارائه دهندگان RUM نیز تجربه کاربر را با استفاده از ترکیب خود از همه این معیارها برای ارائه "شاخص شادی" یا مواردی از این دست اندازه گیری می کنند. هنگام مقایسه داده های RUM با CrUX، اطمینان حاصل کنید که شبیه به مشابه را مقایسه می کنید.

ابزارهایی که وضعیت گذراندن یا شکست Core Web Vitals را ارزیابی می‌کنند، باید یک صفحه را در صورتی که اهداف توصیه‌شده در صدک 75 برای همه Core Web Vitalها برآورده می‌کند، در نظر بگیرند. اگر INP برای صفحات بدون تعامل وجود نداشته باشد، فقط LCP و CLS باید عبور کنند.

تفاوت های متریک در مرورگرها

CrUX فقط در مرورگرهای Chrome اندازه گیری می شود، و می توانید به Web Vitals Changelogs مراجعه کنید تا ببینید این تغییرات با هر نسخه کروم چگونه تغییر می کند.

راه حل های RUM، با این حال، از طیف وسیع تری از مرورگرها اندازه گیری می شوند. مرورگرهای مبتنی بر Chromium (Edge، Opera و غیره) احتمالاً مشابه Chrome خواهند بود، مگر اینکه Chrome تغییرات جدیدی را همانطور که در Changelog ذکر شده است، اعمال کند.

برای مرورگرهای غیر Chromium، تفاوت ها می تواند آشکارتر باشد. برای مثال First Contentful Paint (FCP) در سافاری و فایرفاکس موجود است، اما به روشی متفاوت اندازه‌گیری می‌شود . این می تواند منجر به تغییرات قابل توجهی در زمان های گزارش شده شود. همانطور که قبلاً گفته شد، اگر می‌خواهید RUM را با CrUX مقایسه کنید، بهتر است فقط کاربران Chrome را فیلتر کنید تا امکان مقایسه مشابه برای مشابه را فراهم کنید.

زمان بندی معیارها

معیارهای Core Web Vitals توسط APIهای مرورگر وب ارائه می شوند، اما این بدان معنا نیست که پتانسیلی برای تفاوت مقادیر گزارش شده با استفاده از آنها وجود ندارد. دقیقاً زمانی که اندازه گیری متریک انجام می شود - در بارگذاری صفحه یا در طول چرخه عمر کامل صفحه - می تواند منجر به تفاوت شود. ابزارهای RUM ممکن است همیشه معیارها را به یک روش اندازه گیری نکنند - حتی اگر از همان نام ها استفاده کنند - و API های مرورگر یکسانی برای دریافت داده ها، که می تواند گیج کننده باشد.

بزرگترین رنگ محتوایی (LCP) یک معیار بارگذاری صفحه است. اگر عناصر بزرگتر بعداً پس از رندر اولیه بارگذاری شوند، می‌توان تعدادی از عناصر LCP را توسط Web API گزارش کرد. عنصر LCP نهایی زمانی است که بارگذاری صفحه تمام می شود یا کاربر با صفحه تعامل دارد. بنابراین اگر عنصر LCP زودتر از آن دو رویداد گزارش شود، ممکن است تفاوت‌هایی ایجاد شود.

علاوه بر این، در داده های فیلد، عنصر LCP بسته به نحوه بارگیری صفحه می تواند متفاوت باشد. برای بارگذاری صفحه پیش‌فرض که بالای محتوای صفحه را نشان می‌دهد، عنصر LCP عمدتاً به اندازه صفحه بستگی دارد. با این حال، اگر صفحه با یک پیوند لنگر در پایین‌تر از سند باز شود، یا به طور مشابه با یک پیوند عمیق به یک برنامه یک صفحه (SPA) باز شود - در ادامه در مورد آن بیشتر خواهیم گفت - عنصر LCP می‌تواند متفاوت باشد.

فرض نکنید که زمان بندی LCP ارائه شده در CrUX و RUM بر اساس همان عنصر ابزارهای آزمایشگاهی است. در حالی که CrUX مقدار کلی LCP را در هر صفحه یا مبدا به شما می‌دهد، RUM می‌تواند این مقدار را بیشتر برای شناسایی جلسات مشکل LCP جداگانه تقسیم کند.

تغییر چیدمان تجمعی (CLS) در طول عمر صفحه اندازه گیری می شود، بنابراین CLS بارگذاری صفحه اولیه ممکن است نماینده صفحاتی نباشد که بعداً پس از بارگیری صفحه و تعامل کاربر با آن باعث جابجایی بیشتر می شوند. بنابراین، گرفتن مقدار CLS فقط پس از بارگیری صفحه - همانطور که بسیاری از محصولات RUM انجام می دهند - نتیجه متفاوتی نسبت به گرفتن مقدار CLS پس از اتمام صفحه توسط کاربر دارد.

معیار پاسخگویی تعامل با رنگ بعدی (INP) نیاز به یک ورودی دارد که باید اندازه‌گیری شود و تمام تعاملات کلیک، ضربه و صفحه‌کلید را در طول عمر صفحه مشاهده می‌کند، به روشی مشابه CLS، و بنابراین مقدار گزارش شده INP ممکن است بسیار زیاد باشد. اگر بعد از اینکه کاربر تعدادی تعامل در صفحه انجام داد اندازه گیری شود متفاوت است.

CrUX مستندات Core Web Vitals را دنبال می‌کند و آن‌ها را در طول عمر کامل صفحه اندازه‌گیری می‌کند. بسیاری از ارائه دهندگان RUM به دلایل مختلف این معیارها را پس از بارگیری صفحه یا در زمان دیگری (مثلاً هنگامی که روی یک فراخوان برای اقدام کلیک می شود) اندازه گیری می کنند.

هنگامی که واریانس های غیرقابل توضیح بین دو منبع داده را مشاهده می کنید، درک درستی از ارائه دهنده RUM خود در مورد زمان اندازه گیری Core Web Vitals مهم است.

اپلیکیشن های تک صفحه ای

برنامه های تک صفحه ای (SPA) به جای انجام ناوبری واقعی صفحه در سطح مرورگر، با به روز رسانی محتوای صفحه فعلی کار می کنند. این بدان معنی است که مرورگر این موارد را به عنوان پیمایش صفحه نمی بیند، علیرغم اینکه کاربران آن را به این صورت تجربه می کنند. APIهای Core Web Vitals ارائه شده توسط مرورگر این موارد را در نظر نمی گیرند و بنابراین CrUX از این پیمایش های صفحه پشتیبانی نمی کند. کار برای حل این مشکل در حال انجام است - برای اطلاعات بیشتر به پست آزمایش با اندازه گیری ناوبری نرم مراجعه کنید.

برخی از ارائه دهندگان RUM تلاش می کنند "ناوبری های نرم" را در SPA ها شناسایی کنند، اما اگر معیارهای Core Web Vitals را نیز به آن "ناوبری های نرم" نسبت دهند، منجر به تفاوت هایی با CrUX می شود زیرا API های زیربنایی این مورد را برای بسیاری از موارد پشتیبانی نمی کنند. معیارها

تفاوت های CrUX و Web API

علاوه بر تفاوت‌هایی که در آن بازدیدهای صفحه اندازه‌گیری می‌شوند و آنچه اندازه‌گیری می‌شود، چند سناریو پیچیده‌تر دیگر وجود دارد که باید از آن‌ها آگاه بود که می‌تواند منجر به تفاوت در داده‌های CrUX و RUM شود. برخی از این موارد به دلیل محدودیت‌های Web APIهای مورد استفاده برای اندازه‌گیری معیارها هستند، و برخی از مواردی هستند که نتایج بازگردانده شده توسط API باید برای سناریوهای خاص به طور متفاوتی مورد بررسی قرار گیرند. اسناد Core Web Vitals این تفاوت‌ها را برای LCP و CLS فهرست می‌کند، اما تفاوت‌های اصلی نیز در بخش‌های زیر ذکر شده‌اند.

کش عقب / جلو

CrUX بازیابی‌های کش Back/Forward (یا bfcache) را به عنوان پیمایش صفحه در نظر می‌گیرد، حتی اگر منجر به بارگذاری صفحه معمولی نشود. از آنجایی که APIهای وب این موارد را به عنوان بارگذاری صفحه در نظر نمی گیرند، راه حل های RUM اگر می خواهند با CrUX مطابقت داشته باشند، باید مراحل بیشتری را برای شمارش این صفحات انجام دهند . اینها به طور قابل توجهی سریع‌تر بارگذاری صفحه هستند که می‌توانند منجر به گزارش عملکرد کلی بهتر برای یک سایت شوند، بنابراین عدم درج آنها می‌تواند منجر به بدتر شدن معیارهای عملکرد کلی صفحه شود. به راه حل RUM خود مراجعه کنید تا بفهمید آیا آنها صفحات بازیابی شده bfcache را مدیریت می کنند یا خیر.

آی فریم ها

به دلایل امنیتی و حفظ حریم خصوصی، صفحات سطح بالا به محتوای داخل iframe ها (حتی iframes با همان منبع) دسترسی ندارند. این بدان معناست که معیارهای عملکرد برای محتوا در آن‌ها را فقط می‌توان توسط خود iframe اندازه‌گیری کرد و نه از طریق Web API در صفحه فریم. اگر محتوای iframe شامل عنصر LCP یا محتوایی باشد که بر CLS یا INP تجربه شده توسط کاربر تأثیر می‌گذارد، این مورد برای راه‌حل‌های RUM ( از جمله کتابخانه JavaScript web-vitals Google ) در دسترس نخواهد بود.

با این حال، CrUX که توسط خود مرورگر کروم به جای جاوا اسکریپت در صفحه اندازه‌گیری می‌شود، این محدودیت‌ها را ندارد و به همین دلیل معیارها را در iframe هنگام گزارش Core Web Vitals اندازه‌گیری می‌کند. این به طور دقیق‌تر آنچه را که کاربر تجربه می‌کند منعکس می‌کند، اما می‌تواند دلیل دیگری برای تفاوت‌ها برای سایت‌هایی باشد که از iframe استفاده می‌کنند.

یک مثال عینی از اینکه چگونه این می تواند منجر به تفاوت بین داده های LCP در CrUX و RUM شود <video> تعبیه شده است. اولین فریم رنگ‌شده عنصر <video> در حال پخش خودکار می‌تواند به عنوان کاندید LCP محسوب شود، اما جاسازی‌ها برای سرویس‌های پخش ویدیوی محبوب ممکن است این عناصر را در یک <iframe> قرار دهند. CrUX می تواند این را توضیح دهد، زیرا می تواند به محتوای <iframe> دسترسی داشته باشد، اما راه حل های RUM نمی توانند.

منابع متقاطع

رسانه LCP که از دامنه‌های دیگر ارائه می‌شود، به دلیل محدودیت‌های امنیتی مرورگر برای کاهش حملات زمان‌بندی، زمان رندر را در API PerformanceObserver نمی‌دهد - مگر اینکه سرصفحه Timing-Allow-Origin (TAO) ارائه شود. این به زمان بارگذاری منبع بازمی‌گردد ، اما ممکن است کاملاً متفاوت از زمانی باشد که محتوا واقعاً نقاشی شده است.

این می تواند منجر به وضعیت به ظاهر غیرممکن شود که در آن LCP توسط API های وب زودتر از FCP گزارش می شود. این مورد نیست، بلکه فقط به دلیل این محدودیت امنیتی ظاهر می شود.

دوباره، CrUX داده های زمان رندر را برای Core Web Vitals گزارش می کند. به سایت‌ها توصیه می‌شود که محتوای متقاطع را که بر معیارهای Core Web Vitals تأثیر می‌گذارد محدود کنند و اگر می‌خواهند آن را دقیق‌تر اندازه‌گیری کنند، TAO را در صورت امکان فعال کنند. سایر منابع متقاطع ممکن است مشمول محدودیت های مشابه باشند.

برگه های پس زمینه

وقتی صفحه‌ای در برگه پس‌زمینه باز نمی‌شود، همچنان معیارهایی را با استفاده از Web API منتشر می‌کنند. با این حال، این موارد توسط CrUX گزارش نمی‌شوند زیرا زمان‌بندی‌هایی را ارائه می‌دهند که با تجربه کاربر سازگار نیست. راه‌حل‌های RUM نیز باید این موارد را نادیده بگیرند یا حداقل توضیح دهند که چگونه با این بازدیدهای صفحه برخورد می‌شود.

پس چه کاری می توانیم در مورد آن انجام دهیم؟

ما نشان داده‌ایم که چرا ممکن است بین داده‌های CrUX و RUM تفاوت‌هایی وجود داشته باشد، یا به دلیل تفاوت در روش استفاده از هر کدام یا به دلیل اینکه کاربران و بازدیدهای صفحه شامل یا حذف می‌شوند. در حالت ایده‌آل، هر دو مجموعه داده همچنان نماینده عملکرد سایت شما هستند تا مفید باشند، اما دلایل ارائه شده باید مشخص کند که چرا به دست آوردن اعداد دقیق در هر یک از آنها بسیار بعید است.

در مواردی که تفاوت‌ها جزئی هستند (مثلاً گزارش LCP 2.0 ثانیه در مقابل 2.2 ثانیه) هر دو مجموعه داده مفید خواهند بود و معمولاً می‌توان آنها را تقریباً همگام در نظر گرفت.

زمانی که تفاوت‌های آشکار باعث می‌شود شما صحت داده‌ها را زیر سوال ببرید، باید سعی کنید آن تفاوت‌ها را درک کنید. آیا می‌توان برای کاهش این تفاوت‌ها، داده‌های RUM را فیلتر کرد تا با CrUX (فقط به کاربران کروم، برای دسک‌تاپ یا تلفن همراه، با مقادیر صدک ۷۵ در ۲۸ روز نگاه کنیم) تراز شود؟

اگر چنین است - و می توانید داده ها را با هم تطابق بیشتری دریافت کنید - هنوز باید بپرسید که چرا این تفاوت ها را در داده های کلی می بینید و این به چه معناست. آیا کاربران غیر کروم معیارهای شما را به صورت مثبت یا منفی تغییر می دهند؟ آیا این به شما بینش بیشتری در مورد اینکه در کجا مشکلات عملکردی دارید که می توانید اولویت بندی کنید به شما می دهد؟

اگر کاربران غیر Chrome شما نتایج متفاوتی دریافت می‌کنند، می‌توانید از این بینش ارزشمندی که RUM به شما داده است برای بهینه‌سازی متفاوت استفاده کنید. به عنوان مثال، API های خاصی در مرورگرهای خاصی در دسترس نیستند، اما می توانید جایگزین هایی را برای مرورگرهای پشتیبانی نشده در نظر بگیرید تا تجربیات آنها را نیز بهبود ببخشید. یا می‌توانید تجربه‌ای متفاوت، اما کارآمدتر به کاربران در دستگاه‌ها یا شبکه‌های محدود ارائه دهید. CrUX به داده‌های Chrome محدود می‌شود، اما باید تمام تجربیات بازدیدکنندگان سایت خود را برای اولویت‌بندی بهبودها در نظر بگیرید. داده های RUM می توانند این شکاف را پر کنند.

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

نگاه کردن به روندها برای مشاهده اینکه پیشرفت‌های شما دارای تأثیرات مثبت مورد انتظار هستند، اغلب مهم‌تر از مطابقت هر عدد دقیقاً بین دو منبع داده است. همانطور که قبلاً ذکر شد، RUM به شما امکان می‌دهد تا چارچوب‌های زمانی مختلف را بررسی کنید تا نمرات CrUX 28 روزه خود را ببینید - اگرچه نگاه کردن به بازه‌های زمانی خیلی کوتاه می‌تواند منجر به داده‌های پر سر و صدا شود، بنابراین چرا CrUX از 28 روز استفاده می‌کند.

اغلب هیچ پاسخ "درست" یا "اشتباه" در این معیارهای مختلف وجود ندارد - آنها فقط یک لنز متفاوت برای کاربران شما و نحوه تجربه آنها از سایت شما هستند. تا زمانی که می دانید چرا این تفاوت ها رخ می دهند و چه کاری می تواند برای تصمیم گیری شما انجام دهد، این چیزی است که برای ارائه خدمات بهتر به بازدیدکنندگان سایت شما مهم تر است.

سپاسگزاریها

تصویر کوچک توسط استیون للهام در Unsplash