Canonical URL adalah URL yang diberi sinyal sebagai versi utama dari sebuah halaman. Biasanya dipakai ketika ada beberapa URL yang isinya sama, sangat mirip, atau bisa diakses lewat variasi URL yang berbeda.
Contoh sederhana:
/produk-seo//produk-seo/?utm_source=newsletter/kategori/seo/produk-seo/
Kalau isi halamannya sama, kita ingin mesin pencari memahami URL mana yang sebaiknya dianggap utama. Di situlah canonical dipakai.
Tapi ada catatan penting: canonical adalah sinyal, bukan perintah mutlak. Google bisa memilih canonical lain kalau sinyal halaman tidak konsisten.
Kapan canonical URL dibutuhkan?
Canonical biasanya berguna ketika:
- satu konten bisa muncul di beberapa URL;
- ada parameter URL untuk tracking, sorting, atau filter;
- artikel lama dan baru sangat mirip;
- halaman bisa diakses lewat versi trailing slash dan non-trailing slash;
- konten yang sama muncul di beberapa kategori;
- ada versi print, AMP lama, atau variasi teknis lain.
Untuk blog personal brand, kasus yang paling sering adalah migrasi URL dan artikel yang mirip. Misalnya website lama memakai /kategori/judul-artikel/, sedangkan website baru memakai /judul-artikel/.
Kalau URL lama sudah benar-benar diganti, solusi utamanya biasanya redirect 301. Canonical dipakai untuk konsistensi di halaman final, bukan untuk menggantikan redirect.
Contoh canonical tag
Canonical tag biasanya ditaruh di bagian <head> halaman:
<link rel="canonical" href="https://habibhidayat.com/canonical-url/" />
Artinya, halaman tersebut memberi sinyal bahwa URL utama adalah:
https://habibhidayat.com/canonical-url/
Untuk artikel blog, canonical sebaiknya mengarah ke URL final artikel itu sendiri. Ini sering disebut self-referencing canonical.
Canonical bukan redirect
Ini bagian yang sering keliru.
Canonical tidak otomatis membawa pengunjung dari URL lama ke URL baru. Kalau seseorang membuka URL lama, mereka tetap bisa berada di URL lama jika tidak ada redirect.
Gunakan:
301 redirectjika URL lama sudah tidak dipakai dan ada halaman pengganti yang setara;canonicaljika beberapa URL masih bisa diakses tetapi kita ingin memberi sinyal versi utama;noindexjika halaman tidak perlu masuk indeks;404/410jika halaman memang tidak punya pengganti dan tidak perlu dipertahankan.
Untuk migrasi habibhidayat.com, aturan ini penting. Jangan redirect semua URL lama ke homepage. Itu bisa terlihat seperti soft-404 dan tidak membantu pembaca.
Sinyal canonical harus konsisten
Canonical bekerja lebih baik ketika sinyal lain mendukung.
Cek konsistensi ini:
- internal link mengarah ke URL final;
- sitemap berisi URL final;
- redirect lama mengarah ke URL final;
- canonical tag mengarah ke URL final;
- tidak ada canonical chain;
- halaman canonical bisa diakses dan return
200; - tidak ada konflik antara canonical dan
noindex; - tidak ada canonical ke halaman yang berbeda intent.
Kalau sitemap mengarah ke URL A, internal link ke URL B, redirect ke URL C, dan canonical ke URL D, mesin pencari akan menerima sinyal yang campur aduk.
Kesalahan canonical yang sering terjadi
Beberapa kesalahan yang perlu dihindari:
- canonical ke homepage untuk banyak artikel;
- canonical ke halaman yang tidak setara;
- canonical ke URL 404;
- canonical ke URL yang redirect lagi;
- canonical berbeda dari URL di sitemap;
- canonical lupa diperbarui setelah slug diganti;
- canonical dipakai untuk menyelesaikan semua masalah duplikasi;
- artikel mirip dibiarkan hidup semua tanpa keputusan merge.
Canonical tidak menyelesaikan strategi konten yang berantakan. Ia hanya membantu memberi sinyal teknis.
Cara cek canonical
Untuk satu halaman, cek:
- Buka source HTML dan cari
rel="canonical". - Pastikan URL canonical adalah URL final.
- Pastikan URL canonical return
200. - Pastikan URL itu ada di sitemap.
- Pastikan internal link utama mengarah ke URL yang sama.
- Cek di Google Search Console bagian URL Inspection jika halaman sudah live.
Kalau Google memilih canonical berbeda dari yang kita set, lihat penyebabnya. Bisa jadi kontennya terlalu mirip dengan halaman lain, sinyal internal link lebih kuat ke URL lain, atau halaman canonical yang kita pilih tidak cukup jelas.
Canonical saat migrasi website
Saat migrasi, canonical harus masuk checklist.
Untuk setiap URL lama:
- tentukan apakah ada halaman baru yang setara;
- jika ada, buat 301 redirect;
- pastikan halaman baru punya canonical ke dirinya sendiri;
- update internal link ke URL baru;
- masukkan URL baru ke sitemap;
- jangan masukkan URL lama ke sitemap;
- cek redirect chain.
Inilah yang sedang kita lakukan untuk artikel lama: publish ulang hanya yang layak, lalu redirect URL lama ke halaman baru yang benar-benar relevan.
Opini
Buat saya, canonical adalah alat kebersihan, bukan alat sulap.
Kalau struktur kontennya rapi, canonical membantu memperkuat sinyal. Kalau struktur kontennya kacau, canonical sering hanya menutupi masalah sementara.
Sebelum bertanya “canonical-nya apa?”, lebih baik tanya dulu: “halaman mana yang memang paling pantas jadi versi utama?”
