ข้ามไปยังเนื้อหาบทเรียน

เข้าใจ Canonical URL (Tag) และปัญหา Duplicate Content

Sonthaya T. อัปเดต 3 Jul 2026 524 ครั้ง

ปัญหา Duplicate Content เป็นอีกหนึ่งส่วนสำคัญที่คนทำ SEO หรือเจ้าของเว็บไซต์จะละเลยไปไม่ได้

หลายคนอาจยังไม่รู้ตัวว่า บทความหรือคอนเทนต์ที่เราเขียนอยู่กำลังมีเนื้อหาซ้ำ หรือมี URL หลายเวอร์ชันที่ทำให้ Google สับสน

และพระเอกของบทเรียนนี้ก็คือ Canonical Tag ซึ่งช่วยแก้ปัญหานี้ได้ครับ

Canonical Tag หรือ Canonical URL คืออะไร?

ก่อนอื่นต้องนิยามให้ชัดเจนก่อนครับ

  • Canonical URL คือ URL หลักหรือ URL ต้นฉบับที่เราต้องการให้ Google จดจำและแสดงผลในหน้าผลการค้นหา โดยเฉพาะในกรณีที่เว็บไซต์มีหน้าเว็บที่มีเนื้อหาเหมือนกันหรือคล้ายกันมาก แต่สามารถเข้าถึงได้จากหลาย URL
  • Canonical Tag คือ HTML tag ที่ใช้กำหนด URL หลักของหน้าเว็บ เพื่อบอก Google ว่า URL ไหนคือ URL ที่ควรแสดงในผลการค้นหา และช่วยแก้ปัญหา Duplicate Content

Canonical URL และ Canonical Tag คืออะไร
อธิบายความหมายของ Canonical URL และ Canonical Tag

ตัวอย่าง Canonical Tag จะมีหน้าตาประมาณนี้

<link rel="canonical" href="https://webmastery.dev">

เมื่อแยกออกมา จะเห็นว่า Canonical URL คือ URL หลักที่เรากำหนด

https://webmastery.dev

ส่วน Canonical Tag คือ rel attribute ของ HTML ที่กำหนดว่า URL นี้เป็น canonical

rel="canonical"

ตัวอย่างโครงสร้าง HTML ของ Canonical Tag
ตัวอย่างโครงสร้าง HTML ของ Canonical Tag

Canonical ยังจัดอยู่ในกลุ่มของ Technical SEO เพราะอาจต้องใช้ความรู้เชิงเทคนิคในการติดตั้งและตรวจสอบอยู่พอสมควร

1 เว็บเพจที่เราเห็น อาจมี URL หลายเวอร์ชัน

โดยปกติแล้วปัญหา Duplicate Content มักเกิดจากหน้าเว็บของเรามีเนื้อหาคล้ายกัน หรือแม้แต่เนื้อหาเดียวกัน แต่สามารถเข้าถึงได้ผ่าน URL หลายเวอร์ชัน

ตัวอย่างเช่น สมมติว่าเรากำลังเขียนบทความ “10 คาเฟ่ที่ดีที่สุดในกรุงเทพฯ” และมี URL หลักประมาณนี้

https://www.example.com/blog/top-10-cafes-in-bangkok

แต่ในเบื้องลึกเบื้องหลัง เราอาจมี URL หลายเวอร์ชันที่เข้าถึงเนื้อหาเดียวกันได้ เช่น

https://www.example.com/blog/top-10-cafes-in-bangkok
http://www.example.com/blog/top-10-cafes-in-bangkok/
https://example.com/blog/top-10-cafes-in-bangkok
example.com/blog/top-10-cafes-in-bangkok
example.com/blog/top-10-cafes-in-bangkok/
https://www.example.com/blog/top-10-cafes-in-bangkok/index.html
https://www.example.com/blog/top-10-cafes-in-bangkok/

เห็นไหมครับว่า ถึงแม้จะเป็นบทความเดียว แต่ในเชิงเทคนิคอาจมี URL หลายเวอร์ชันถูกสร้างขึ้นมา ทั้ง http, https, www, non-www, มี slash, ไม่มี slash หรือแม้แต่ /index.html

สิ่งเหล่านี้สามารถสร้างความสับสนให้กับ Search Engine ได้ และอาจนำไปสู่ปัญหาในการทำดัชนี หรือ Indexing รวมถึงการจัดอันดับ หรือ Ranking ของหน้าเว็บ

บทความแนะนำเพิ่มเติม: หลักการทำงานของ Search Engine

สาเหตุหลักที่ทำให้เกิด Duplicate Content

อย่างที่ได้กล่าวไปข้างต้น เว็บไซต์ของเรามีโอกาสเกิดเนื้อหาซ้ำได้ ถ้าเราไม่ได้กำหนดให้ชัดเจนว่า URL เวอร์ชันไหนคือ main version ของหน้าเว็บนั้น

สาเหตุที่พบบ่อย เช่น

  • HTTP และ HTTPS: เป็นสาเหตุที่พบได้บ่อยมาก โดยเฉพาะเว็บไซต์ที่เคยใช้ http แล้วเปลี่ยนไปใช้ https ถ้าไม่ได้ตั้งค่า redirect หรือ canonical ให้ถูกต้อง ก็อาจทำให้ Google มองเห็นหลาย URL เป็นคนละหน้าได้
  • www และ non-www: เช่น www.example.com กับ example.com ถ้าไม่กำหนดให้ชัดเจนว่าเวอร์ชันไหนคือ URL หลัก ก็อาจเกิดปัญหา canonicalization ได้
  • Trailing Slash: เช่น /page กับ /page/ ถ้าเว็บตอบ 200 ทั้งสอง URL ก็อาจเกิด duplicate content ได้
  • Cross-Domain Duplicates: บางเว็บไซต์อาจ publish คอนเทนต์เดียวกันในหลายโดเมน เช่น นำบทความต้นฉบับไปเผยแพร่บน Medium หรือเว็บอื่น ๆ
  • Parameter URLs: เช่น URL ที่มี query string จาก filter, sort, tracking หรือ UTM
  • Programmatic SEO: การสร้างหน้าเว็บจำนวนมากแบบอัตโนมัติ ถ้าวางระบบไม่ดี อาจทำให้เกิดหน้าใกล้เคียงกันจำนวนมากจนกลายเป็น duplicate หรือ near-duplicate content

ส่วนนี้ถ้าทำ Programmatic SEO ต้องวางแผนให้ดีและทำอย่างระมัดระวังครับ

วิธีตรวจเช็คปัญหา Canonical / Duplicate Content

วิธีเช็คว่าเว็บของเราเกิดปัญหา Canonical หรือ Duplicate Content อยู่หรือไม่ สามารถตรวจสอบเบื้องต้นได้ผ่าน Google Search Console

ในรายงาน Indexing หรือ Pages เราอาจเจอปัญหาเกี่ยวกับ canonical เช่น

  • Duplicate without user-selected canonical
  • Alternate page with proper canonical tag
  • Google chose different canonical than user
  • Page with redirect
  • Crawled - currently not indexed
  • Discovered - currently not indexed

รายงานหน้าเว็บที่ไม่ได้ถูก index ใน Google Search Console
Google Search Console แสดงผลเนื้อหาที่ไม่ได้ถูก Index

ตัวอย่างปัญหา Canonicalization ใน Google Search Console
ตัวอย่างหน้าเว็บที่เป็นปัญหา Canonicalization

ถ้าเว็บไซต์มีปัญหาเหล่านี้เยอะเกินไป Google อาจใช้เวลานานขึ้นในการเข้าใจว่า URL ไหนคือหน้าหลักที่ควร index และ URL ไหนเป็นหน้าซ้ำหรือหน้ารอง

แก้ได้ด้วย Canonical Tag, 301 Redirect และ Noindex

การแก้ปัญหา Duplicate Content ไม่ได้มีแค่วิธีเดียวครับ โดยทั่วไปจะมี 3 วิธีหลัก ๆ คือ

  1. ใช้ Canonical Tag
  2. ทำ 301 Redirect
  3. ใช้ Noindex ในบางกรณี

1. ใช้ Canonical Tag

ใน HTML จะมีแท็กที่เรียกว่า Canonical Tag เพื่อให้เรากำหนด URL เวอร์ชันหลักของหน้าเว็บได้ โดยสามารถเพิ่มโค้ด rel="canonical" เข้าไปในส่วน <head> ได้เลย

ตัวอย่าง

<head>
  <title>Top 5 Cafes in Bangkok You Should Visit | Cafe Review</title>
  <link rel="canonical" href="https://www.example.com/blog/top-5-cafes-in-bangkok">
</head>

การทำแบบนี้เรียกว่า Self-referencing Canonical Tag ถ้าหน้านั้นต้องการบอก Google ว่า “URL นี้แหละคือ URL หลักของตัวเอง”

ตัวอย่าง Self-referencing Canonical Tag
ตัวอย่าง Self-referencing Canonical Tag

จะใช้แบบมี www หรือไม่มี www ก็ได้ครับ แต่ต้องใช้ให้เหมือนกันทั้งเว็บ

ตัวอย่างเช่น

  • Ahrefs ใช้แบบไม่มี www
  • Semrush ใช้แบบมี www

ยังไม่มีข้อมูลชัดเจนว่าแบบไหนดีที่สุด แต่หลักสำคัญคือ “เลือกแบบเดียว แล้วใช้ให้สม่ำเสมอทั้งเว็บไซต์”

แท็กนี้จะเป็นการบอก Search Engine ว่า

https://www.example.com/blog/top-10-cafes-in-bangkok

นี่คือเวอร์ชันหลักที่เราต้องการให้ Google เลือกไปทำ index

โดยปกติแล้ว canonical URL ควรเป็น URL แบบเต็ม หรือ Absolute URL และมักใช้เวอร์ชัน https

ตัวอย่าง Canonical Tag จากเว็บอื่น

ลองดูเว็บ SEO ระดับโลกอย่าง Search Engine Journal เป็นตัวอย่าง

ตัวอย่าง Canonical Tag จาก Search Engine Journal
ตัวอย่าง Canonical Tag จาก Search Engine Journal

โค้ด canonical จะมีลักษณะประมาณนี้

<link rel="canonical" href="https://www.searchenginejournal.com/" />

2. ใช้ 301 Redirect

ถ้าหน้าเว็บมีเนื้อหาคล้ายกันมาก หรือไม่ต้องการให้ URL เก่ายังเข้าถึงได้อีกต่อไป การทำ 301 Redirect มักเป็นวิธีที่เหมาะกว่า Canonical

เช่น

https://www.example.com/page-a/

Redirect ไปที่

https://www.example.com/page-b/

เมื่อผู้ใช้หรือ Googlebot เข้า URL ต้นทาง ก็จะถูกส่งไปยัง URL ปลายทางทันที

ข้อแตกต่างสำคัญคือ ถ้าทำ 301 Redirect เราจะไม่เห็น URL ต้นทางอีกต่อไป เพราะมันจะ redirect ไปหน้าใหม่ทันที

แต่ถ้าทำ Canonical ผู้ใช้ยังสามารถเข้า URL ต้นทางได้อยู่ เพียงแต่เราบอก Google ว่า URL หลักคืออีกหน้า

ดังนั้นต้องเลือกให้เหมาะกับสถานการณ์ครับ

ถ้าหน้าเก่าไม่จำเป็นต้องอยู่แล้ว → ใช้ 301 Redirect

ถ้าหน้ายังต้องอยู่เพื่อ UX หรือ business logic แต่เนื้อหาซ้ำกับอีกหน้า → ใช้ Canonical Tag

3. ใช้ Noindex ในบางกรณี

อีกวิธีคือใช้ Noindex เพื่อบอก Google ว่าไม่ต้องนำหน้าเว็บนี้ไป index

อย่างไรก็ตาม วิธีนี้ต้องใช้ด้วยความระมัดระวังมากครับ เพราะถ้าใส่ผิดหน้า อาจทำให้หน้าสำคัญหายออกจาก Google ได้เลย

ตัวอย่างหน้าที่อาจใช้ noindex ได้ เช่น

  • หน้า thank you
  • หน้า internal search results
  • หน้า filter ที่ไม่ต้องการให้ติด index
  • หน้า dashboard หรือหน้าส่วนตัว
  • หน้า duplicate ที่ไม่ต้องการให้ Google index

แล้วจะเพิ่ม Canonical Tag เข้าเว็บได้อย่างไร?

อันนี้ขึ้นอยู่กับเครื่องมือที่ใช้ทำเว็บครับ

ถ้าเป็นเว็บที่เขียนโค้ดเอง ก็สามารถเพิ่ม canonical เข้าไปใน template หรือ layout หลักได้เลย

ถ้าเป็น WordPress, Wix, Webflow หรือ CMS อื่น ๆ ส่วนใหญ่มักมี plugin หรือ SEO setting ที่รองรับ canonical อยู่แล้ว

แต่สิ่งสำคัญคือ ต้องตรวจสอบ output จริงใน HTML ด้วยว่า canonical ถูกต้องหรือไม่ เพราะบางครั้ง plugin หรือระบบ CMS อาจ generate canonical ผิดโดยที่เราไม่รู้ตัว

ข้อดีหลังจากแก้ปัญหา Canonicalization

การจัดการ canonical ให้ถูกต้องมีข้อดีหลายอย่าง เช่น

  • เพิ่มประสิทธิภาพ SEO: ช่วยให้ Search Engine โฟกัสไปที่เนื้อหาหลัก และเก็บข้อมูลใน URL ที่เราต้องการจริง ๆ
  • ลดปัญหา Duplicate Content: ช่วยให้ Google เข้าใจว่า URL ไหนคือหน้าหลัก
  • รักษาค่าพลังลิงก์ หรือ Link Equity: ถ้ามีหลาย URL ที่มีเนื้อหาเดียวกัน canonical จะช่วยรวมสัญญาณไปที่ URL หลัก
  • ลดความรกใน Google Search Console: ถ้าปัญหาถูกแก้ถูกต้อง รายงานที่เกี่ยวกับ canonical issue จะค่อย ๆ ลดลง
  • ช่วยให้ Crawl Budget มีประสิทธิภาพขึ้น: โดยเฉพาะเว็บไซต์ขนาดใหญ่หรือเว็บไซต์ e-commerce ที่มี URL จำนวนมาก

Canonical Tag เหมาะกับเว็บไซต์แบบไหน?

Canonical Tag มักเจอบ่อยในเว็บไซต์ประเภท

  • เว็บไซต์ e-commerce
  • เว็บไซต์ที่มี filter / sort / category จำนวนมาก
  • เว็บไซต์ที่มี pagination
  • เว็บไซต์ที่มีบทความซ้ำหรือ syndicated content
  • เว็บไซต์ที่มี parameter URLs
  • เว็บไซต์ที่มีหลาย URL สำหรับเนื้อหาเดียวกัน
  • เว็บไซต์ที่ทำ Programmatic SEO

โดยเฉพาะเว็บไซต์ e-commerce จะเจอปัญหา duplicate content ได้ง่ายมาก เพราะสินค้าหนึ่งชิ้นอาจเข้าถึงได้จากหลาย category หรือหลาย filter URL

เช่น

/product/nike-shoes
/category/running-shoes/nike-shoes
/search?brand=nike&product=shoes

ถ้าไม่กำหนด canonical ให้ดี Google อาจไม่รู้ว่า URL ไหนคือหน้าหลักที่ควร index

ดังนั้นการทำ Ecommerce SEO ต้องให้ความสำคัญกับ Canonical Tag เป็นพิเศษ

สรุป

Canonical URL และ Canonical Tag เป็นส่วนสำคัญของ Technical SEO ที่ใช้แก้ปัญหา Duplicate Content และช่วยบอก Search Engine ว่า URL ไหนคือเวอร์ชันหลักของหน้าเว็บ

วิธีแก้ปัญหา Duplicate Content ทำได้หลายวิธี เช่น

  • ใช้ Canonical Tag
  • ทำ 301 Redirect
  • ใช้ Noindex ในบางกรณี

แต่ละวิธีมี use case ที่ต่างกัน

ถ้าต้องการให้ผู้ใช้และ Google ไปหน้าใหม่ทันที ให้ใช้ 301 Redirect

ถ้าหน้ายังต้องอยู่ แต่ต้องการบอก Google ว่าหน้าอื่นคือ URL หลัก ให้ใช้ Canonical Tag

ถ้าไม่ต้องการให้หน้าเว็บติด index เลย ให้ใช้ Noindex

สิ่งสำคัญคือ ควรกำหนด canonical ให้ถูกต้อง ใช้ URL แบบเต็ม เลือก https, www หรือ non-www ให้ชัด และใช้ให้สม่ำเสมอทั้งเว็บไซต์

ถ้าทำถูกต้อง จะช่วยให้ Google เข้าใจเว็บไซต์ของเราได้ดีขึ้น ลดปัญหา Duplicate Content และช่วยให้ SEO โดยรวมแข็งแรงขึ้นในระยะยาวครับ

Sonthaya T.

Sonthaya T.

ผู้เขียน

ที่ปรึกษาด้าน Web & SEO สำหรับองค์กรและเจ้าของธุรกิจ ชอบออกแบบแนวทางและวิธีการสอนให้มีประสิทธิภาพมากที่สุด เชื่อว่าความรู้คือหนึ่งในสิ่งที่มีคุณค่ามากที่สุดและจะติดตัวเราไปในทุกที่ หลงไหลในธรรมชาติ การเดินทาง เป็นพ่อของแงว ๆ อยู่หลายตัว เสพติดกาแฟ (อเมริกาโน่) และชอบการจิบเบียร์...ในบางครั้ง