Dua File Kecil dengan Dampak Besar #
sitemap.xml dan robots.txt adalah dua file teks sederhana, tetapi kesalahan di dalamnya bisa menyembunyikan seluruh website dari Google atau membuat Google membuang waktu di halaman yang tidak penting. Keduanya sering dianggap sama padahal fungsinya berlawanan:
| Sitemap XML | robots.txt | |
|---|---|---|
| Fungsi | Menyarankan URL mana yang layak dirayapi dan diindeks | Mengatur bagian mana yang boleh dirayapi |
| Sifat | Petunjuk | Petunjuk perayapan, bukan alat keamanan |
| Letak | Bebas, biasanya /sitemap.xml |
Wajib di akar: /robots.txt |
Sitemap XML #
Sitemap adalah daftar URL yang Anda ingin Google temukan. Contoh minimal:
https://contoh.com/layanan
2026-09-12
Aturan yang perlu diingat #
- Satu file maksimal 50.000 URL atau 50 MB (sebelum dikompresi). Untuk situs besar, pakai sitemap index yang mengelompokkan beberapa file.
- Hanya masukkan URL yang canonical, bisa diindeks, dan menjawab 200. Jangan masukkan URL yang di-redirect, 404,
noindex, atau berkanonik ke halaman lain. lastmodharus jujur. Google memakai nilai ini bila terbukti konsisten akurat. Jika semua URL selalu menampilkan tanggal build hari ini, Google belajar mengabaikannya, dan Anda kehilangan sinyal yang berguna.prioritydanchangefreqdiabaikan Google. Boleh ada, tetapi tidak berpengaruh.- Jangan gunakan fragmen (
/halaman#bagian). Fragmen bukan halaman terpisah. - Daftarkan sitemap di Search Console dan di
robots.txt.
Kapan Sitemap Benar-Benar Dibutuhkan #
Google bisa menemukan halaman lewat tautan, jadi situs kecil dengan tautan internal yang rapi sering tetap terindeks tanpa sitemap. Sitemap paling berguna bila situs Anda besar, baru, sering berubah, atau punya halaman yang sulit dijangkau lewat tautan. Memasangnya hampir tanpa biaya, jadi tetap dianjurkan, tetapi jangan berharap sitemap memperbaiki halaman yang kualitasnya rendah. Sitemap hanya membantu penemuan, bukan menjamin pengindeksan.
Sitemap Index untuk Situs Besar #
Bila URL Anda banyak, pecah menjadi beberapa file berdasarkan jenis konten, lalu daftarkan semuanya dalam satu indeks. Pemisahan ini juga memudahkan diagnosis: di Search Console Anda bisa melihat bagian mana (misalnya artikel blog) yang bermasalah pengindeksannya.
https://contoh.com/sitemap-halaman.xml
https://contoh.com/sitemap-blog.xml
https://contoh.com/sitemap-produk.xml
Membuat sitemap dinamis di Next.js #
// app/sitemap.ts
import type { MetadataRoute } from "next";
export default async function sitemap(): Promise {
const posts = await getPosts(); // dari CMS atau API
return posts.map((p) => ({
url: `https://contoh.com/blog/${p.slug}`,
lastModified: new Date(p.updated_at), // tanggal nyata dari data, bukan new Date()
}));
}
Perhatikan komentar pada baris lastModified: ambil dari data, bukan dari waktu saat sitemap dibuat. Bila sebuah URL tidak punya tanggal pembaruan yang andal, lebih baik tidak menyertakan lastmod daripada mengisinya dengan tanggal palsu. Bantuan visual untuk merancang struktur situs ada di Arsitek Sitemap.
robots.txt #
File ini ditaruh di akar domain (https://contoh.com/robots.txt) dan berlaku per host, protokol, dan port. Contoh:
User-agent: *
Allow: /
Disallow: /admin/
Disallow: /api/
Sitemap: https://contoh.com/sitemap.xml
Hal yang harus dipahami #
- robots.txt mengatur perayapan, bukan pengindeksan. URL yang diblokir tetap bisa muncul di hasil pencarian (tanpa deskripsi) bila ada situs lain yang menautkannya. Untuk menjauhkan halaman dari indeks, gunakan
noindex(meta tag atau headerX-Robots-Tag) dan biarkan halaman bisa dirayapi agar Google dapat membaca instruksinya. - Jangan menjadikannya alat keamanan. File ini publik; siapa pun bisa membacanya. Halaman rahasia harus dilindungi autentikasi.
- Google tidak mendukung direktif
crawl-delaymaupunHost. Direktif itu hanya dihormati sebagian mesin pencari lain. - Ukuran file dibaca Google hingga sekitar 500 KiB. Sisanya diabaikan.
- Jangan memblokir file CSS dan JavaScript yang dibutuhkan untuk merender halaman, karena Google perlu melihat tampilan sebenarnya.
Soal crawler AI #
Anda dapat mengatur akses crawler AI per User-agent, misalnya GPTBot, ClaudeBot, atau PerplexityBot. Ini keputusan bisnis: mengizinkan berarti konten Anda bisa dirujuk di jawaban AI, sedangkan memblokir mengurangi paparan itu. Token Google-Extended mengatur penggunaan konten untuk model AI generatif Google dan tidak memengaruhi apakah halaman muncul di Google Search. Strategi lengkapnya ada di panduan GEO dan standar llms.txt.
Tujuh Kesalahan yang Sering Terjadi #
Disallow: /terbawa dari staging ke produksi. Seluruh situs berhenti dirayapi. Periksa file ini di setiap rilis.- Memblokir halaman yang sekaligus diberi
noindex. Google tidak bisa membacanoindexdi halaman yang tidak boleh dirayapi. - Sitemap berisi URL yang diblokir, di-redirect, atau 404. Sinyalnya bertentangan.
- Dua sumber robots.txt yang saling menimpa, misalnya file statis di folder
publicdan rute yang dibuat framework. Pastikan hanya ada satu, dan periksa hasil akhirnya di produksi, bukan hanya di kode. - Memblokir
/_next/static/atau folder aset. Google gagal merender halaman dengan benar. - Alamat sitemap relatif atau salah protokol. Gunakan URL absolut lengkap.
lastmodselalu berubah di setiap build. Sinyal pembaruan menjadi tidak berguna.
Cara Menguji #
- Buka
https://domainanda.com/robots.txtlangsung di browser dan baca isinya. - Gunakan laporan robots.txt di Search Console untuk melihat versi yang dibaca Google dan kesalahan sintaksnya.
- Gunakan URL Inspection untuk memeriksa apakah URL tertentu diblokir atau di-noindex.
- Di Sitemaps, periksa status "Success" dan jumlah URL yang ditemukan terhadap yang Anda harapkan. Panduan membaca laporannya ada di artikel Search Console.
Checklist #
-
robots.txttidak memblokir halaman yang ingin diindeks maupun aset render. - Sitemap hanya berisi URL canonical dengan status 200.
-
lastmodberasal dari data nyata atau dihilangkan. - Sitemap terdaftar di robots.txt dan Search Console.
- Hanya satu sumber robots.txt dan sitemap yang aktif di produksi.
Keduanya hanya bagian dari fondasi. Bagian teknis lain yang saling berkaitan dibahas di panduan canonical tag dan pilar Technical SEO.
