Developer HTML encoder dan decoder
Ubah karakter khusus menjadi entitas HTML dan sebaliknya, agar cuplikan kode dan teks pengguna tampil apa adanya tanpa merusak halaman.
Ready. Runs locally on your device.

File Anda tetap berada di perangkat Anda. Alat ini bekerja langsung di browser Anda, menggunakan perangkat Anda untuk memproses file Anda. Tidak ada yang dikirim ke server kami, dan kami tidak pernah menerima, menyimpan, atau melihat file maupun angka Anda.
Bagikan hasil
Kutip
Kutip halaman ini
Reembun. (2026, 31 Juli). HTML encoder dan decoder. https://reembun.com/id/html-encoder
Cara menggunakannya
Pilih arahnya
Encode mengubah karakter menjadi entitas HTML, decode mengembalikan entitas menjadi karakter aslinya.
Tempel teks atau markupnya
Pengkodean inilah yang membuat sebuah tag tampil sebagai teks alih alih dijalankan, dan itu juga yang mencegah masukan pengguna menjadi celah injeksi.
Tentukan seberapa jauh
Also escape non-ASCII mengubah huruf beraksen dan simbol menjadi entitas numerik, berguna untuk sistem yang belum tentu menjaga UTF-8.
Salin keluarannya
Hasilnya siap ditempel ke template atau kolom CMS.
Lima karakter inti
| Karakter | Entitas bernama | Entitas numerik |
|---|---|---|
| < | < | < |
| > | > | > |
| & | & | & |
| ” | " | " |
| ’ | ' | ' |
Ampersand harus dikodekan lebih dulu daripada yang lain. Bila tidak, entitas yang baru dibuat akan ikut terkodekan lagi dan menghasilkan teks seperti &lt; yang salah.
Contoh
Cuplikan kode yang ingin ditampilkan apa adanya:
<a href="/daftar">Daftar sekarang</a>
Yang harus tertulis di dalam berkas HTML:
<a href="/daftar">Daftar sekarang</a>
Tanpa pengodean, browser akan membuat tautan sungguhan, bukan menampilkan kodenya.
Konteks menentukan cara pengodean
Ini bagian yang paling sering salah dipahami. Pengodean entitas HTML hanya benar untuk sebagian konteks:
| Tempat teks berada | Yang dibutuhkan |
|---|---|
| Isi elemen | Entitas HTML |
| Nilai atribut | Entitas HTML, atribut selalu dikutip |
| Di dalam script | Pengodean JavaScript, bukan entitas |
| Di dalam style | Pengodean CSS |
| Nilai atribut href atau src | Pengodean URL, ditambah pemeriksaan skema |
Menempatkan teks dari pengguna langsung ke dalam blok script dengan pengodean entitas HTML tidak aman, karena penafsir JavaScript tidak membaca entitas.
Pencegahan XSS secara umum
Prinsip yang berlaku:
- Kodekan saat menampilkan, bukan saat menyimpan. Data yang disimpan sudah terkodekan sulit dipakai ulang di konteks lain, misalnya di email atau ekspor CSV.
- Pakai fungsi bawaan kerangka kerja Anda. Hampir semua kerangka kerja modern mengodekan otomatis, dan masalah muncul justru saat pengodean itu sengaja dilewati.
- Jangan susun HTML dengan penggabungan teks. Gunakan pembuatan elemen atau templat yang aman.
- Terapkan Content Security Policy. Ini lapisan terakhir yang membatasi kerusakan bila lapisan sebelumnya jebol.
Entitas yang sering dipakai
| Karakter | Entitas |
|---|---|
| spasi tak putus | |
| hak cipta | © |
| merek dagang | ™ |
| lebih kecil sama dengan | ≤ |
| lebih besar sama dengan | ≥ |
| panah kanan | → |
Selain kelima karakter inti, sisanya bersifat kenyamanan. Dengan halaman berencoding UTF-8, Anda bisa langsung menuliskan karakternya.
Privasi
Teks dan kode yang Anda tempel diproses di dalam browser Anda. Tidak ada yang dikirim ke server kami.
Pertanyaan umum
Karakter apa saja yang wajib dikodekan di HTML?
Lima karakter inti, yaitu tanda kurang dari, tanda lebih dari, ampersand, kutip ganda, dan kutip tunggal. Ketiga yang pertama wajib di dalam isi halaman, sedangkan dua tanda kutip wajib bila teksnya berada di dalam nilai atribut.
Apakah encoding HTML mencegah XSS?
Ini bagian penting dari pencegahan, tetapi konteksnya menentukan. Pengodean entitas cukup untuk teks di dalam isi elemen dan nilai atribut. Untuk teks yang masuk ke dalam JavaScript, CSS, atau atribut alamat, dibutuhkan pengodean yang berbeda. Aturannya adalah kodekan pada saat menampilkan, sesuai konteks tempat teks itu akan berada.
Apa bedanya entitas bernama dan entitas numerik?
Entitas bernama seperti & lebih mudah dibaca manusia. Entitas numerik seperti & bekerja untuk karakter apa pun tanpa perlu tabel nama. Untuk lima karakter inti, entitas bernama lebih lazim dan lebih jelas dibaca.
Apakah huruf beraksen dan emoji perlu dikodekan?
Tidak, selama halaman Anda memakai UTF-8, yang seharusnya memang begitu. Menuliskan huruf beraksen sebagai entitas hanya memperbesar berkas dan menyulitkan penyuntingan. Kodekan hanya karakter yang punya arti khusus di dalam sintaks HTML.
Kenapa kode saya malah tampil sebagai elemen sungguhan?
Karena tanda kurung sudutnya belum dikodekan. Untuk menampilkan cuplikan HTML sebagai teks, tanda kurang dari harus menjadi < dan tanda lebih dari menjadi >. Tanpa itu, browser menafsirkannya sebagai elemen dan menjalankannya.
Terakhir ditinjau
