بعد شهر من استخدام مشروع جانبي شخصي كمختبر لتجارب SEO، كان لدي 632 زائرًا عضويًا. الرقم مشجّع، لكن الدرس الأهم جاء من رقم آخر: في 15 أكتوبر وصل الموقع إلى أعلى مستوى يومي حتى ذلك الوقت، 83 زائرًا، وكان جزء من هذه القفزة لا يبدو كحركة بشرية.
كنت أستعد في ذلك الوقت لـمبادرة SEO كبيرة في العمل، وكنت أريد خبرة عملية بدل جولة إضافية من قراءة النظريات. المشروع الجانبي أعطاني مساحة أغيّر فيها الأشياء، وأراقب البيانات، وأخطئ من دون أن أحوّل كل ملاحظة مباشرة إلى قرار في بيئة الإنتاج.
هذا الفرق أصبح مهمًا بسرعة. قد تتحرك metric في الوقت نفسه الذي أجري فيه تغييرًا، من دون أن يثبت ذلك أن التغيير هو السبب. وقد تبدو قفزة في الزيارات كأنها نمو حقيقي إلى أن أفصل مصادر الحركة. كما أن تسجيل الجلسة قد يعرض شيئًا غريبًا من دون أن يشرح وحده لماذا حدث.
ماذا أخبرني 632 زائرًا عضويًا فعلًا؟
النتيجة التي أستطيع تأكيدها بعد الشهر الأول هي 632 زائرًا عضويًا. لكن الرقم وحده لا يثبت أنني وجدت وصفة SEO قابلة للتكرار، ولا أن كل تغيير أجريته حسّن الترتيب، ولا أن المسار سيستمر بالطريقة نفسها.
في مشروع للتعلّم، القيمة الحقيقية كانت أن لدي حركة بحث فعلية كافية للملاحظة. أستطيع إجراء تغيير، ومراقبة ما تحرّك، ثم صياغة سؤال أدق. هذا أفادني أكثر بكثير من التعامل مع SEO كقائمة فحص تفترض أن كل “best practice” تؤدي تلقائيًا إلى تحسن في الترتيب.
تغيير حجم الخط جعلني أكثر حذرًا مع السببية
من الأشياء التي فاجأتني وجود ارتباط بين تعديلات حجم الخط وبعض مقاييس الأداء. كان من السهل تلخيص ذلك بعبارة مثل: «حتى التفاصيل الصغيرة في UX قد تؤثر في الترتيب». لكن بياناتي لا تدعم ادعاء بهذه القوة.
ما شاهدته فعلًا هو أنني غيّرت حجم الخط، ثم تحركت بعض المقاييس بعد ذلك. لم أجر تجربة مضبوطة تعزل حجم الخط عن كل التغييرات الأخرى، وليس لدي دليل على أن محرك بحث غيّر الترتيب بسبب قاعدة CSS تلك بالتحديد. حجم الخط قد يغيّر التفاف النص، والـlayout، ومواضع العناصر، وبالتالي بعض مقاييس العرض أو UX. أما الآلية الدقيقة في حالتي فبقيت غير مثبتة.
قاعدة أكثر أمانًا لهذا النوع من التجارب هي: أسجّل الملاحظة أولًا، ثم أفسرها. «المقياس X تحرك بعد التغيير Y» بيانات. أما «Y تسبب في X» فتبقى فرضية حتى تتوفر أدلة كافية.
يوم الـ83 زائرًا بدا أفضل قبل أن أفتح Webvisor
في 15 أكتوبر وصل الموقع إلى أعلى إجمالي يومي حتى ذلك الوقت: 83 زائرًا. هذا لا يعني بالضرورة 83 زائرًا عضويًا؛ كان ذلك ذروة إجمالي الحركة اليومية التي كنت أحللها. وعندما فصلت المصادر، وجدت أن جزءًا مهمًا جاء من الصين وصُنّف كـdirect traffic.
من السهل قراءة “Direct” على أنه «شخص كتب عنوان موقعي بنفسه». لكن في Yandex Metrica يمكن أن تدخل في هذا التصنيف جلسات لم يُرسل فيها referrer، إلى جانب حالات أخرى. تشرح Yandex ذلك في وثائق مصادر الحركة. لذلك لا تخبرني تسمية المصدر وحدها من كان الزائر أو كيف وصل فعليًا إلى الصفحة.
بعد ذلك فتحت Yandex Webvisor وشاهدت الجلسات المشبوهة. بدت الصفحة وكأنها فُتحت مع تعطيل CSS. وبناءً على النمط الذي رأيته، قدّرت أن نحو 20 من هؤلاء «المستخدمين» كانوا على الأرجح بوتات.
تعطيل CSS كان إشارة، لا دليلًا
هذا الرقم ما زال تقديرًا. وهناك على الأقل تفسيرين عامين لما رأيته.
- ربما كانت الطلبات آلية فعلًا. يمكن لـscraper أن يجلب HTML فقط ويتجاهل ملفات CSS والصور والموارد التي لا يحتاج إليها. توفير bandwidth تفسير معقول، لكنني لم أؤكد أنه كان الدافع الحقيقي.
- وربما لم يُعد الـreplay بناء الجلسة الأصلية بدقة كاملة. أنظمة session replay تعيد تركيب الصفحة من بيانات مسجلة. وتوثق Yandex نفسها حالات يمكن أن تبدو فيها التسجيلات مختلفة عما شاهده الزائر، بما في ذلك مشكلات CSS أثناء إعادة العرض بعد تغيير ملفات الأنماط.
إذًا: «Webvisor أظهر الصفحة بلا CSS» ملاحظة. «الزائر عطّل CSS عمدًا» تفسير. «إذًا كان بوتًا» استنتاج إضافي. النمط جعل فرضية البوتات معقولة بالنسبة لي، لكن سمة واحدة في replay لا تكفي لتصنيف مؤكد.
ما الذي سأتحقق منه في السجلات؟
في حالة كهذه، أثق في server logs أكثر من العرض المرئي للجلسة. سأقارن User-Agent، وعناوين IP أو نطاقات الشبكات، وتوقيت الطلبات وتكرارها، والموارد المطلوبة، والمسارات، وحالات HTTP، وreferrer. وسأنظر أيضًا هل طلب العميل HTML فقط أم CSS وJavaScript والصور كذلك، وهل يظهر النمط نفسه في أبعاد analytics مثل المتصفح، ودعم JavaScript، والمنطقة، ومدة الجلسة، وlanding page.
لا توجد إشارة مثالية بمفردها. لكن جمع عدة إشارات يمكنه دعم فرضية البوتات أو إضعافها بصورة أفضل بكثير من مجرد القول إن «التسجيل بدا غريبًا».
الدرس الأكبر كان عن القياس، لا عن الترتيب
بدأت هذا المشروع الجانبي لأكتسب خبرة عملية في SEO قبل المبادرة الأكبر في العمل. وبعد شهر، لم تكن القيمة في 632 زائرًا عضويًا فقط. القيمة الأكبر كانت أن أرى مدى سرعة بناء قصة مقنعة حول بيانات غير مكتملة.
كان يمكنني تسمية قفزة 83 زائرًا «نموًا». وكان يمكنني تحويل التغير بعد تعديل الخط إلى «عامل ترتيب». وكان يمكنني تسمية كل جلسة بلا CSS بوتًا. الروايات الثلاث أبسط، لكن أيا منها لم يكن مدعومًا بما يكفي.
في التجارب المقبلة، سيكون المسار الأكثر تحفظًا هو فصل مصادر الحركة، والاحتفاظ بسجل تغييرات، ومقارنة ما قبل وما بعد من دون افتراض السببية تلقائيًا، وفحص الشذوذ على مستوى HTTP requests، والتعامل مع أدوات analytics على أنها أنظمة قياس لها حدودها أيضًا.
بالنسبة لي، هذه أكثر أجزاء التجربة قيمة حتى الآن. SEO أعطاني حركة أستطيع دراستها؛ أما المهارة الأصعب فهي تحديد ما الذي تثبته البيانات فعلًا.
ما زلت أراجع السجلات، خصوصًا حول direct traffic القادم من الصين. إذا وجدت نمط طلبات يتكرر، فسأملك جوابًا أقوى بكثير عن السؤال الأصلي: هل كانت تلك الزيارات العشرين تقريبًا بوتات فعلًا، وهل كان تجاهل CSS جزءًا من طريقة عملها؟