Mas Ahmad SafwanSEO & AI Search Knowledge Base Cari
Menu

Technical SEO menengah

Robots.txt: Cara Kerja, Aturan, dan Kesalahan Umum

Berkas teks kecil di root domain yang dibaca crawler sebelum mengambil URL apa pun. Sederhana di permukaan, tapi aturan pencocokannya sering disalahpahami, dan kesalahan satu karakter bisa menghapus seluruh situs dari antrean crawl.

Oleh Diterbitkan 4 menit baca

robots.txt adalah berkas di https://domain/robots.txt yang memberi tahu crawler bagian mana dari situs yang boleh atau tidak boleh mereka ambil. Ia mengatur crawling, bukan indexing: URL yang diblokir masih bisa muncul di hasil pencarian kalau ada link yang menunjuk ke sana, hanya tanpa isi.

Apa yang dilakukan robots.txt, dan apa yang tidak

BisaTidak bisa
Mencegah crawler yang patuh mengambil URL dengan pola tertentuMencegah URL muncul di indeks (pakai noindex)
Mengurangi beban server dari crawler yang mengambil halaman tak penting (filter, hasil pencarian internal, kalender tanpa batas)Mengamankan data. Berkasnya publik dan crawler jahat mengabaikannya
Memberi tahu lokasi sitemapMenghapus URL yang sudah terindeks
Membedakan aturan per crawler (Googlebot, Bingbot, GPTBot, dan lainnya)Mengatur kecepatan crawl Google (Crawl-delay diabaikan Googlebot)

Sintaks yang dipahami Google

Google mendokumentasikan empat field. Yang lain diabaikan tanpa error.

FieldFungsiCatatan
User-agent:Membuka grup aturan untuk crawler tertentuTidak peka huruf besar-kecil. * berarti semua crawler yang tidak punya grup sendiri.
Disallow:Path yang tidak boleh diambilPeka huruf besar-kecil. Disallow: kosong berarti boleh semua.
Allow:Pengecualian dari DisallowDipakai untuk membuka sub-path di dalam direktori yang diblokir.
Sitemap:URL absolut sitemapBoleh lebih dari satu. Berlaku global, tidak terikat grup.
robots.txt
# Contoh robots.txt untuk situs statis sederhana
User-agent: *
Disallow: /cari/
Disallow: /admin/
Allow: /admin/public/

User-agent: GPTBot
Disallow: /

Sitemap: https://www.example.com/sitemap.xml

Aturan pencocokan: siapa yang menang

Bagian inilah yang paling sering salah dipahami dan paling jarang dijelaskan. Google mengevaluasi robots.txt dengan tiga aturan:

  1. Grup yang dipakai adalah grup dengan user-agent paling spesifik yang cocok. Googlebot hanya membaca grup User-agent: Googlebot kalau ada; kalau ada, grup * diabaikan sama sekali untuk Googlebot. Ini sering mengejutkan: menambah grup khusus Googlebot berarti semua aturan di grup * tidak lagi berlaku untuk Googlebot.
  2. Di dalam grup, aturan dengan path paling panjang (paling spesifik) menang, terlepas dari urutannya di berkas.
  3. Kalau panjangnya sama, aturan yang paling longgar (Allow) dipakai.
AturanURL diujiHasilKenapa
Disallow: /blog/
Allow: /blog/seo/
/blog/seo/canonical/Boleh/blog/seo/ (10 karakter) lebih panjang dari /blog/ (6).
Disallow: /*.pdf$/panduan.pdfDiblokir$ menandai akhir URL; * mencocokkan apa saja.
Disallow: /*.pdf$/panduan.pdf?v=2BolehURL tidak berakhir dengan .pdf.
Disallow: /produk/produk-baru/DiblokirPath dicocokkan sebagai awalan. Tanpa garis miring, semua yang diawali /produk kena.
Disallow: /
Allow: /
/apa-saja/BolehPanjang sama, Allow menang.
User-agent: *
Disallow: /privat/

User-agent: Googlebot
Disallow: /draf/
/privat/ untuk GooglebotBolehGooglebot hanya membaca grupnya sendiri. Blokir /privat/ tidak berlaku untuknya.

Kalau ingin menguji aturan tanpa menunggu Google, robots.txt tester di situs ini meniru tiga aturan di atas dan menunjukkan aturan mana yang menang.

Bagaimana Google memperlakukan berkas yang bermasalah

Yang terjadi kalau robots.txt tidak bisa diambil ternyata bergantung pada kode statusnya, dan dokumentasi Google cukup rinci di sini.

ResponsPerlakuan Google
200Dipakai apa adanya. Kalau isinya kosong, semua boleh di-crawl.
3xxDiikuti sampai lima hop. Lebih dari itu dianggap 404.
404 dan 4xx lainDianggap tidak ada robots.txt: semua boleh di-crawl. Kecuali 429, yang memengaruhi laju crawl.
5xx12 jam pertama: crawling situs dihentikan sambil dicoba lagi. Sampai 30 hari: memakai salinan cache terakhir. Setelah 30 hari: dianggap tidak ada batasan kalau situs bisa diakses.
Ukuran > 500 KiBBagian setelah batas itu diabaikan.

Implikasi praktisnya: kalau server mengembalikan 503 untuk robots.txt saat maintenance, Google berhenti meng-crawl seluruh situs, bukan hanya berkas itu. Google juga men-cache robots.txt umumnya sampai 24 jam, jadi perubahan tidak langsung berlaku.

Lima kesalahan yang sering terjadi

  1. Memblokir CSS dan JavaScript. Google perlu memuatnya untuk merender halaman. Kalau diblokir, Google melihat halaman yang rusak dan bisa menilai kontennya tidak ada. Cek dengan URL Inspection, bagian "Page resources".
  2. Memakai robots.txt untuk menghapus halaman dari hasil pencarian. Halamannya tetap bisa tampil tanpa snippet. Pakai noindex, dan pastikan halamannya boleh di-crawl supaya noindex-nya terbaca.
  3. Disallow: / yang tertinggal dari staging. Ini penyebab klasik seluruh situs hilang setelah peluncuran. Masukkan pemeriksaan robots.txt ke dalam checklist QA.
  4. Menambah grup Googlebot tanpa menyalin aturan dari grup *. Aturan umum langsung tidak berlaku untuk Googlebot.
  5. Path tanpa garis miring awal atau dengan huruf besar yang salah. Disallow: admin/ tidak cocok dengan apa pun; Disallow: /Admin/ tidak memblokir /admin/.

robots.txt dan crawler AI

Berkas yang sama dipakai untuk mengatur crawler dari OpenAI, Anthropic, Perplexity, dan token Google-Extended milik Google. Tiap vendor punya token berbeda untuk pelatihan model dan untuk pencarian, dan keputusan memblokir salah satunya punya konsekuensi berbeda. Daftar token per vendor beserta contoh berkasnya ada di panduan crawler AI dan robots.txt.

Cara mengecek

  • Buka https://domain/robots.txt di browser. Pastikan status 200 dan isinya yang diharapkan, bukan halaman HTML.
  • Di Search Console, laporan Settings → robots.txt menampilkan versi yang terakhir diambil Google beserta tanggal dan status.
  • Uji beberapa URL penting dengan robots.txt tester: beranda, satu halaman artikel, satu berkas CSS, satu gambar.
  • Setelah mengubah berkas, tunggu sampai Google mengambil ulang (umumnya di bawah 24 jam), lalu cek URL Inspection pada URL yang tadinya diblokir.

Rujukan

  1. Introduction to robots.txt Google Search Central
  2. How Google interprets the robots.txt specification Google Search Central
  3. Create and submit a robots.txt file Google Search Central
  4. RFC 9309: Robots Exclusion Protocol IETF

Tentang penulis

Ahmad Safwan menulis dan mendokumentasikan pembelajaran tentang SEO, technical SEO, search visibility, dan perkembangan AI Search di situs ini. Koreksi dan pertanyaan lewat halaman kontak.

Lanjut membaca

  • Crawling vs indexingpemula

    Dua proses berbeda dengan alat kontrol berbeda, dan kenapa di-crawl tidak berarti diindeks.

  • XML sitemappemula

    Format, batas, lastmod yang jujur, dan apa yang tidak dilakukan sitemap.

  • Canonicalmenengah

    Sinyal, bukan perintah. Cara Google memilih canonical dan kenapa pilihannya bisa berbeda.