Status 200 OK

Pahami arti HTTP 200 OK (RFC 9110), mengapa kode ini diperlukan tetapi belum cukup untuk pengindeksan, jebakan soft 404, perbedaannya dari 204 dan 304, serta cara memastikan apa yang benar-benar diterima Googlebot.

Pertama kali diterbitkan: 3 Jul 2026 · Terakhir diperbarui: 6 Agu 2026 · Advanced
Bahasa
1 sinyal bukti di halaman ini

HTTP 200 OK adalah kode sukses standar 2xx (RFC 9110): server menemukan resource dan mengembalikannya. Untuk halaman web, inilah kode yang diinginkan—tetapi perlu, belum cukup. Dokumentasi Google sendiri mengatakan sistem pengindeksan dapat mengindeks konten, tetapi itu tidak dijamin; kualitas, duplikasi, konten tipis, dan noindex tetap dinilai setelah status 200. Jebakan klasiknya adalah soft 404: URL mengembalikan 200 sementara kontennya tampak seperti error atau halaman kosong; Google mendeteksinya pada lapisan konten dan melaporkannya sebagai soft 404 di Search Console, apa pun kodenya. Bedakan 200 (berhasil dengan body nyata), 204 (berhasil dengan body kosong, diperlakukan seperti soft 404), dan 304 (sinyal cache, bukan keputusan pengindeksan). Sesuaikan kode dengan kenyataan—hilang → 404/410, berpindah → 301, duplikat → tag kanonis—dan selalu pastikan apa yang diterima Googlebot melalui Inspeksi URL atau log, bukan hanya apa yang dilihat browser.

TL;DR — 200 OK adalah kode sukses standar 2xx (RFC 9110 §15.3.1): server memenuhi permintaan dan, untuk GET/HEAD, body merupakan representasi resource. Secara heuristik, kode ini dapat di-cache secara default. Untuk SEO, ini diperlukan tetapi belum cukup—dokumentasi Google sendiri mengatakan “may index the content, but that’s not guaranteed,” (terjemahan) “dapat mengindeks konten, tetapi itu tidak dijamin,” sehingga kualitas, duplikasi, konten tipis, dan noindex tetap menentukan hasil di atas status 200. Kegagalan klasiknya adalah soft 404: konten error/kosong yang dibungkus status 200, yang dideteksi Google pada lapisan konten dan dilaporkan sebagai soft 404 apa pun kodenya. Bedakan 200 (body diharapkan) dari 204 (body kosong, diperlakukan seperti soft 404 pada halaman) dan 304 (sinyal cache, bukan keputusan pengindeksan). Konfirmasikan apa yang diterima Googlebot—cloaking, pemblokiran bot, aturan geo, dan konfigurasi CDN/WAF dapat menyajikan kode berbeda dari yang dilihat browser Anda.

Apa arti 200 menurut spesifikasi

RFC 9110 (HTTP Semantics) adalah otoritas saat ini, dan §15.3.1 menyatakan tegas: “The 200 (OK) status code indicates that the request has succeeded.” (terjemahan) “Kode status 200 (OK) menunjukkan bahwa permintaan berhasil.” Isi body bergantung pada metode permintaan. Untuk metode yang penting bagi halaman—GET dan HEAD—konten adalah representasi resource tujuan. RFC juga memberi pengecualian: selain respons CONNECT, 200 diharapkan membawa konten kecuali framing pesan secara eksplisit menandakan panjang nol—jadi “a 200 always has a body” (terjemahan) “200 selalu memiliki body” adalah singkatan, bukan aturan mutlak. Dalam praktik, untuk halaman yang ingin diindeks, sasaran itu tetap body nyata, bukan body kosong. 200 juga “heuristically cacheable” (terjemahan) “dapat di-cache secara heuristik” secara default kecuali direktif cache-control menyatakan sebaliknya; itulah sebabnya header validator seperti ETag dan Last-Modified penting pada halaman yang sering dirayapi ulang. Evidence for this claim RFC 9110 defines 200 OK as indicating that the request succeeded; the response content depends on the request method. Scope: HTTP semantics for 200 responses; this does not guarantee search indexing. Confidence: high · Verified: IETF: RFC 9110 §15.3.1 — 200 OK

Secara teknis, 200 bukan hanya untuk halaman. RFC menjelaskan arti “success” (terjemahan) “sukses” untuk tiap metode:

Metode permintaanBody 200 mewakili
GETtarget resource
HEADresource tujuan, tetapi tanpa mentransfer body
POSTstatus atau hasil tindakan
PUT, DELETEstatus tindakan
OPTIONSopsi komunikasi untuk resource

Untuk metode non-GET, Anda sering tidak melihat 200—MDN mencatat permintaan PUT atau DELETE yang berhasil “often do not result in a 200 OK response,” (terjemahan) “sering tidak menghasilkan respons 200 OK,” dan 201 Created atau 204 No Content lebih umum. Semua itu tidak relevan untuk SEO URL halaman; satu hal yang perlu diingat: dokumen yang ingin diindeks membutuhkan 200 dengan body nyata.

Diperlukan, tetapi belum cukup, untuk pengindeksan

Ini adalah hal terpenting yang harus dipahami, karena banyak halaman glosarium lain keliru menyatakan bahwa “200 berarti halaman pasti diindeks.” Dokumentasi Google menjelaskan sebaliknya. Untuk respons 200, Google “passes on whatever it received to the next processing step… For Google Search, the next system is the indexing pipeline. The indexing systems may index the content, but that’s not guaranteed.” (terjemahan) “meneruskan apa pun yang diterimanya ke langkah pemrosesan berikutnya… Untuk Google Search, sistem berikutnya adalah pipeline pengindeksan. Sistem pengindeksan dapat mengindeks konten, tetapi itu tidak dijamin.” Evidence for this claim Google passes a 2xx response to its indexing pipeline, which may index the content but does not guarantee that it will do so; error-like content can be classified as a soft 404. Scope: Google Search handling of 2xx page responses and soft 404s. Confidence: high · Verified: Google: HTTP status codes and Search

Jadi, 200 adalah kontrak tentang respons HTTP, bukan janji tentang nasib halaman di Search. Setelah menerima 200, Google mengevaluasi secara terpisah:

  • Kualitas — halaman tipis, bernilai rendah, atau dibuat otomatis mungkin tidak diindeks.
  • Duplikasi — duplikat dekat dari URL yang lebih kuat dapat digabungkan ke URL tersebut, bukan diindeks sendiri (inilah yang dapat dikendalikan dengan tag kanonis).
  • Direktifnoindex pada meta tag atau header X-Robots-Tag membuat halaman tetap di luar indeks meskipun responsnya 200 sempurna.

Panduan HTTP status codes Patrick di Ahrefs menarik garis yang sama pada tingkat keluarga kode: sebagian besar respons 2xx memungkinkan halaman diindeks, tetapi respons 204 diperlakukan sebagai soft 404 dan tidak diindeks. Jadi, respons 200 hanya membuat halaman layak diproses; itu tidak membuatnya pasti terindeks.

Jebakan soft 404

Ilustrasi paling jelas bahwa “200 isn’t the whole story” (terjemahan) “200 bukan keseluruhan cerita” adalah soft 404. Dokumentasi kode status Google menjelaskan mekanismenya: “If the content suggests an error for Google Search, an empty page or an error message, Search Console will show a soft 404 error.” (terjemahan) “Jika konten menunjukkan error bagi Google Search, halaman kosong atau pesan error, Search Console akan menampilkan error soft 404.” Perhatikan artinya—klasifikasi didasarkan pada konten yang dirender, bukan kode HTTP. Pipeline pengindeksan Google melihat melampaui 200 ke isi halaman yang sebenarnya; jika terbaca seperti “not found,” (terjemahan) “tidak ditemukan,” halaman dikelompokkan dan dilaporkan seperti 404 nyata.

Kasus yang perlu diperiksa langsung: produk yang sudah dihentikan tetapi halamannya kini memuat template kosong, artikel yang sudah dihapus tetapi masih mengembalikan kerangka 200, halaman kategori terfilter atau hasil pencarian tanpa item dengan pesan “nothing here” (terjemahan) “tidak ada apa-apa di sini”. Semuanya mengembalikan 200 yang benar secara teknis, tetapi memberi tahu pengguna dan Google bahwa tidak ada yang bisa dilihat.

Situs ini memiliki artikel khusus soft-404-errors untuk mekanisme deteksi dan perbaikannya—saya tidak akan mengulanginya di sini. Kesimpulan untuk pembahasan 200 sederhana: mengembalikan 200 pada halaman yang benar-benar sudah hilang adalah awal terjadinya soft 404. Perbaikannya adalah menyesuaikan kode dengan kenyataan.

Ada catatan singkat yang relevan di lingkungan API dan pemantauan: lapisan HTTP dan lapisan aplikasi bisa tidak sepakat. Endpoint API dapat mengirim 200 dengan objek kesalahan JSON di dalam body; halaman dapat mengirim 200 ketika dependensi backend gagal diam-diam dan merender blok rusak, bukan konten sebenarnya. Baris status hanya mengatakan “delivered fine” (terjemahan) “pengiriman berhasil” — tidak lebih dari itu. Apakah payload benar-benar benar adalah pertanyaan terpisah yang tidak dijawab kode status. Praktisi memang berbeda pendapat: API sebaiknya menandai kesalahan dengan status selain 200 atau dengan 200 yang membungkus payload kesalahan; itu kontrak yang dipilih tiap tim, bukan aturan HTTP. Untuk fokus SEO situs ini, versi tingkat halaman dari masalah yang sama adalah soft 404 di atas — perbaikannya sama: jangan hanya mempercayai baris status, lihat isi body sebenarnya.

200 vs. 204 vs. 304—jangan mencampuradukkan

Tiga kode ini sering tertukar, dan hanya satu yang berarti “here’s your page” (terjemahan) “inilah halaman Anda yang diminta”:

KodeKelasBodyArtinyaPenanganan SEO
200 OK2xxKonten nyata diharapkanBerhasil—resource tersediaLayak diindeks (tidak dijamin)
204 Tanpa Konten2xxKosong menurut desainBerhasil, sengaja tanpa bodyDiperlakukan seperti soft 404 pada URL halaman—lihat 204-no-content
304 Tidak Diubah3xxTidak ada”Use your cached copy” (terjemahan) “Gunakan salinan cache Anda” (permintaan bersyarat)Sinyal cache, bukan keputusan pengindeksan

204 adalah kode sukses yang sah, tetapi body kosongnya tidak memberi crawler apa pun untuk diindeks; karena itu, pada URL halaman kode ini masuk ke kelompok soft 404 (lihat artikel terpisah; jangan menyamakan kasus body kosong dengan 200 normal). 304 bahkan berada di keluarga berbeda—kode ini menjawab permintaan bersyarat (If-None-Match / If-Modified-Since) dengan memberi tahu klien bahwa salinan cache masih mutakhir. Kode ini tidak membawa body dan tidak mengatakan apa pun tentang pengindeksan; ini mekanisme efisiensi crawl, bukan duplikat 200. Pertanyaan umum “200 vs 304, aren’t those the same?” (terjemahan) “200 dan 304, bukankah sama?” mencampur optimasi cache dengan respons sukses.

Konfirmasikan apa yang dilihat Googlebot

Berikut celah yang hampir selalu dilewatkan artikel lain: peminta yang berbeda dapat menerima kode berbeda untuk URL yang sama. Browser Anda dapat melihat 200 bersih sementara Googlebot menerima sesuatu yang lain—kadang sengaja (cloaking, yang merupakan pelanggaran spam menurut Google Search Essentials), tetapi lebih sering tidak sengaja karena aturan WAF/pemblokiran bot, penargetan geo-IP, logika edge CDN, atau konfigurasi pengujian A/B yang salah untuk bot.

Jadi “it’s 200 in my browser” (terjemahan) “di browser saya hasilnya 200” bukan bukti bahwa “Google sees 200.” (terjemahan) “Google melihat 200.” Diagnosis yang benar adalah memeriksa apa yang diterima Googlebot sendiri:

  • Pemeriksaan URL GSC — jalankan Live Test untuk melihat status dan konten yang dirender Google, bukan yang dilihat mesin Anda.
  • Log server/CDN — sumber kebenaran untuk kode yang benar-benar diterima setiap user-agent.

curl -I biasa dari terminal Anda berguna, tetapi itu hanya satu peminta lain yang dapat terkena aturan edge berbeda dari Googlebot—anggap sebagai satu titik data, bukan kata akhir.

Cara memeriksa dan memantau 200

  • DevTools browser — buka tab Network, muat ulang halaman, klik permintaan dokumen, lalu baca kolom Status.
  • Command linecurl -I https://example.com/page untuk header satu permintaan, dan curl -IL untuk mengikuti rantai pengalihan.
  • Google Search Console — Pemeriksaan URL melaporkan status crawl dan menyediakan Live Test.
  • Bing Webmaster Tools — alat Pemeriksaan URL adalah cara dari sisi Bing untuk mengonfirmasi apa yang diterima Bingbot. (Bing tidak menerbitkan dokumen khusus “how status codes affect indexing” (terjemahan) “bagaimana kode status memengaruhi pengindeksan” seperti Google; lebih baik menyatakan keterbatasan itu daripada mengarang kebijakan Bing.)
  • Crawler — Screaming Frog dan Ahrefs Site Audit menampilkan kode status di seluruh situs secara massal; Ahrefs SEO Toolbar gratis menampilkan kode untuk halaman yang sedang Anda buka.

Seperti apa respons yang “healthy” (terjemahan) “sehat”? URL kanonis yang penting konsisten mengembalikan 200 dengan konten nyata, sedangkan halaman yang seharusnya hilang atau berpindah mengembalikan 404/410 atau 301, bukan 200 yang menyesatkan.

Keputusan dalam satu baris

Cocokkan kode dengan kenyataan. Diinginkan dalam indeks → 200 dengan konten substantif. Hilang selamanya → 404 atau 410 (lihat 404-not-found). Berpindah → 301. Duplikat URL lain → arahkan tag kanonis ke versi pilihan, alih-alih memaksa kode non-200. 200 adalah lampu hijau untuk halaman yang memang layak ada—tidak lebih, tidak kurang.

Try it live

This is a real endpoint on this site — not a simulation. Hit it from the button, open it in a new tab, or curl -i it from your terminal, and the server answers with the actual status code this article is about.

Open in new tab ↗

Add an expert note

Pin an expert quote

New person? Create their unclaimed profile at /admin/experts/ → Pin a quote first.