Developer URL encoder dan decoder
Encode dan decode alamat web serta parameter kueri, dengan pilihan mode komponen dan mode alamat penuh.
Use this for a single query value. Reserved characters are escaped.
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). URL encoder dan decoder. https://reembun.com/id/url-encoder
Cara menggunakannya
Pilih arahnya
Encode untuk membuat teks aman dipakai di URL, decode untuk mengembalikan kode persen menjadi karakter biasa.
Pilih modenya
Component mode ikut mengubah karakter yang punya arti khusus dalam URL, seperti ampersand, tanda tanya, dan garis miring. Pakai untuk satu nilai parameter, matikan untuk URL utuh.
Salin hasilnya
Konversinya berjalan sambil Anda mengetik di browser Anda, jadi URL yang memuat token tetap tinggal di tab ini.
Cara pengodean persen bekerja
Setiap karakter yang tidak aman diubah menjadi tanda persen diikuti nilai byte dalam heksadesimal.
| Karakter | Hasil |
|---|---|
| spasi | %20 |
| ! | %21 |
| # | %23 |
| $ | %24 |
| & | %26 |
| + | %2B |
| / | %2F |
| : | %3A |
| = | %3D |
| ? | %3F |
| @ | %40 |
Karakter yang aman dan tidak pernah dikodekan adalah huruf A sampai Z, a sampai z, angka 0 sampai 9, serta tanda hubung, titik, garis bawah, dan tilde.
Dua mode dan kapan memakainya
Mode alamat penuh mempertahankan struktur alamat. Gunakan bila Anda mengodekan alamat yang sudah lengkap dan hanya ingin membereskan spasi serta karakter non Latin di dalamnya.
https://contoh.id/cari?q=nasi goreng
→ https://contoh.id/cari?q=nasi%20goreng
Mode komponen mengodekan semuanya. Gunakan untuk nilai satu parameter, karena nilai itu bisa saja mengandung ampersand atau tanda sama dengan yang akan merusak struktur kuerinya.
kategori=makanan&minuman
→ kategori%3Dmakanan%26minuman
Salah memilih mode di sinilah yang paling sering menyebabkan parameter terpotong di tengah jalan.
Contoh kasus yang sering menjebak
Sebuah tautan berbagi yang membawa alamat lain sebagai nilai:
Salah : https://contoh.id/bagikan?url=https://situs.id/a?b=1
Benar : https://contoh.id/bagikan?url=https%3A%2F%2Fsitus.id%2Fa%3Fb%3D1
Pada versi salah, server membaca b=1 sebagai parameter milik contoh.id, bukan bagian dari nilai url. Seluruh alamat yang dibawa menjadi terpotong.
Pengodean berlapis
Bila Anda melihat pola berikut, ada satu lapis pengodean berlebih:
| Terlihat | Arti sebenarnya |
|---|---|
| %2520 | Spasi yang dikodekan dua kali |
| %2526 | Ampersand yang dikodekan dua kali |
| %253A | Titik dua yang dikodekan dua kali |
Buka satu lapis dengan mode decode, periksa hasilnya, lalu ulangi bila masih terlihat pola serupa.
Untuk parameter kampanye
Nilai UTM yang mengandung spasi atau tanda ampersand harus dikodekan agar tidak memecah kuerinya. Generator UTM sudah melakukannya otomatis, tetapi bila Anda menyusun tautan secara manual, kodekan setiap nilai secara terpisah dengan mode komponen.
Privasi
Alamat dan parameter yang Anda tempel sering memuat token dan pengenal sesi. Semuanya diproses di dalam browser Anda dan tidak pernah dikirim ke server kami.
Pertanyaan umum
Apa bedanya encodeURI dan encodeURIComponent?
encodeURI dipakai untuk alamat lengkap dan membiarkan karakter struktural seperti garis miring, tanda tanya, dan ampersand tetap utuh. encodeURIComponent dipakai untuk satu potongan nilai dan mengodekan hampir semuanya, termasuk garis miring dan ampersand. Untuk nilai parameter kueri, hampir selalu yang kedua yang benar.
Kenapa spasi kadang menjadi %20 dan kadang menjadi tanda plus?
Karena ada dua konvensi. Pengodean persen standar mengubah spasi menjadi %20. Formulir HTML yang dikirim dengan tipe application/x-www-form-urlencoded mengubahnya menjadi tanda plus. Keduanya sah di tempatnya masing masing, tetapi tertukar akan menghasilkan nilai yang salah baca.
Karakter apa saja yang perlu dikodekan?
Semua karakter di luar huruf, angka, tanda hubung, titik, garis bawah, dan tilde. Karakter yang memiliki arti struktural pada alamat, yaitu ampersand, tanda tanya, tanda pagar, tanda sama dengan, garis miring, titik dua, dan persen, wajib dikodekan bila dipakai sebagai bagian dari nilai.
Bagaimana huruf Indonesia dan emoji ditangani?
Teks dikodekan ke UTF-8 lebih dulu, lalu setiap byte diubah menjadi persen diikuti dua digit heksadesimal. Karena itu satu emoji bisa menjadi empat kelompok persen. Ini perilaku yang benar dan didukung semua browser modern.
Kenapa alamat saya rusak setelah dikodekan dua kali?
Karena tanda persen itu sendiri ikut dikodekan menjadi %25. Alamat yang sudah dikodekan lalu dikodekan lagi akan berisi %2520 sebagai ganti spasi. Bila melihat pola itu, artinya ada pengodean berlapis yang perlu dibuka satu tingkat.
Terakhir ditinjau
