หลังจากใช้ side project ส่วนตัวเป็นสนามทดลอง SEO ครบหนึ่งเดือน ผมมีผู้เข้าชมแบบออร์แกนิก 632 คน ตัวเลขนี้น่าพอใจ แต่บทเรียนที่มีค่าที่สุดกลับมาจากอีกตัวเลขหนึ่ง วันที่ 15 ตุลาคม เว็บไซต์ทำสถิติรายวันสูงสุดที่ 83 คน และทราฟฟิกส่วนหนึ่งของยอดนั้นดูไม่เหมือนผู้ใช้จริง
ตอนนั้นผมกำลังเตรียมตัวสำหรับงาน SEO ขนาดใหญ่ที่ทำงาน และอยากได้ประสบการณ์จากการลงมือทำจริง มากกว่าจะอ่านทฤษฎีเพิ่มอีกชุดหนึ่ง Side project ทำให้ผมมีพื้นที่สำหรับเปลี่ยนแปลง ดูข้อมูล และยอมรับว่าตัวเองอาจตีความผิดได้ โดยไม่ต้องเปลี่ยนทุกข้อสังเกตให้กลายเป็นการตัดสินใจใน production
ความแตกต่างนี้สำคัญอย่างรวดเร็ว เมตริกอาจขยับหลังการเปลี่ยนแปลงโดยไม่ได้แปลว่าการเปลี่ยนแปลงนั้นเป็นสาเหตุ ยอดทราฟฟิกอาจดูเหมือนการเติบโตจนกว่าเราจะแยกดูแหล่งที่มา และ session replay อาจแสดงสิ่งแปลก ๆ โดยไม่สามารถบอกได้ทันทีว่าทำไมมันถึงเกิดขึ้น
ผู้เข้าชมออร์แกนิก 632 คนบอกอะไรผมจริง ๆ
ผลที่ยืนยันได้ในเดือนแรกคือผู้เข้าชมออร์แกนิก 632 คน แต่ตัวเลขนี้เพียงอย่างเดียวไม่ได้พิสูจน์ว่าผมหาสูตร SEO ที่ทำซ้ำได้แล้ว ไม่ได้พิสูจน์ว่าทุกการเปลี่ยนแปลงช่วยอันดับ และไม่ได้รับประกันว่าแนวโน้มนี้จะดำเนินต่อไป
สำหรับโปรเจกต์เพื่อการเรียนรู้ คุณค่าคือการมีทราฟฟิกจากการค้นหาจริงมากพอให้สังเกต ผมสามารถเปลี่ยนบางอย่าง ดูว่าเมตริกไหนขยับ แล้วตั้งคำถามที่แม่นยำขึ้น ซึ่งมีประโยชน์กว่าการมอง SEO เป็น checklist ที่เชื่อว่า “best practice” ทุกข้อจะเพิ่มอันดับโดยอัตโนมัติ
การปรับขนาดฟอนต์ทำให้ผมระวังเรื่องเหตุและผลมากขึ้น
สิ่งหนึ่งที่ทำให้ผมแปลกใจคือความสัมพันธ์ระหว่างการปรับขนาดตัวอักษรกับเมตริกด้านประสิทธิภาพ มันง่ายมากที่จะสรุปว่า “รายละเอียด UX เล็ก ๆ ก็มีผลต่ออันดับ” แต่ข้อมูลของผมไม่เพียงพอสำหรับข้อสรุปที่แรงขนาดนั้น
สิ่งที่ผมสังเกตจริง ๆ คือ ผมเปลี่ยนขนาดฟอนต์ แล้วหลังจากนั้นเมตริกบางตัวขยับ ผมไม่ได้ทำ controlled experiment ที่แยกการเปลี่ยนฟอนต์ออกจากการเปลี่ยนอื่นทั้งหมด และไม่มีหลักฐานว่า search engine เปลี่ยนอันดับเพราะ CSS rule นี้โดยตรง ขนาดฟอนต์อาจเปลี่ยนการตัดบรรทัด layout และตำแหน่งองค์ประกอบ จึงอาจกระทบค่าที่เกี่ยวกับ rendering หรือ UX ได้ แต่กลไกที่แท้จริงในกรณีของผมยังไม่ได้รับการพิสูจน์
สำหรับการทดลองแบบนี้ กฎที่ปลอดภัยกว่าคือ บันทึกสิ่งที่เห็นก่อน แล้วค่อยอธิบาย “เมตริก X ขยับหลังการเปลี่ยน Y” คือข้อมูล ส่วน “Y ทำให้ X เปลี่ยน” ยังเป็นสมมติฐานจนกว่าจะมีหลักฐานมากพอ
วันที่มี 83 คนดูดีมาก จนกระทั่งผมเปิด Webvisor
วันที่ 15 ตุลาคม เว็บไซต์ทำยอดรายวันสูงสุดในตอนนั้นที่ 83 คน ตัวเลขนี้ไม่ได้หมายความว่าเป็นผู้เข้าชมออร์แกนิก 83 คนทั้งหมด แต่เป็นยอดทราฟฟิกรวมรายวันที่ผมกำลังวิเคราะห์ เมื่อแยกตามแหล่งที่มา พบว่าส่วนสำคัญมาจากจีนและถูกจัดเป็นdirect traffic
คำว่า “direct” ทำให้เราคิดได้ง่ายว่า “มีคนพิมพ์ URL ของผมเอง” แต่ใน Yandex Metrica เซสชันที่ไม่มีการส่ง referrer ก็อาจถูกจัดอยู่ในหมวดนี้ได้ รวมถึงกรณีอื่น ๆ Yandex อธิบายไว้ในเอกสารเรื่องแหล่งทราฟฟิก ดังนั้นป้ายกำกับแหล่งที่มาเพียงอย่างเดียวไม่ได้บอกว่าผู้เข้าชมเป็นใครหรือเข้ามาที่หน้าเว็บได้อย่างไรจริง ๆ
จากนั้นผมเปิด Yandex Webvisorดูเซสชันที่น่าสงสัย หน้าเว็บดูเหมือนถูกเปิดโดยปิด CSS จากแพตเทิร์นที่เห็น ผมประเมินว่า “ผู้ใช้” ประมาณ 20 คนน่าจะเป็นบอต
CSS ที่หายไปเป็นเบาะแส ไม่ใช่หลักฐาน
ตัวเลขนั้นยังเป็นเพียงการประเมิน และอย่างน้อยมีคำอธิบายกว้าง ๆ สองแบบ
- คำขออาจมาจากระบบอัตโนมัติจริง scraper อาจดึงเฉพาะ HTML และไม่โหลด stylesheet รูปภาพ หรือ asset อื่นที่ไม่จำเป็น การประหยัด bandwidth เป็นเหตุผลที่เป็นไปได้ แต่ผมไม่ได้ยืนยันว่าเป็นแรงจูงใจจริง
- Replay อาจไม่ได้สร้างเซสชันเดิมได้สมบูรณ์ ระบบ session replay สร้างหน้าขึ้นใหม่จากข้อมูลที่บันทึกไว้ Yandex เองก็ระบุว่าหลัง stylesheet เปลี่ยน ภาพที่ replay อาจไม่ตรงกับสิ่งที่ผู้เข้าชมเห็น รวมถึงปัญหาเกี่ยวกับ CSS ใน Webvisor
ดังนั้น “Webvisor แสดงหน้าเว็บโดยไม่มี CSS” คือข้อสังเกต “ผู้เข้าชมตั้งใจปิด CSS” คือการตีความ และ “ดังนั้นต้องเป็นบอต” คือข้อสรุปเพิ่มอีกขั้น สำหรับผมสมมติฐานเรื่องบอตมีความเป็นไปได้ แต่ลักษณะเดียวจาก replay ยังไม่เพียงพอสำหรับการยืนยัน
สิ่งที่ผมจะตรวจต่อใน log
สำหรับความผิดปกติแบบนี้ ผมเชื่อ server log มากกว่าภาพ replay ผมจะเปรียบเทียบ User-Agent, IP หรือ network range, จังหวะและความซ้ำของ request, asset ที่ถูกขอ, path, HTTP status และ referrer รวมถึงดูว่า client ขอเฉพาะ HTML หรือโหลด CSS, JavaScript และรูปภาพด้วย และแพตเทิร์นเดียวกันปรากฏใน analytics เช่น browser, JavaScript support, region, session duration และ landing page หรือไม่
ไม่มีสัญญาณใดสมบูรณ์เมื่อดูเพียงอย่างเดียว แต่เมื่อรวมกันแล้วจะช่วยสนับสนุนหรือหักล้างสมมติฐานเรื่องบอตได้ดีกว่าความรู้สึกว่า “replay ดูแปลก” มาก
บทเรียนใหญ่ที่สุดคือเรื่องการวัดผล ไม่ใช่อันดับ
ผมเริ่ม side project นี้เพื่อเก็บประสบการณ์ SEO จริงก่อนทำงานที่ใหญ่ขึ้นในบริษัท หลังหนึ่งเดือน สิ่งที่มีค่าไม่ได้มีแค่ผู้เข้าชมออร์แกนิก 632 คน แต่คือการเห็นว่าจากข้อมูลที่ยังไม่ครบ เราสามารถสร้างเรื่องเล่าที่ฟังดูน่าเชื่อได้เร็วเพียงใด
ผมอาจเรียกยอด 83 คนว่า “การเติบโต” อาจเรียกการเปลี่ยนแปลงหลังปรับฟอนต์ว่า “ranking factor” หรืออาจเรียกทุกเซสชันที่ไม่มี CSS ว่าบอต ทั้งสามเรื่องจะเล่าง่ายกว่า แต่ไม่มีเรื่องไหนมีหลักฐานเพียงพอ
สำหรับการทดลองครั้งต่อไป ขั้นตอนที่ระมัดระวังกว่าคือแยกแหล่งทราฟฟิก เก็บ changelog เปรียบเทียบก่อนและหลังโดยไม่รีบสรุปเหตุและผล ตรวจความผิดปกติในระดับ HTTP request และมองเครื่องมือ analytics ว่าเป็นระบบวัดผลที่มีข้อจำกัดของตัวเอง
สำหรับผม นี่คือส่วนที่มีค่าที่สุดของการทดลองจนถึงตอนนี้ SEO ทำให้มีทราฟฟิกให้ศึกษา ส่วนทักษะที่ยากกว่าคือการตัดสินว่าข้อมูลนั้นพิสูจน์อะไรจริง ๆ
ผมยังคงตรวจ log โดยเฉพาะ direct traffic จากจีน ถ้าพบ request pattern ที่เกิดซ้ำได้ ผมจะตอบคำถามเดิมได้หนักแน่นขึ้นมากว่า การเข้าชมประมาณ 20 ครั้งนั้นเป็นบอตจริงหรือไม่ และการไม่โหลด CSS เป็นส่วนหนึ่งของพฤติกรรมของมันหรือเปล่า