เช็กลิสต์ Technical SEO สำหรับเว็บไซต์ SaaS

Technical SEO สำหรับ SaaS: กันแอปออกจากผลการค้นหา เรนเดอร์หน้าให้ crawler เอกสารและ changelog, canonical, ข้อมูลที่มีโครงสร้าง ความเร็ว และ AI crawler

ทีมบรรณาธิการ FixReportsอ่าน 4 นาที

Technical SEO ของบริษัท SaaS ส่วนใหญ่เป็นเรื่องของการแยกส่วนและการเรนเดอร์ การแยกส่วน เพราะโดเมนเดียวมักมีทั้งเว็บไซต์การตลาดที่ควรติดอันดับ เอกสารประกอบที่ควรติดอันดับ และแอปพลิเคชันที่ไม่ควรอยู่ในผลการค้นหาเลย การเรนเดอร์ เพราะเว็บไซต์ SaaS มักสร้างเป็นแอป JavaScript และแม้ Google จะเรนเดอร์ JavaScript ได้ crawler อื่นจำนวนมาก รวมถึง AI crawler ส่วนใหญ่ ไม่ได้ทำเช่นนั้น เช็กลิสต์นี้ครอบคลุมทั้งสองเรื่อง รวมถึงพื้นฐานทั่วไป ได้แก่ canonical, sitemap, ข้อมูลที่มีโครงสร้าง ความเร็ว และวิธีที่เครื่องมือค้นหาด้วย AI เข้าถึงหน้าเว็บของคุณ

ประเด็นสำคัญ

  • Google ทำการ crawl เรนเดอร์ และจัดทำดัชนีหน้า JavaScript เป็นขั้นตอนแยกกัน และระบุว่าการเรนเดอร์ฝั่งเซิร์ฟเวอร์หรือการเรนเดอร์ล่วงหน้า “is still a great idea” (ยังเป็นแนวคิดที่ดี) เพราะไม่ใช่บอตทุกตัวที่รัน JavaScript ได้ (Google Search Central (เปิดในแท็บใหม่))
  • การวิเคราะห์ในเดือนธันวาคม 2024 พบว่าไม่มี AI crawler รายใหญ่ตัวใด รวมถึง GPTBot, ClaudeBot และ PerplexityBot ที่เรนเดอร์ JavaScript (Vercel (เปิดในแท็บใหม่))
  • Google ระบุว่า AI Overviews และ AI Mode ไม่มีข้อกำหนดทางเทคนิคเพิ่มเติม และไม่ต้องใช้ markup schema.org พิเศษหรือไฟล์ข้อความสำหรับ AI (Google Search Central (เปิดในแท็บใหม่))
  • OpenAI ใช้ OAI-SearchBot สำหรับการค้นหาใน ChatGPT และใช้ GPTBot สำหรับฝึกโมเดล การบล็อก GPTBot ไม่ได้ทำให้เว็บไซต์หายไปจากการค้นหาใน ChatGPT (OpenAI (เปิดในแท็บใหม่))
  • Google-Extended ควบคุมว่า Google ใช้เนื้อหาเพื่อฝึก Gemini ได้หรือไม่ และไม่มีผลต่อการแสดงใน Google Search (Google Search Central (เปิดในแท็บใหม่))

แอปของคุณควรอยู่ในผลการค้นหาหรือไม่

ไม่ควร หน้าของแอปพลิเคชันที่อยู่หลังการเข้าสู่ระบบไม่มีอะไรให้ผู้ค้นหา และ Googlebot ไม่ได้เข้าสู่ระบบ ความเสี่ยงอยู่ในทางกลับกัน คือ URL สาธารณะจากแอป เช่น ลิงก์ที่แชร์ หน้าสถานะว่าง หน้ารีเซ็ตรหัสผ่าน และสภาพแวดล้อม staging อาจถูกจัดทำดัชนีและแข่งกับหน้าการตลาดของคุณ

  • ให้บริการแอปพลิเคชันบนโฮสต์ของตัวเอง เช่น app.example.com และส่ง X-Robots-Tag: noindex ในทุก response จากโฮสต์นั้น
  • กันสภาพแวดล้อม staging และพรีวิวออกจากผลการค้นหาด้วยการยืนยันตัวตน ซึ่งเชื่อถือได้มากกว่ากฎ robots
  • อย่าพึ่ง robots.txt ในการนำหน้าออกจาก Google เพราะ URL ที่ถูกบล็อกยังอาจแสดงในผลการค้นหาได้หากมีลิงก์จากที่อื่น และ Google มองไม่เห็น noindex บนหน้าที่ไม่ได้รับอนุญาตให้ crawl (Google Search Central (เปิดในแท็บใหม่))
  • หน้าเข้าสู่ระบบและหน้าสมัครใช้งานมักถูกค้นหาด้วยชื่อ (“yourproduct login”) การให้หน้าเหล่านี้จัดทำดัชนีได้ช่วยให้ลูกค้าปัจจุบันหาเจอ แต่ไม่ควรมีเนื้อหาการตลาดหนักๆ

เครื่องมือตรวจสอบ robots.txt ของเราแสดงว่า crawler แต่ละตัวดึงอะไรได้บ้าง และเครื่องมือตรวจสอบ Meta Tag แสดงแท็ก meta robots และ header X-Robots-Tag ของหน้า

เครื่องมือค้นหาและ AI crawler อ่านหน้าการตลาดของคุณได้หรือไม่

ตรวจว่า crawler ได้รับอะไรก่อนที่ JavaScript ใดๆ จะทำงาน หาก HTML response ของหน้าราคาไม่มีราคาและไม่มีหัวข้อ มีเพียงแท็ก script crawler ที่ไม่รัน JavaScript จะเห็นหน้าว่างเปล่า

  • Google เรนเดอร์ JavaScript ด้วย Chromium เวอร์ชันล่าสุด แต่การเรนเดอร์เกิดขึ้นในคิวหลังการ crawl และ Google แนะนำการเรนเดอร์ฝั่งเซิร์ฟเวอร์หรือการเรนเดอร์ล่วงหน้า (Google Search Central (เปิดในแท็บใหม่))
  • AI crawler: การวิเคราะห์เครือข่ายของ Vercel พบว่า crawler ของ OpenAI, Anthropic, Perplexity และ Meta ดึงไฟล์ JavaScript แต่ไม่ได้รัน ขณะที่ Gemini ซึ่งใช้โครงสร้างพื้นฐานของ Google และ Applebot เรนเดอร์หน้าเว็บจริง (Vercel (เปิดในแท็บใหม่))
  • ตัวอย่างลิงก์ (link preview) ในแอปแชตและโซเชียลเน็ตเวิร์กมักอ่านเพียง HTML จากเซิร์ฟเวอร์ title, description และแท็ก Open Graph จึงต้องอยู่ใน HTML นั้น

วิธีแก้ที่ใช้ได้จริงคือเรนเดอร์หน้าการตลาด เอกสาร และบล็อกบนเซิร์ฟเวอร์หรือตอน build ซึ่งเฟรมเวิร์กอย่าง Next.js, Nuxt และ Astro รองรับ และเก็บการเรนเดอร์ฝั่งไคลเอนต์ไว้สำหรับแอปพลิเคชันที่ต้องเข้าสู่ระบบ วิธีทดสอบอย่างเร็วคือรัน curl กับ URL ของคุณ หรือดูซอร์สของหน้าแทน DOM ใน inspector แล้วตรวจว่ามีข้อความอยู่

โครงสร้างของเว็บไซต์การตลาดควรเป็นอย่างไร

ผู้ซื้อ SaaS ค้นหาด้วยเจตนาที่คุณจับคู่กับหน้าได้ แต่ละข้อต่อไปนี้ควรมีหน้าของตัวเองที่จัดทำดัชนีได้ พร้อม title ที่สื่อความหมายและ URL canonical ของตัวเอง

  • หน้าผลิตภัณฑ์และฟีเจอร์ หน้าละหนึ่งความสามารถหลัก
  • หน้ากรณีการใช้งานและอุตสาหกรรม สำหรับการค้นหาอย่าง “โปรแกรมออกใบแจ้งหนี้สำหรับเอเจนซี”
  • หน้าการเชื่อมต่อ (integration) หน้าละหนึ่งการเชื่อมต่อ เพราะผู้คนค้นหา “[ผลิตภัณฑ์ของคุณ] + [เครื่องมือของเขา]”
  • หน้าราคา โดยมีแพ็กเกจและราคาอยู่ใน HTML ไม่ใช่โหลดจาก API หลังเรนเดอร์
  • หน้าเปรียบเทียบและทางเลือก ที่เขียนอย่างเป็นธรรม ราคาและฟีเจอร์ของคู่แข่งเปลี่ยนได้ จึงควรระบุวันที่และอัปเดตให้เป็นปัจจุบัน
  • เรื่องราวของลูกค้า ที่ได้รับอนุญาตและมีรายละเอียดจริงที่ระบุแหล่งที่มาได้

หลีกเลี่ยงหน้าที่ต่างกันเพียงผิวเผิน หน้า “[ฟีเจอร์] สำหรับ [อุตสาหกรรม]” นับสิบหน้าที่แทบเหมือนกันและสลับคำเพียงไม่กี่คำ คือสิ่งที่นโยบายสแปมของ Google เรียกว่าการใช้เนื้อหาปริมาณมากในทางที่ผิด (scaled content abuse) (Google Search Central (เปิดในแท็บใหม่))

ควรจัดการเอกสาร ศูนย์ช่วยเหลือ และ changelog อย่างไร

เอกสารประกอบมักนำทราฟฟิกจากการค้นหามาได้มากกว่าเว็บไซต์การตลาด เพราะผู้คนค้นหาวิธีทำสิ่งต่างๆ

  • ทำให้เอกสารเป็นสาธารณะและจัดทำดัชนีได้ เว้นแต่มีข้อมูลเฉพาะของลูกค้า
  • สำหรับเอกสารที่มีหลายเวอร์ชัน ให้ canonical ของเวอร์ชันเก่าชี้ไปยังหน้าเดียวกันในเวอร์ชันปัจจุบัน หรือตั้งเวอร์ชันเก่าเป็น noindex เพื่อให้ผลการค้นหาแสดงคำแนะนำล่าสุด
  • ให้แต่ละหน้าเอกสารมี title และ H1 ที่สื่อความหมายและตรงกับวิธีที่ผู้คนเรียกงานนั้น (“ส่งออกใบแจ้งหนี้เป็น CSV”) ไม่ใช่ชื่อฟีเจอร์ภายใน
  • เก็บรายการ changelog ไว้บน URL ที่คงที่และมีวันที่
  • รวมเอกสารไว้ใน XML sitemap หรือให้เอกสารมี sitemap ของตัวเองที่ระบุไว้ใน robots.txt

หากศูนย์ช่วยเหลือของคุณทำงานบนแพลตฟอร์มของบุคคลที่สามในซับโดเมน ให้ตรวจว่ายืนยันความเป็นเจ้าของใน Search Console แล้ว และหน้าต่างๆ ลิงก์กลับไปยังเว็บไซต์หลัก

ปัญหา canonical, hreflang และการเปลี่ยนเส้นทางแบบใดที่พบบ่อยบนเว็บไซต์ SaaS

  • พารามิเตอร์: แท็ก UTM รหัสแนะนำ และพารามิเตอร์การทดสอบ A/B ทำให้เกิด URL ซ้ำ ทุกหน้าควรประกาศ URL ที่สะอาดของตัวเองเป็น canonical (Google Search Central (เปิดในแท็บใหม่))
  • เครื่องหมายทับท้าย URL และตัวพิมพ์เล็ก-ใหญ่: เลือกรูปแบบเดียว แล้วเปลี่ยนเส้นทางรูปแบบอื่นด้วย 301
  • หน้าที่แปลเป็นภาษาท้องถิ่น: หากคุณแปลเว็บไซต์การตลาด ให้เชื่อมเวอร์ชันภาษาต่างๆ ด้วย hreflang รวมถึงการอ้างอิงถึงตัวเองและ x-default (Google Search Central (เปิดในแท็บใหม่))
  • การรีแบรนด์และการย้ายโดเมน: จับคู่ URL เก่ากับ URL ใหม่แบบหนึ่งต่อหนึ่งด้วยการเปลี่ยนเส้นทาง 301 การเปลี่ยนเส้นทางทุกอย่างไปหน้าแรกทำให้คุณค่าของหน้าเก่าหายไป

เครื่องมือตรวจ SEO ทดสอบ title, H1, canonical และกฎ robots บนหน้าสำคัญของเว็บไซต์ และหาลิงก์ภายในที่เสีย

ข้อมูลที่มีโครงสร้างแบบใดเหมาะกับเว็บไซต์ SaaS

  • Organization ในหน้าแรก พร้อมชื่อ URL โลโก้ และลิงก์ sameAs ไปยังโปรไฟล์ทางการ
  • WebSite ในหน้าแรกพร้อม name และ url ซึ่ง Google ใช้เลือกชื่อเว็บไซต์ที่แสดงในผลการค้นหา (Google Search Central (เปิดในแท็บใหม่))
  • SoftwareApplication: rich result แบบแอปซอฟต์แวร์ของ Google ต้องมีราคา และมีคะแนนรวมหรือรีวิวอย่างใดอย่างหนึ่ง (Google Search Central (เปิดในแท็บใหม่)) ใส่เฉพาะคะแนนที่เป็นของจริงและมองเห็นได้บนหน้า หากไม่มี markup ก็ยังอธิบายผลิตภัณฑ์ได้ แต่จะไม่ได้รับ rich result
  • BreadcrumbList ในหน้าเอกสารและหน้าบล็อก
  • Article ในบทความบล็อก พร้อมผู้เขียนและวันที่

อย่าคาดหวังว่า markup FAQ จะทำให้ได้พื้นที่เพิ่ม เพราะ Google หยุดแสดง rich results แบบ FAQ ตั้งแต่วันที่ 7 พฤษภาคม 2026 (Google Search Central (เปิดในแท็บใหม่)) เครื่องมือตรวจสอบข้อมูลที่มีโครงสร้าง แสดงทุกรายการในหน้าและ property ที่ Google กำหนดสำหรับรายการนั้น

ทำไมหน้าการตลาดของ SaaS จึงไม่ผ่าน Core Web Vitals

เว็บไซต์การตลาดของ SaaS มักโหลดสคริปต์ของบุคคลที่สามจำนวนมาก เช่น analytics ตัวจัดการแท็ก วิดเจ็ตแชต การทดสอบ A/B การบันทึกเซสชัน และพิกเซลโฆษณา สคริปต์เหล่านี้ทำให้เนื้อหาหลักแสดงช้าลงและทำให้ main thread ทำงานหนัก ซึ่งแสดงออกมาเป็น LCP ที่ช้าและ INP ที่แย่

  • ตรวจสคริปต์ของบุคคลที่สามทุกตัว และนำตัวที่ไม่มีใครใช้ออก
  • โหลดวิดเจ็ตแชตเมื่อผู้ใช้โต้ตอบ และหลีกเลี่ยงสคริปต์ทดสอบ A/B ที่ซ่อนหน้าไว้จนกว่าสคริปต์จะทำงาน
  • ให้บริการภาพแบนเนอร์หลักและภาพหน้าจอผลิตภัณฑ์ตามขนาดที่แสดงจริง ในรูปแบบ WebP หรือ AVIF โดยไม่ตั้งให้ภาพแรกโหลดแบบ lazy
  • เฝ้าดู INP บนหน้าที่มีเครื่องคำนวณราคาแบบโต้ตอบและเดโม

Google ใช้ Core Web Vitals ในระบบจัดอันดับ แต่ความเกี่ยวข้องของเนื้อหามาก่อน (Google Search Central (เปิดในแท็บใหม่)) การทดสอบความเร็ว วัดหน้าเว็บเสมือนโทรศัพท์ที่ถูกจำกัดความเร็ว และแสดงข้อมูลจากผู้ใช้จริงเมื่อ Google มีข้อมูลนั้น

เครื่องมือค้นหาด้วย AI ค้นพบและอ้างอิงเนื้อหา SaaS อย่างไร

ไม่มีแนวทางทางเทคนิคแยกต่างหากสำหรับการค้นหาด้วย AI และคำแนะนำยอดนิยมบางข้อก็ไม่ได้รับการยืนยันจากบริษัทที่ดำเนินระบบเหล่านี้

  • Google AI Overviews และ AI Mode ใช้หน้าที่ได้รับการจัดทำดัชนีและมีสิทธิ์แสดงตัวอย่างข้อความ (snippet) Google ระบุว่าไม่มีข้อกำหนดเพิ่มเติม ไม่ต้องใช้ schema พิเศษ และไม่ต้องมีไฟล์ข้อความสำหรับ AI (Google Search Central (เปิดในแท็บใหม่))
  • การค้นหาใน ChatGPT อาศัย OAI-SearchBot หากต้องการปรากฏในคำตอบของ ChatGPT อย่าบล็อก OAI-SearchBot ใน robots.txt การบล็อก GPTBot เป็นเพียงการไม่ยินยอมให้ใช้ฝึกโมเดล (OpenAI (เปิดในแท็บใหม่))
  • การฝึก Gemini ควบคุมด้วยโทเค็น Google-Extended ซึ่งไม่มีผลต่อ Google Search (Google Search Central (เปิดในแท็บใหม่))
  • llms.txt เป็นข้อเสนอจากชุมชนสำหรับไฟล์สรุปเว็บไซต์ในรูปแบบ Markdown Google ระบุว่าไม่จำเป็นต้องมีไฟล์แบบนี้ ส่วนบริการ AI อื่นยังไม่ได้ระบุไว้ว่าใช้หรือไม่ การเผยแพร่ไฟล์นี้มีต้นทุนต่ำ แต่ไม่สามารถทดแทนหน้าที่ crawl ได้

สิ่งที่ช่วยได้กับทุกระบบเหมือนกัน ได้แก่ หน้าที่เรนเดอร์บนเซิร์ฟเวอร์ หัวข้อที่ชัดเจนซึ่งตอบคำถามของผู้ซื้อ ข้อเท็จจริงเฉพาะ เช่น ราคาและขีดจำกัด ที่อยู่ในรูปข้อความ และหน้าที่ไม่ขัดแย้งกันเอง

คำถามที่พบบ่อย

เอกสารของเราควรอยู่บนซับโดเมนหรือซับโฟลเดอร์

ติดอันดับได้ทั้งสองแบบ สิ่งที่สำคัญกว่าคือเอกสารต้อง crawl ได้ มีลิงก์จากเว็บไซต์หลัก อยู่ใน sitemap และยืนยันใน Search Console แล้ว

Google จัดทำดัชนีเนื้อหาในแอป JavaScript ของเราหรือไม่

Google เรนเดอร์ JavaScript ได้ แต่ทำในขั้นตอนแยกต่างหาก และ crawler อื่นมักไม่ทำ สำหรับหน้าที่คุณต้องการให้ค้นพบ ให้เรนเดอร์เนื้อหาบนเซิร์ฟเวอร์หรือตอน build

เราควรบล็อก AI crawler หรือไม่

นี่เป็นการตัดสินใจทางธุรกิจ การบล็อก crawler สำหรับฝึกโมเดล เช่น GPTBot หรือ Google-Extended จะกันเนื้อหาออกจากการฝึกโมเดลโดยไม่ทำให้คุณหายไปจากการค้นหา ส่วนการบล็อก crawler สำหรับการค้นหา เช่น OAI-SearchBot จะทำให้คุณหายไปจากคำตอบของบริการนั้น เครื่องมือตรวจสอบ robots.txt แสดงว่ากฎปัจจุบันของคุณอนุญาตอะไรบ้าง

เราจำเป็นต้องมี markup SoftwareApplication หรือไม่

ไม่จำเป็น markup นี้อธิบายผลิตภัณฑ์ของคุณให้เครื่องมือค้นหา ส่วน rich result แบบแอปซอฟต์แวร์ต้องมีคะแนนหรือรีวิวที่เป็นของจริงแสดงบนหน้าด้วย

ข้อผิดพลาดด้าน Technical SEO ที่พบบ่อยที่สุดบนเว็บไซต์ SaaS คืออะไร

มีสองข้อที่สร้างความเสียหายมากที่สุด คือหน้าการตลาดที่เรนเดอร์เนื้อหาด้วย JavaScript เท่านั้น และ URL ของ staging หรือแอปที่เปิดให้จัดทำดัชนีได้

แหล่งที่มา

คู่มือทั้งหมด