Robots.txt untuk SEO: kendalikan perayapan dengan efisien
Pelajari cara memakai robots.txt untuk mengarahkan perayap dengan aman, menghindari kesalahan pengindeksan, memverifikasi perilaku dengan curl dan log, serta menerapkan contoh praktis di situs produksi.

Apa yang robots.txt lakukan — dan yang tidak dilakukannya
File robots.txt adalah file teks biasa yang ditempatkan di root situs (https://example.com/robots.txt). Perannya terbatas: ia memberi instruksi crawling pada crawler yang patuh. Gunakan untuk mengurangi pengambilan yang tidak perlu di area bernilai rendah dan untuk meningkatkan efisiensi crawl; jangan mengandalkannya untuk mengontrol pengindeksan atau menyembunyikan konten sensitif.
Mengontrol crawling, bukan pengindeksan
Direktif Disallow mencegah crawler yang mematuhi untuk mengambil path URL. Jika sebuah halaman diblokir dari crawling, mesin pencari masih bisa mengindeks URL-nya berdasarkan sinyal eksternal (misalnya, tautan) tetapi mereka tidak akan melihat HTML halaman atau tag meta robots. Untuk mencegah pengindeksan secara andal, izinkan crawling sehingga crawler dapat membaca tag meta robots noindex atau menggunakan header respons X-Robots-Tag dengan noindex pada sumber daya itu sendiri.
Publik, bersifat nasihat, dan bukan kontrol keamanan
robots.txt dapat diakses publik dan bersifat nasihat: siapa pun bisa membacanya di /robots.txt, dan crawler jahat mungkin mengabaikan direktifnya. Jangan cantumkan rahasia atau path privat di robots.txt; anggaplah sebagai dokumen pengendali crawl, bukan mekanisme kontrol akses.
Sintaks inti dan direktif umum
Kebanyakan situs menggunakan seperangkat kecil direktif. Spesifikasi dan ekstensi praktis yang dipakai oleh mesin pencari besar mendukung pola dasar, wildcard dan penunjuk sitemap. Buat aturan sederhana dan dokumentasikan maksud di komentar bila memungkinkan.
Direktif kunci (contoh ditampilkan sebagai baris literal):
- User-agent: <bot-name> — tujukan pada satu crawler; gunakan User-agent: * untuk semua crawler.
- Disallow: /path/ — mencegah crawler mengambil path di bawah /path/.
- Allow: /path/file.js — secara eksplisit mengizinkan path di bawah parent yang diblokir (didukung oleh mesin pencari besar).
- Sitemap: https://example.com/sitemap.xml — mengarahkan crawler ke XML sitemap(atau lebih).
- Wildcards: * (cocokkan urutan apa pun) dan $ (akhir string) didukung dalam praktik oleh mesin pencari besar; gunakan dengan hati-hati untuk pola parameter query.
- Direktif non-standar: Crawl-delay dan Host dikenali oleh beberapa crawler tetapi bukan bagian dari standar asli — uji perilaku untuk user-agents yang relevan.
Bagaimana robots.txt berinteraksi dengan pengindeksan dan peringkat
Pisahkan crawling, indexing dan ranking: robots.txt mempengaruhi tahap crawling (apakah crawler mengambil sebuah URL). Pengindeksan mengharuskan crawler membaca konten halaman atau meta/X-Robots-Tag. Ranking adalah proses selanjutnya yang bergantung pada sinyal, beberapa di antaranya datang dari konten halaman; jika crawler tidak dapat mengambil halaman, sinyal yang berasal dari konten tersebut tidak tersedia.
Konsekuensi praktis:
- Memblokir halaman di robots.txt berarti mesin pencari tidak dapat mengambil halaman untuk membaca tag meta robots noindex atau data terstruktur.
- Jika sumber penting (CSS/JS) diblokir, mobile-first indexing dan rendering bisa gagal melihat halaman dengan benar; karena Google menggunakan versi mobile sebagai dasar utama untuk crawling and indexing, dan karena Googlebot Smartphone adalah default crawler sejak July 2024, izinkan sumber daya yang diperlukan untuk rendering pada mobile.
Verifikasi: cara menguji apa yang sebenarnya dilihat crawler
Verifikasi aksesibilitas dan isi robots.txt dari luar dan konfirmasi bagaimana situsmu merespons permintaan crawler nyata. Gunakan log server, pengambilan langsung dan alat Search Console untuk halaman yang kamu kendalikan.
Pemeriksaan cepat dengan curl
Untuk mengambil header respons HTTP untuk robots.txt (hanya header):
- curl -I https://example.com/robots.txt — mengembalikan hanya header respons; verifikasi status code dan Content-Type.
Untuk mengambil file lengkap sebagai user-agent tertentu (HTML dan direktif):
- curl -A "Googlebot" https://example.com/robots.txt — mengembalikan isi file menggunakan string user-agent yang ditentukan.
Log server dan bukti crawl nyata
Periksa log server untuk permintaan ke /robots.txt dan untuk user-agent crawler seperti Googlebot atau Bingbot. Log menunjukkan frekuensi fetch, kode respons, dan apakah crawler mencoba URL yang dilarang. Untuk halaman milikmu, gunakan URL Inspection di Search Console untuk melihat sinyal crawl dan index; untuk halaman pihak ketiga, kueri site: memberi indikasi tetapi tidak definitif.
Kesalahan umum dan cara memperbaikinya
Hindari kesalahan umum ini saat mengelola robots.txt.
- Memblokir CSS/JS yang diperlukan untuk rendering: perbaikan — izinkan path aset yang dibutuhkan oleh pipeline rendering mobile agar Googlebot Smartphone bisa merender halaman dengan akurat.
- Mengharapkan robots.txt untuk noindex URL: perbaikan — hapus Disallow untuk halaman tersebut dan gunakan tag meta robots noindex atau header X-Robots-Tag sehingga mesin pencari dapat melihat instruksi.
- Mencantumkan URL sensitif di robots.txt: perbaikan — jangan ungkapkan path privat di robots.txt; lindungi dengan otentikasi dan kontrol akses sisi-server yang tepat.
- Aturan wildcard yang terlalu kompleks sehingga tidak sengaja mencocokkan halaman valid: perbaikan — uji setiap pola dengan contoh URL dan dokumentasikan maksud di komentar, buat aturan se-spesifik mungkin.
Strategi robots.txt yang direkomendasikan
Adopsi pendekatan konservatif yang bisa diuji: jaga robots.txt seminimal mungkin, arahkan crawler ke sitemap, dan utamakan kontrol meta/X-Robots-Tag pada tingkat halaman untuk manajemen indeks.
Pola praktis:
- Izinkan default plus sitemap: sertakan User-agent: * dan direktif Sitemap agar crawler dapat menemukan struktur situsmu dengan cepat.
- Blokir halaman query bernilai rendah atau hasil pencarian internal, tetapi hindari memblokir pola parameter yang juga mencocokkan konten kanonik; utamakan penanganan parameter di sitemap atau lewat tag kanonik.
- Staging atau pengembangan: blokir crawler saat staging bersifat publik, tetapi hapus atau ubah blok sebelum peluncuran; jangan hanya mengandalkan robots.txt sebagai satu-satunya pengaman untuk aset pra-produksi.
Contoh yang bisa kamu adaptasi
Situs sederhana dengan sitemap
User-agent: *
Disallow:
Sitemap: https://example.com/sitemap.xml
CMS umum (izinkan admin-ajax)
User-agent: *
Disallow: /wp-admin/
Allow: /wp-admin/admin-ajax.php
Sitemap: https://example.com/sitemap_index.xml
Blok staging (server publik tapi belum live)
User-agent: *
Disallow: /
Peringatan: blok staging harus dihapus sebelum peluncuran; juga amankan staging dengan otentikasi supaya mesin pencari dan pihak ketiga tidak secara tidak sengaja mengindeksnya jika file robots diubah.
Memelihara robots.txt dalam skala besar
Untuk situs besar, anggap robots.txt sebagai artefak konfigurasi: simpan di source control, tinjau perubahan lewat pull request, dan deploy bersama situs supaya staging dan production punya file yang benar dan spesifik lingkungan. Otomatiskan pengujian yang mengambil robots.txt yang dideploy dan validasi sintaks aturan terhadap URL representatif.
Jika kamu mengoperasikan banyak subdomain, ingat bahwa robots.txt bersifat host-spesifik: aturan di example.com/robots.txt tidak berlaku untuk sub.example.com.
FAQ
Dapatkah robots.txt mencegah halaman muncul di hasil pencarian?
Tidak secara andal. robots.txt bisa menghentikan crawler mengambil halaman, tetapi mesin pencari masih bisa mengindeks URL berdasarkan tautan eksternal atau sinyal lain. Untuk mencegah pengindeksan, izinkan crawling dan gunakan tag meta robots noindex di halaman atau header respons X-Robots-Tag: noindex supaya crawler bisa membaca instruksinya.
Bagaimana cara memeriksa bahwa Google mematuhi robots.txt saya?
Dari luar, ambil https://example.com/robots.txt dengan curl untuk mengonfirmasi file dan kode status, periksa log server untuk permintaan Googlebot ke file dan ke halaman yang kamu harapkan dicrawl, dan gunakan URL Inspection di Search Console untuk halaman yang kamu miliki untuk melihat upaya crawl dan status indeks. Kueri site: dapat memberikan indikasi publik tetapi tidak definitif.
Haruskah saya memblokir parameter URL di robots.txt?
Berhati-hatilah. Memblokir URL dengan parameter bisa menghemat crawl budget tetapi berisiko menyembunyikan konten yang dikanonisasi atau sudah diindeks jika polanya terlalu luas. Utamakan tag kanonik, pengelolaan parameter di sitemap, atau redirect sisi-server bila sesuai; uji setiap pola secara menyeluruh sebelum dideploy.
Apakah Crawl-delay aman untuk diandalkan?
Crawl-delay adalah direktif non-standar dan dukungannya bervariasi antar crawler. Untuk situs yang butuh kontrol laju crawl, utamakan rate limiting sisi-server, robots meta tags untuk halaman tertentu, atau pengaturan spesifik-crawler yang tersedia di layanan seperti Bing Webmaster Tools. Selalu uji perilaku untuk user-agent spesifik yang kamu targetkan.
Artikel terkait

Cara menggunakan file robots.txt untuk SEO
Pelajari apa yang diatur oleh robots.txt, cara menulis aturan yang benar, memverifikasi perilaku dengan curl dan DevTools, dan menghindari kesalahan SEO umum.

Layanan Search Engine Optimization (SEO) Terbaik
Pelajari apa saja yang harus termasuk dalam layanan SEO penuh, cara memeriksa penyedia, langkah verifikasi teknis, dan praktik tautan yang aman.

Tips SEO Praktis untuk Meningkatkan Peringkat Pencarian
Strategi SEO yang bisa langsung diterapkan dan tahan lama: pemilihan kata kunci, dasar on-page, perbaikan teknis, panduan link building, dan langkah verifikasi yang bisa kamu gunakan hari ini.
