← Kembali ke blog

Geo-redirect di situs: 6 kesalahan cloaking yang membuat Google memblokir

Googlebot melihat satu halaman, pengguna dari Jerman melihat halaman yang lain. Kami membahas 6 kesalahan geo-redirect yang mengakibatkan sanksi manual dari Google dan cara menghindarinya.

📅12 Oktober 2026

Situs menunjukkan halaman yang berbeda kepada pengguna berbahasa Inggris dari AS, sementara Googlebot, yang secara fisik berada di pusat data Mountain View, melihat halaman yang sama sekali berbeda. Secara formal, ini sudah dianggap sebagai cloaking, bahkan jika Anda hanya ingin menyesuaikan konten untuk wilayah tertentu. Mari kita bahas 6 kesalahan umum geo-redirects yang menyebabkan situs kehilangan peringkat, mendapatkan sanksi manual, dan memblokir seluruh domain di jaringan mitra.

Apa itu geo-redirect dan mengapa itu penting bagi bisnis

Geo-redirect adalah mekanisme yang secara otomatis mengarahkan pengguna ke versi situs yang disesuaikan dengan negara mereka: bahasa yang berbeda, mata uang, harga, penawaran. Toko online menggunakannya agar pembeli dari Jerman langsung diarahkan ke versi Jerman dengan harga dalam euro, bukan melihat katalog dalam dolar. Para arbitrase menggunakan geo-redirect dalam kombinasi untuk menampilkan penawaran yang berbeda tergantung pada lalu lintas geo — misalnya, pengguna dari negara Tier-1 mendapatkan satu landing page, sementara yang lain mendapatkan halaman pengganti atau produk yang berbeda.

Masalahnya adalah bahwa logika yang sama yang menentukan negara pengguna berdasarkan IP juga diterapkan pada Googlebot. Dan alamat IP bot Google secara fisik berada di AS, terlepas dari apakah mereka mengindeks halaman untuk hasil pencarian Rusia, Kazakhstan, atau Jerman. Jika sistem geo-redirect tidak membedakan crawler dari manusia, hasilnya adalah Google melihat halaman yang tidak sama dengan yang dilihat pengunjung nyata. Ini adalah definisi formal dari cloaking menurut rekomendasi Google Search Central, dan hukumannya — dari penurunan peringkat hingga penghapusan total domain dari indeks.

Mengapa Googlebot dan manusia melihat halaman yang berbeda

Perbedaan terjadi karena tiga alasan sekaligus, dan biasanya saling tumpang tindih. Pertama, Googlebot merayapi situs dari alamat IP yang dimiliki Google, dan alamat-alamat ini hampir 100% diidentifikasi oleh layanan geo (MaxMind, IP2Location, dan sejenisnya) sebagai alamat Amerika. Kedua, Googlebot mengirimkan User-Agent sendiri, yang sering diproses oleh cabang kode terpisah — terkadang dengan sengaja, agar tidak merusak pengindeksan, dan terkadang hanya karena kesalahan pengembang. Ketiga, perilaku Googlebot saat rendering JS berbeda dari perilaku browser: crawler mungkin tidak melakukan redirect yang bergantung pada JavaScript klien, dan kemudian ia mengindeks versi halaman yang sama sekali tidak sama dengan yang dilihat orang dengan JS diaktifkan.

Tambahkan ke sini caching CDN, yang dapat "terjebak" pada versi untuk satu negara dan memberikannya kepada semua orang, dan Anda mendapatkan situasi di mana bahkan tanpa niat jahat dari pemilik situs, mesin pencari mengindeks konten yang tidak sesuai dengan apa yang dilihat audiens. Di bawah ini adalah enam skenario konkret di mana ini terjadi paling sering.

Kesalahan 1: redirect berdasarkan IP tanpa memeriksa User-Agent bot

Kesalahan paling umum adalah logika redirect dibangun hanya berdasarkan penentuan negara berdasarkan IP, tanpa satu pun pemeriksaan siapa yang membuat permintaan: manusia atau crawler. Akibatnya, Googlebot yang mengakses dari rentang IP Amerika secara otomatis diarahkan ke versi AS dari situs, bahkan jika halaman awalnya dipromosikan untuk permintaan dari Rusia atau Kazakhstan. Setelah beberapa minggu pemindaian, indeks Google menjadi penuh dengan versi konten yang "salah", dan posisi di wilayah target mulai menurun tanpa alasan yang jelas.

Solusinya adalah selalu mengecualikan User-Agent dan rentang IP yang dikenal dari bot pencari (Googlebot, Bingbot, YandexBot) dari geo-redirect, memberikan mereka versi kanonik dari halaman terlepas dari negara yang ditentukan. Pemeriksaan User-Agent adalah penghalang yang diperlukan, tetapi tidak cukup, karena mudah dipalsukan, sehingga proyek serius juga memverifikasi IP melalui permintaan DNS terbalik (reverse DNS lookup), seperti yang direkomendasikan oleh dokumentasi Google untuk memverifikasi Googlebot.

Kesalahan 2: pengujian dengan IP pusat data daripada pengguna nyata

Kesalahan kedua terjadi pada tahap pengujian. Pengembang atau pemasar menguji geo-redirect melalui proxy pusat data biasa atau VPN, dan logika berfungsi seolah-olah ini adalah pengguna nyata dari negara yang diinginkan. Namun, IP pusat data mudah dibedakan dari lalu lintas rumah tangga — banyak CDN dan sistem anti-fraud menandainya dengan bendera terpisah, dan sebagian logika geo-targeting dapat berperilaku berbeda untuk alamat tersebut dibandingkan dengan alamat IP penyedia rumah tangga biasa.

Akibatnya, pengujian "berhasil", redirect di server pengembangan berfungsi dengan sempurna, tetapi di produksi pengguna nyata dari negara target mendapatkan versi yang salah, karena basis geolokasi penyedia atau aturan CDN menginterpretasikan IP mereka berbeda dari alamat pusat data yang diuji. Untuk pemeriksaan yang benar, sebaiknya gunakan proxy residensial — mereka memiliki IP dari penyedia rumah nyata di negara yang diinginkan, dan layanan geo mengidentifikasinya sama seperti mereka mengidentifikasi pengguna nyata. Ini memberikan gambaran yang jujur tentang apa yang akan dilihat pengunjung nyata situs, bukan versi yang disederhanakan untuk "IP pusat data yang tipikal".

Kesalahan 3: cache dan tidak adanya Vary-header

Jika situs berada di belakang CDN (Cloudflare, Fastly, Akamai) dan geo-redirect diimplementasikan di tingkat server asal, bukan di CDN itu sendiri, mudah untuk terjebak dalam situasi di mana CDN menyimpan versi halaman yang pertama kali diberikan dan akan mendistribusikannya kepada semua orang — terlepas dari negara pengunjung berikutnya. Ini terjadi ketika respons server tidak menyertakan header yang benar Vary: Accept-Language atau kunci caching geografi serupa.

Dalam hal ini, Googlebot dapat menemukan versi "benar" pada kunjungan pertama, menyimpannya dalam sistem pengindeksannya, dan kemudian selama berminggu-minggu menerima versi yang sama pada kunjungan berikutnya, bahkan jika konten untuk negara lain telah lama berubah. Pengguna pada saat itu melihat versi yang relevan tetapi berbeda — ketidaksinkronan meningkat secara bertahap dan sulit didiagnosis tanpa perbandingan langsung dari respons server untuk berbagai geo melalui alat seperti curl dengan penggantian header atau melalui proxy dengan geolokasi yang tepat.

Kesalahan 4: JS-redirect yang diinterpretasikan berbeda oleh bot

Googlebot dapat menjalankan JavaScript, tetapi melakukannya dengan keterlambatan yang signifikan (gelombang kedua rendering dapat memakan waktu berhari-hari) dan tidak selalu identik dengan browser pengguna. Jika redirect geo diimplementasikan melalui JS klien — misalnya, melalui window.location setelah permintaan fetch ke geo-API — ada risiko bahwa pada kunjungan pertama crawler akan mengindeks halaman sebelum redirect terjadi, yaitu versi konten yang "salah" untuk wilayah tertentu.

Ini sangat kritis untuk landing page satu halaman (SPA), di mana seluruh logika personalisasi berada di sisi klien. Pendekatan yang benar adalah melakukan penentuan geo dan redirect di sisi server (fungsi edge CDN, middleware di Node.js, aturan di Nginx), sehingga Googlebot dan pengguna menerima HTTP-redirect 302 sebelum halaman mulai dirender di browser. Ini menghilangkan ketergantungan pada bagaimana crawler akan memproses JS pada waktu tertentu.

Kesalahan 5: satu URL tanpa hreflang untuk berbagai versi bahasa

Kesalahan kelima adalah mencoba melayani beberapa versi bahasa di URL yang sama tanpa markup hreflang. Google secara langsung merekomendasikan: jika konten di satu URL berbeda tergantung pada lokal pengguna, maka harus memberikan URL yang berbeda untuk setiap versi (subdomain, subfolder, atau domain terpisah) dengan markup hreflang silang, atau secara jujur menunjukkan versi yang sama kepada semua orang, termasuk bot, dengan menambahkan kemampuan untuk beralih bahasa secara manual.

Tanpa hreflang, Google secara fisik tidak dapat memahami bahwa /product dalam bahasa Rusia dan /product dalam bahasa Inggris — adalah konten yang berbeda secara sengaja untuk audiens yang berbeda, dan bukan upaya untuk menyembunyikan satu versi dari indeks demi yang lain. Akibatnya, versi acak (biasanya yang tersedia untuk bot saat pemindaian terakhir) masuk ke indeks, dan itulah yang mulai diberi peringkat di semua wilayah secara bersamaan, yang berdampak buruk pada relevansi hasil pencarian dan konversi.

Kesalahan 6: tidak ada fallback untuk pengguna dengan VPN dan proxy seluler

Kesalahan keenam ini lebih berkaitan dengan pengguna nyata daripada Googlebot — tetapi langsung terkait dengan tema geo-redirects, karena sering kali upaya untuk "memperbaiki" perilaku untuk bot merusak hal itu untuk orang hidup dengan VPN atau internet seluler. Pengguna operator seluler sering kali terhubung ke jaringan melalui CGNAT (Carrier-Grade NAT), di mana puluhan ribu pelanggan menggunakan satu IP eksternal yang sama, dan basis geo dapat mengidentifikasi IP tersebut sebagai milik negara tetangga atau bahkan salah.

Jika situs tidak memiliki saklar manual untuk negara/bahasa sebagai fallback, pengguna dengan IP yang "salah" terjebak pada versi yang tidak relevan tanpa kemampuan untuk mengubahnya — dan hanya pergi. Untuk menguji skenario seperti itu, sebaiknya memeriksa perilaku situs melalui proxy seluler, yang meniru IP dari operator seluler nyata dengan perilaku geolokasi yang khas untuk CGNAT — ini membantu melihat masalah sebelumnya, sebelum pengguna nyata menemukannya dan menghubungi dukungan.

Bagaimana memeriksa geo-redirect dari sudut pandang Google dari berbagai negara

Alat utama untuk diagnosis awal adalah fungsi "Lihat seperti Googlebot" di Google Search Console (alat pemeriksa URL), yang menunjukkan HTML mana yang sebenarnya diterima oleh crawler Google. Jika versi yang ditampilkan bukan yang Anda lihat di browser dari negara Anda, — masalahnya terkonfirmasi. Namun, Search Console selalu merayapi dari IP Amerika, jadi untuk membandingkan perilaku situs berdasarkan wilayah, diperlukan lapisan pengujian terpisah.

Dalam praktiknya, pemasar dan spesialis SEO membuat beberapa profil di browser anti-detect — Dolphin Anty, AdsPower, Multilogin, atau GoLogin — dan mengaitkan setiap profil dengan proxy dari negara yang diperlukan, untuk secara manual melewati jalur pengguna: membuka situs, melihat versi mana yang dimuat, header Accept-Language mana yang dikirim, apakah redirect bekerja dan ke URL mana. Untuk pemeriksaan semacam itu, proxy residensial dengan pemilihan kota atau operator yang tepat sangat nyaman — mereka memberikan simulasi yang paling jujur dari pengunjung nyata, berbeda dari alamat pusat data yang mungkin ditandai sebagai mencurigakan sebelum penilaian geo.

Jenis proxy Untuk pemeriksaan apa yang cocok Risiko hasil yang salah
Proxy residensial Simulasi pengguna rumah biasa di negara/kota yang diinginkan Rendah
Proxy seluler Memeriksa perilaku saat CGNAT dan geolokasi seluler Rendah
Proxy pusat data Pemeriksaan cepat fakta terjadinya redirect berdasarkan negara Lebih tinggi: sebagian basis geo menandai IP berbeda dari rumah

Untuk memeriksa perilaku logika server (bukan render visual), berguna untuk melihat respons mentah server melalui curl dengan mengganti User-Agent ke Googlebot dan header X-Forwarded-For ke IP negara yang diperlukan — ini akan menunjukkan status HTTP dan Lokasi yang diberikan server sebelum rendering JS, dan memungkinkan untuk menangkap kesalahan 4 dan kesalahan 1 dari daftar di atas hanya dengan satu perintah.

Checklist pengaturan geo-redirect yang aman

  • Googlebot, Bingbot, dan YandexBot dikecualikan dari logika geo-redirect berdasarkan User-Agent dan dikonfirmasi melalui DNS terbalik
  • Redirect diimplementasikan di sisi server (302/307), bukan hanya melalui JavaScript klien
  • Header Vary diatur untuk caching CDN yang benar berdasarkan geo/bahasa
  • Untuk setiap versi bahasa ada URL terpisah dengan markup hreflang silang
  • Ada saklar manual yang terlihat untuk negara/bahasa sebagai fallback untuk IP yang salah teridentifikasi
  • Pengujian dilakukan melalui proxy residensial dan seluler dari negara yang diperlukan, bukan hanya melalui alamat pusat data
  • Setiap kuartal memeriksa apa yang ditunjukkan Google Search Console — versi yang sama dengan yang dilihat pengguna nyata

Kesimpulan

Perbedaan antara apa yang dilihat Googlebot dan apa yang dilihat pengguna jarang merupakan penipuan yang disengaja terhadap mesin pencari — lebih sering ini adalah utang teknis yang terakumulasi: redirect berdasarkan IP tanpa memeriksa bot, cache tanpa header Vary, redirect JS yang tidak sempat dilakukan oleh crawler, dan tidak adanya hreflang untuk versi bahasa. Setiap kesalahan ini tampak sepele secara terpisah, tetapi bersama-sama mereka menciptakan gambaran klasik cloaking di mata Google — dengan sanksi yang sesuai.

Satu-satunya cara yang dapat diandalkan untuk memastikan bahwa situs berperilaku sama jujurnya untuk bot dan manusia adalah dengan secara teratur memeriksanya dari IP nyata dari negara yang diperlukan. Untuk diagnosis semacam itu, kami merekomendasikan menggunakan proxy residensial untuk mensimulasikan pengguna rumah yang tipikal dan proxy seluler untuk memeriksa skenario dengan CGNAT — ini memberikan gambaran yang paling jujur tentang apa yang benar-benar dilihat audiens Anda di setiap wilayah, dan membantu menangkap masalah sebelum algoritma Google menemukannya.