%25">
🧰 BirAraçtaTüm Araçlar →

URL Encode Decode

Metni encodeURIComponent/encodeURI ile kodla, kodlanmış string'i çöz. Query string'i parçala veya sıfırdan oluştur, tam URL'yi bileşenlerine ayır — üstüne Base64 encode/decode ve UTM temizleyici hepsi tarayıcında, sunucuya hiçbir şey gitmez.

Kısa cevapURL encode (yüzde kodlama), boşluk, Türkçe harf, emoji ve &/?/# gibi ayrılmış karakterleri bir URL'de bozulmadan taşınabilecek %XX biçimine çevirme işlemidir. encodeURIComponent() tek bir parametre değerini, encodeURI() ise tam bir adresi kodlar; tersi işlem decode ile orijinal metni geri verir.
100% client-side UTF-8 / Türkçe destek Standart: RFC 3986 Güncelleme: 17 Tem 2026
Türkçe karakter, emoji ve özel simgeler desteklenir.
Form kodlama (+ boşluk)application/x-www-form-urlencoded uyumu: %20 yerine +
%XX yüzde-kodlu bir metin veya tam bir kodlanmış URL yapıştırın.
Çoklu (iç içe) decode%2520 gibi çift kodlanmış metinleri tüm katmanlarıyla çözer
Her satır ayrı ayrı işlenir; sonuç aynı satır sırasıyla döner. Onlarca link veya parametreyi tek seferde encode/decode edip toplu kopyalamak için idealdir.
Parametreler otomatik çözülür; bilinen izleme (UTM/gclid/fbclid) parametreleri işaretlenir.
Boş bırakırsan yalnızca ?anahtar=değer query string üretilir.
Protokol, host, port, yol, sorgu ve çapa (hash) bileşenlerine ayrılır.
UTF-8Karakter kodlama standardı
RFC 3986URI yüzde-kodlama standardı
%20Boşluğun percent-kodu
0 ₺Sınırsız ücretsiz kullanım
⚙️ Gizlilik notu: Tüm kodlama/çözme ve ayrıştırma işlemleri tarayıcınızın içinde (client-side JavaScript ile) yapılır; girdiğiniz metin veya URL hiçbir sunucuya gönderilmez, kaydedilmez veya loglanmaz. "Paylaş" butonu yalnızca isterseniz girdinizi bir bağlantı parametresine kodlar — kişisel/gizli verileri paylaşmadan önce bu bağlantıyı kiminle paylaştığınıza dikkat edin.

URL encode / decode nedir, nasıl yapılır?

Percent-encoding (yüzde kodlama), encodeURIComponent ile encodeURI farkı, query string oluşturma ve Türkçe karakter kodlamasının tam açıklaması.

Bir URL yalnızca sınırlı bir karakter kümesini (İngilizce harfler, rakamlar ve birkaç ayrılmamış sembol) doğrudan taşıyabilir. Boşluk, Türkçe harfler (ç, ğ, ı, ö, ş, ü), emoji ve & ? # % + = gibi ayrılmış (reserved) karakterler URL yapısını bozacağından, önce yüzde kodlaması (percent-encoding) ile %XX biçimine çevrilmeleri gerekir. Bu işleme kısaca URL encode, tersine ise URL decode denir.

encodeURIComponent ile encodeURI arasındaki fark nedir?

Kısa cevapencodeURIComponent() bir URL'nin TEK bir parçasını (örn. bir query değeri) kodlar ve & = ? / : # gibi URL yapısını oluşturan karakterleri de kodlar — bu yüzden query parametresi değerlerinde bu fonksiyon kullanılmalıdır. encodeURI() ise TAM bir adresi kodlamak içindir; adresin çalışması için gerekli : / ? # & = karakterlerini olduğu gibi bırakır.
  • encodeURIComponent("a&b=c")a%26b%3Dc (& ve = de kodlanır — bir parametre DEĞERİ için doğru kullanım)
  • encodeURI("https://x.com/a b?c=1&d=2")https://x.com/a%20b?c=1&d=2 (yalnızca boşluk kodlanır, URL yapısı korunur)

Türkçe karakterler ve emoji URL'de nasıl kodlanır?

Kısa cevapTarayıcılar URL'lerde UTF-8 kodlamasını kullanır. Her Türkçe karakter veya emoji önce UTF-8 baytlarına çevrilir, sonra her bayt ayrı ayrı %XX olarak yazılır. Örneğin ş harfi 2 baytlıktır ve %C5%9F olur; 4 baytlık bir emoji ise 4 ayrı %XX grubuna dönüşür. Bu dönüşümü elle hesaplamaya gerek yoktur — encodeURIComponent() otomatik yapar.
Sık kullanılan karakterlerin percent-encoding karşılığı (UTF-8)
KarakterAnlamıKodlanmış hali
(boşluk)Boşluk karakteri%20 (form'da +)
şTürkçe ş%C5%9F
ıTürkçe ı (noktasız i)%C4%B1
ğTürkçe ğ%C4%9F
&Parametre ayıracı%26
=Anahtar-değer ayıracı%3D
?Query başlangıcı%3F
#Fragment/çapa başlangıcı%23
%Yüzde işaretinin kendisi%25
🚀Emoji (4 baytlık UTF-8)%F0%9F%9A%80

Query string nasıl oluşturulur ve parçalanır?

Kısa cevapQuery string, bir URL'de ? işaretinden sonra gelen ve & ile ayrılan anahtar=değer çiftleridir. Yukarıdaki "Query Oluştur" sekmesine anahtar-değer çiftlerini girip değerleri otomatik ve doğru biçimde kodlanmış bir query string üretebilir; "Query Parçala" sekmesine ise mevcut bir URL yapıştırıp tüm parametreleri okunabilir bir tabloya çevirebilirsiniz. Araç ayrıca utm_source, gclid, fbclid gibi bilinen izleme (tracking) parametrelerini otomatik işaretler.

Base64 encode/decode, URL encoding'den nasıl farklıdır?

Kısa cevapBase64, herhangi bir ikili veya metin veriyi 64 karakterlik (A-Z a-z 0-9 + /) güvenli bir alfabeye çevirir; genelde token, API anahtarı veya küçük dosyaları metin olarak taşımak için kullanılır ve URL yapısıyla doğrudan ilgisi yoktur. URL encoding ise özellikle bir URL'nin içindeki özel karakterleri kodlar. Bir Base64 çıktısı + ve / içerdiğinden, bir URL parametresine konacaksa ayrıca encodeURIComponent() ile de kodlanması gerekebilir — aşağıdaki mini araçlar bölümünde ikisini birden deneyebilirsiniz.

İlgili araçlar

URL ve metinle çalışırken sık kullanılan diğer BirAraçta hesaplayıcıları.

Mini araçlar: Base64, Query→JSON, URL Temizleyici

URL encode/decode ile birlikte sık ihtiyaç duyulan üç küçük yardımcı araç — hepsi tarayıcında çalışır.

🔤Base64 Encode/Decode
Metni Base64'e çevir veya Base64'ten metne döndür (UTF-8 / Türkçe uyumlu).
🧩Query String → JSON
Query string'i veya URL'i yapıştır, parametreleri JSON nesnesine çevir.
🧹URL Temizleyici
UTM, gclid, fbclid gibi izleme parametrelerini kaldırıp temiz bağlantı üretir.

Referans tabloları & pratik bilgiler

Alıntılanabilir RFC 3986 karakter sınıfları, encodeURI/encodeURIComponent karşılaştırması ve yaygın izleme parametreleri.

RFC 3986 — ayrılmamış (unreserved) ve ayrılmış (reserved) karakterler
SınıfKarakterler
Ayrılmamış (asla kodlanmaz)A-Z a-z 0-9 - _ . ~
Genel ayırıcılar (gen-delims): / ? # [ ] @
Alt ayırıcılar (sub-delims)! $ & ' ( ) * + , ; =
Diğer her şeyHer zaman %XX olarak kodlanır (boşluk, Türkçe harf, emoji, UTF-8 dışı bayt vb.)

Kaynak: RFC 3986 (Uniform Resource Identifier — Generic Syntax), IETF.

JavaScript kodlama fonksiyonlarının kodlamadan bıraktığı karakterler
FonksiyonKodlamaz (bırakır)
encodeURIComponent()A-Z a-z 0-9 - _ . ! ~ * ' ( )
encodeURI()Yukarıdakine ek olarak ; / ? : @ & = + $ , #
decodeURIComponent()%XX dizilerini çözer, geçersiz dizide hata (URIError) fırlatır

Kural: tek bir parametre DEĞERİ kodlanacaksa encodeURIComponent, tam bir URL kodlanacaksa encodeURI kullanın.

Yaygın izleme (tracking) query parametreleri
ParametreKaynak / anlamı
utm_source, utm_medium, utm_campaignGoogle Analytics kampanya etiketleri
utm_term, utm_contentAnahtar kelime / reklam varyantı etiketi
gclidGoogle Ads tıklama kimliği
fbclidMeta (Facebook/Instagram) tıklama kimliği
msclkidMicrosoft Ads (Bing) tıklama kimliği
mc_cid, mc_eidMailchimp e-posta kampanya kimliği
igshid, ref_src, refInstagram / genel yönlendirme etiketleri

Yukarıdaki "URL Parçala" ve "URL Temizleyici" araçları bu parametreleri otomatik tanır ve işaretler/kaldırır.

URL & kodlama terimleri sözlüğü

URL encode/decode ile ilgili temel kavramların kısa tanımları.

URI / URLURI bir kaynağı tanımlayan genel adres biçimidir; URL (Uniform Resource Locator) bir kaynağın nasıl bulunacağını da belirten en yaygın URI türüdür.
Percent-encodingAyrılmış veya ASCII-dışı karakterleri %XX (hexadecimal bayt) biçiminde temsil etme yöntemi; URL encode ile eş anlamlıdır.
Reserved / unreserved karakterlerRFC 3986'ya göre ayrılmamış karakterler (harf, rakam, - _ . ~) hiçbir zaman kodlanmaz; ayrılmışlar (: / ? # & = vb.) URL yapısını taşır.
Query stringURL'de "?" sonrası gelen, "&" ile ayrılmış anahtar=değer parametreleri.
Fragment / hash (#)URL'nin "#" sonrası kısmı; sunucuya gönderilmez, tarayıcıda sayfa içi konum/durum belirtmek için kullanılır.
encodeURIComponent()JavaScript'te bir URL bileşenini (parametre değeri) kodlayan, yapı karakterlerini de kodlayan fonksiyon.
encodeURI()JavaScript'te tam bir URL'yi kodlayan, URL yapısı için gerekli karakterleri kodlamadan bırakan fonksiyon.
Double / nested encodingZaten kodlanmış bir metnin tekrar kodlanması; "%25" (yüzde işaretinin kodu) görülmesi genelde bunun işaretidir.
Base64İkili veya metin veriyi 64 karakterlik bir alfabeyle temsil eden, URL yapısından bağımsız genel kodlama yöntemi.
UTM parametreleriGoogle Analytics kaynaklı, pazarlama kampanyalarını izlemek için query string'e eklenen utm_source/medium/campaign gibi etiketler.
PunycodeUluslararası (ör. Türkçe) alan adlarını ASCII'ye çeviren ayrı bir kodlama; URL encode'dan farklı, yalnızca hostname için kullanılır.
MIME türü application/x-www-form-urlencodedHTML formlarının varsayılan gönderim biçimi; boşluğu %20 yerine "+" ile kodlar.

Derinlemesine rehberler

En çok merak edilen URL kodlama sorularına ayrıntılı yanıtlar.

Bir URL'yi paylaşırken Türkçe karakterler bozuk görünüyor, ne yapmalıyım?

Türkçe karakterler bir URL'ye kodlanmadan (ham UTF-8 bayt olarak) eklendiğinde bazı uygulamalar, mesajlaşma programları veya eski sistemler bunları yanlış yorumlayabilir ve bozuk (mojibake) görünüme yol açabilir. Çözüm, paylaşmadan önce metni encodeURIComponent() ile kodlamaktır: "İstanbul" gibi bir kelime "%C4%B0stanbul" olarak taşınır ve hedef tarafta doğru şekilde çözülür.

Yukarıdaki "Encode" sekmesine yapıştırıp "Tam URI" modunu seçerseniz, tüm adres yapısı korunurken yalnızca sorunlu karakterler kodlanır; sonucu doğrudan tarayıcı adres çubuğuna veya bir bağlantı olarak paylaşabilirsiniz.

Query string parametrelerini okurken nelere dikkat etmeliyim?

Bir query string'i incelerken önce her & işaretiyle parametrelere, sonra her parametreyi = işaretiyle anahtar ve değere bölün; değerler genelde yüzde-kodlu olduğundan okunabilir hale getirmek için decode edilmeleri gerekir. Ayrıca utm_*, gclid, fbclid gibi parametreler asıl işlevsel veri değil, pazarlama izleme etiketidir — bir bağlantıyı paylaşmadan önce bunları kaldırmak isteyebilirsiniz.

Yukarıdaki "Query Parçala" sekmesi bu ayrıştırmayı otomatik yapar ve izleme parametrelerini turuncu renkle işaretler; "URL Temizleyici" mini aracı ise bunları tek tıkla kaldırır.

API'ye istek atarken hangi kodlamayı kullanmalıyım?

Bir REST API'ye query parametresi gönderirken, değeri (özellikle boşluk, & veya Türkçe karakter içeriyorsa) her zaman encodeURIComponent() ile kodlayın — çünkü bu değer URL'nin yalnızca bir BİLEŞENİDİR. Gövdede (body) JSON gönderiyorsanız ayrıca encode gerekmez, çünkü JSON kendi kaçış (escape) kurallarını kullanır. Yalnızca URL'nin tamamını (query dahil, zaten oluşturulmuş) tek seferde kodlamak isterseniz encodeURI kullanın; aksi halde ? ve & gibi gerekli karakterleri de kodlayarak isteği bozabilirsiniz.

Bu aracı sitene ekle

Aşağıdaki kodu kendi sitene yapıştırarak URL encode/decode aracını ücretsiz gömebilirsin.

<iframe src="https://biraracta.com/url-encode-decode/?mod=encode"
  width="100%" height="720" style="border:0;border-radius:14px"
  title="URL Encode Decode" loading="lazy"></iframe>

Sık sorulan sorular

URL encode nedir?
URL encode (yüzde kodlama), bir URL'de doğrudan kullanılamayan karakterleri (boşluk, Türkçe harfler, & ? # gibi ayrılmış simgeler, emoji) tarayıcıların anlayacağı %XX biçimine çevirme işlemidir. Örneğin boşluk %20, "ş" harfi ise %C5%9F olur. Bu sayede metin, URL yapısını bozmadan güvenle bir adrese veya parametreye eklenebilir.
URL kodlama nasıl yapılır?
Tarayıcıda JavaScript'in encodeURIComponent() veya encodeURI() fonksiyonlarıyla, ya da bu sayfadaki gibi bir online araçla yapılır. Metni "Encode" sekmesine yapıştırıp modu seçip "Kodla"ya basmanız yeterlidir; sonucu kopyalayıp bir URL'ye veya query parametresine ekleyebilirsiniz.
encodeURIComponent nedir?
encodeURIComponent(), bir URL'nin TEK bir parçasını (query değeri, parametre) kodlamak için kullanılan JavaScript fonksiyonudur; & = ? / : gibi URL yapısını oluşturan karakterleri de kodlar. Tam bir adres değil, yalnızca bir DEĞER kodlanacaksa bu fonksiyon doğru seçimdir.
Query string nasıl oluşturulur?
Query string, bir URL'nin "?" işaretinden sonra gelen anahtar=değer çiftleridir ve aralarına & konur (ör. ?renk=kirmizi&beden=42). "Query Oluştur" sekmesine anahtar-değer çiftlerini girip "Oluştur"a basarsanız değerler otomatik ve doğru biçimde kodlanarak eksiksiz bir query string veya tam URL üretilir.
Türkçe karakterler URL'de nasıl kodlanır?
Modern tarayıcılar URL'lerde UTF-8 kullanır; ç, ğ, ı, ö, ş, ü gibi Türkçe karakterlerin her biri 2 baytlık %XX%XX dizisine çevrilir (ör. "ş" → %C5%9F). encodeURIComponent() ve encodeURI() bu dönüşümü otomatik ve doğru yapar.
Base64 encode decode nedir?
Base64, veriyi 64 karakterlik bir alfabeyle (A-Z, a-z, 0-9, +, /) kodlayan, genel bir ikili-veriden-metne dönüşüm yöntemidir; token, resim veya küçük dosya gömme için kullanılır. URL encoding'den farklıdır: URL encoding özellikle bir URL içindeki özel karakterleri kodlar. Aşağıdaki mini araçlar bölümünde ikisini de deneyebilirsiniz.
URL decode nedir, nasıl yapılır?
URL decode, %XX yüzde-kodlu bir karakter dizisini orijinal okunabilir metne geri çevirme işlemidir; encode'un tersidir. "Decode" sekmesine kodlanmış metni yapıştırıp "Çöz"e basmanız yeterlidir; çift kodlanmış (nested) metinler için "çoklu decode" seçeneği tüm katmanları tek seferde çözer.
Neden bazen %2520 gibi çift kodlanmış bir değer görürüm?
%2520, zaten kodlanmış bir %20 (boşluk) değerinin tekrar encode edilmesiyle oluşur; çünkü "%" karakterinin kendisi %25 olarak kodlanır. Bu genelde bir sistemin veriyi iki kez encode etmesinden kaynaklanır. "Decode" sekmesindeki "çoklu decode" seçeneği tüm iç içe katmanları tek seferde orijinal metne çözer.
Birden çok URL'yi tek seferde (toplu) encode/decode edebilir miyim?
Evet. "Toplu" sekmesine her satıra bir metin veya URL gelecek şekilde yapıştırın, işlemi (encodeURIComponent, encodeURI ya da decode) seçip "İşle"ye basın; her satır ayrı ayrı kodlanır/çözülür ve sonuç aynı satır sırasıyla döner. Böylece onlarca linki veya parametreyi tek tek uğraşmadan bir kerede işleyip toplu kopyalayabilirsiniz. Tüm işlem tarayıcınızda yapılır, hiçbir satır sunucuya gönderilmez.

Metodoloji & kaynaklar

URLKodla, bağımsız ve ücretsiz bir URL encode/decode aracıdır. Kodlama ve çözme işlemleri doğrudan tarayıcının yerleşik encodeURIComponent() / encodeURI() / decodeURIComponent() fonksiyonlarıyla (UTF-8 tabanlı, RFC 3986 uyumlu) yapılır; URL parçalama URL() Web API'si ile, Base64 ise btoa()/atob() tabanlı UTF-8 güvenli bir sarmalayıcı ile hesaplanır. Hiçbir hesaplama sunucuya gönderilmez.

Kaynaklar: RFC 3986 (Uniform Resource Identifier — Generic Syntax, IETF) · WHATWG URL Standardı · MDN Web Docs (encodeURIComponent, encodeURI, URL). Son güncelleme: 17 Temmuz 2026. Sonuçlar bilgilendirme ve geliştirme amaçlıdır.

🔗 Bu aracı sitene ekle

Aşağıdaki kodu kopyalayıp kendi web sitene yapıştır. Araç ücretsiz, her zaman güncel ve tamamen senin sayfanda çalışır. Kayıt gerektirmez.

Önizle →
⚡ BirAraçta ile oluşturuldu · biraracta.com