🧰 ToolPicoTous les outils →

Encodeur / Décodeur URL

Encodez du texte avec encodeURIComponent/encodeURI, décodez une chaîne encodée en pourcentage, analysez ou construisez une query string, décomposez une URL complète en ses parties — plus l'encodage/décodage Base64 et un nettoyeur de paramètres de tracking. Tout s'exécute dans votre navigateur, rien n'est envoyé à un serveur.

6 modes en un seul outil 100% côté client Norme : RFC 3986 Mis à jour : 19 juil. 2026
Les lettres accentuées, les emoji et les symboles spéciaux sont tous pris en charge.
Encodage de formulaire (+ pour l'espace)Style application/x-www-form-urlencoded : « + » au lieu de %20
Collez une chaîne encodée en pourcentage (%XX) ou en Base64 — le type est détecté automatiquement (modifiable ci-dessous).
Type détecté : encodage pourcentage
Décodage multi-niveaux (imbriqué)Résout les valeurs doublement encodées comme %2520 à travers chaque couche (encodage pourcentage uniquement)
Chaque ligne est traitée indépendamment ; les résultats reviennent dans le même ordre. Idéal pour encoder/décoder des dizaines de liens ou de paramètres à la fois et les copier tous ensemble.
Les paramètres sont automatiquement décodés ; les paramètres de tracking connus (UTM/gclid/fbclid) sont signalés.
Laissez ce champ vide pour ne générer qu'une query string ?cle=valeur.
Décompose une URL en protocole, hôte, port, chemin, query et fragment (hash).
Réponse rapide L'encodage URL (encodage pourcentage) convertit les caractères qui ne peuvent pas apparaître dans une URL — espaces, lettres accentuées, emoji et symboles réservés comme &, ? et # — en un format sûr %XX. encodeURIComponent() encode une seule valeur de paramètre ; encodeURI() encode une adresse entière. decodeURIComponent() inverse l'un ou l'autre.
UTF-8Norme d'encodage de caractères
RFC 3986Norme d'encodage pourcentage des URI
%20Code pourcentage pour une espace
GratuitIllimité, sans inscription
⚙️ Remarque sur la confidentialité : tout l'encodage, le décodage et l'analyse se font directement dans votre navigateur (JavaScript côté client). Le texte ou l'URL que vous saisissez n'est jamais envoyé à un serveur, ni stocké, ni journalisé. Le bouton « Partager » ne fait qu'encoder votre saisie dans un lien si vous choisissez de l'utiliser — réfléchissez à qui vous partagez ce lien avant d'y inclure des informations sensibles.

Qu'est-ce que l'encodage URL, et comment fonctionne-t-il ?

Un guide complet sur l'encodage pourcentage, la différence entre encodeURIComponent et encodeURI, les query strings et Base64.

Une URL ne peut transporter directement qu'un ensemble limité de caractères — lettres, chiffres et quelques symboles non réservés. Les espaces, les lettres accentuées (comme é, ü, ñ), les emoji et les caractères & ? # % + = — les caractères réservés qui structurent une URL — doivent d'abord être convertis au format %XX, un procédé appelé encodage pourcentage ou, plus couramment, encodage URL. L'opération inverse est le décodage URL. L'outil ci-dessus gère les deux sens, ainsi que l'analyse/construction de query string, l'analyse d'URL complète et Base64, instantanément dans votre navigateur.

Quelle est la différence entre encodeURIComponent et encodeURI ?

Réponse rapideencodeURIComponent() encode une SEULE partie d'une URL — par exemple une valeur de requête — et encode aussi les caractères structurels comme & = ? / : #, ce qui en fait le bon choix pour les valeurs de paramètre. encodeURI() sert à encoder une adresse ENTIÈRE ; il laisse intacts les caractères dont une URL a besoin pour fonctionner — : / ? # & =.
  • encodeURIComponent("a&b=c")a%26b%3Dc (& et = sont aussi encodés — correct pour une seule VALEUR de paramètre)
  • encodeURI("https://x.com/a b?c=1&d=2")https://x.com/a%20b?c=1&d=2 (seule l'espace est encodée ; la structure de l'URL est préservée)

Comment les caractères accentués et les emoji sont-ils encodés dans une URL ?

Réponse rapideLes navigateurs utilisent l'encodage UTF-8 pour les URL. Chaque lettre accentuée ou emoji est d'abord convertie en octets UTF-8, puis chaque octet est écrit sous sa propre valeur %XX. Par exemple, é fait 2 octets et devient %C3%A9 ; un emoji de 4 octets devient quatre groupes %XX distincts. Vous n'avez jamais besoin de calculer cela à la main — encodeURIComponent() le fait automatiquement.
Caractères courants et leur forme encodée en pourcentage (UTF-8)
CaractèreSignificationForme encodée
(espace)Caractère espace%20 (ou + dans les formulaires)
éLettre accentuée, ex. café%C3%A9
üLettre accentuée, ex. Zürich%C3%BC
&Séparateur de paramètres%26
=Séparateur clé-valeur%3D
?Début de la query string%3F
#Début du fragment/ancre%23
%Le signe pourcentage lui-même%25
🚀Emoji (UTF-8 sur 4 octets)%F0%9F%9A%80

Comment construire et analyser une query string ?

Réponse rapideUne query string est l'ensemble des paires clé=valeur qui suivent le ? dans une URL, séparées par &. L'onglet « Construire Query » ci-dessus permet de saisir des paires clé-valeur et génère une query string correctement encodée en pourcentage ; l'onglet « Analyser Query » prend une URL existante et transforme chaque paramètre en un tableau lisible. L'outil signale aussi automatiquement les paramètres de tracking bien connus comme utm_source, gclid et fbclid.

En quoi l'encodage Base64 diffère-t-il de l'encodage URL ?

Réponse rapideBase64 convertit toute donnée binaire ou textuelle en un alphabet de 64 caractères (A-Z a-z 0-9 + /) ; il est couramment utilisé pour des jetons, des clés d'API ou l'intégration de petits fichiers sous forme de texte, et n'a rien à voir avec la structure d'une URL. L'encodage URL rend spécifiquement sûrs les caractères spéciaux à l'intérieur d'une URL. Comme la sortie Base64 contient des caractères + et /, elle a parfois besoin d'un passage supplémentaire par encodeURIComponent() avant de pouvoir entrer dans un paramètre d'URL — essayez les deux dans la section des mini-outils ci-dessous.

Exemples populaires d'encodage & décodage d'URL

Conversions courantes que vous pouvez ouvrir directement — chacune préremplit l'outil ci-dessus avec le bon mode et la bonne saisie.

Mini-outils : Base64, Query → JSON, Nettoyeur d'URL

Trois petits outils souvent nécessaires en complément de l'encodage/décodage URL — tous s'exécutent dans votre navigateur.

🔤Encodeur/Décodeur Base64
Convertissez du texte en Base64, ou du Base64 en texte (compatible Unicode).
🧩Query String → JSON
Collez une query string ou une URL, convertissez ses paramètres en objet JSON.
🧹Nettoyeur d'URL
Retirez les paramètres UTM, gclid, fbclid et autres paramètres de tracking pour obtenir un lien propre.

Tableaux de référence & faits pratiques

Classes de caractères RFC 3986 citables, une comparaison encodeURI vs encodeURIComponent, et les paramètres de tracking courants.

RFC 3986 — caractères non réservés et réservés
ClasseCaractères
Non réservés (jamais encodés)A-Z a-z 0-9 - _ . ~
Délimiteurs généraux (gen-delims): / ? # [ ] @
Sous-délimiteurs (sub-delims)! $ & ' ( ) * + , ; =
Tout le resteToujours encodé en pourcentage (espaces, lettres accentuées, emoji, octets non-ASCII, etc.)

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

Caractères que chaque fonction d'encodage JavaScript laisse intacts
FonctionLaisse non encodé
encodeURIComponent()A-Z a-z 0-9 - _ . ! ~ * ' ( )
encodeURI()Ce qui précède, plus ; / ? : @ & = + $ , #
decodeURIComponent()Décode les séquences %XX ; lève une URIError sur une séquence invalide

Règle pratique : utilisez encodeURIComponent pour une seule VALEUR de paramètre, et encodeURI pour une URL complète.

Paramètres de requête de tracking courants
ParamètreSource / signification
utm_source, utm_medium, utm_campaignTags de campagne Google Analytics
utm_term, utm_contentTags de mot-clé / variante d'annonce
gclidIdentifiant de clic Google Ads
fbclidIdentifiant de clic Meta (Facebook/Instagram)
msclkidIdentifiant de clic Microsoft Ads (Bing)
mc_cid, mc_eidIdentifiant de campagne email Mailchimp
igshid, ref_src, refTags de référence Instagram / génériques

L'onglet « Analyser URL » et le mini-outil « Nettoyeur d'URL » ci-dessus reconnaissent et signalent/suppriment automatiquement ces paramètres.

Ajouter cet outil à votre site (code d'intégration)

Intégrez gratuitement l'outil d'encodage/décodage URL sur votre propre site. Copiez le code ci-dessous dans votre HTML — l'outil s'affiche dans une vue simplifiée et renvoie vers cette page comme source.

L'outil intégré a une mise en page fixe ; vous pouvez ajuster la valeur de height selon votre site. Pas de publicité ni de données personnelles, fonctionne entièrement côté client.

Glossaire des termes d'URL & d'encodage

Définitions courtes des concepts essentiels de l'encodage et du décodage d'URL.

URI / URLUne URI est le format général pour identifier une ressource ; une URL (Uniform Resource Locator) est le type d'URI le plus courant, celui qui indique aussi comment trouver la ressource.
Encodage pourcentageLa méthode de représentation des caractères réservés ou non-ASCII sous forme de séquences %XX (octet hexadécimal) ; synonyme d'encodage URL.
Caractères réservés / non réservésSelon la RFC 3986, les caractères non réservés (lettres, chiffres, - _ . ~) ne sont jamais encodés ; les caractères réservés (: / ? # & = etc.) portent la structure de l'URL.
Query stringLes paramètres clé=valeur qui suivent le « ? » dans une URL, séparés par « & ».
Fragment / hash (#)La partie d'une URL après « # » ; elle n'est jamais envoyée au serveur et sert à la navigation dans la page ou à l'état côté client.
encodeURIComponent()Une fonction JavaScript qui encode un seul composant d'URL (une valeur de paramètre), en encodant aussi les caractères structurels.
encodeURI()Une fonction JavaScript qui encode une URL entière tout en laissant intacts les caractères dont la structure de l'URL a besoin.
Encodage double / imbriquéEncoder une chaîne déjà encodée une seconde fois ; voir « %25 » (le code du signe pourcentage littéral) en est généralement le signe.
Base64Un encodage à usage général qui représente des données binaires ou textuelles avec un alphabet de 64 caractères, indépendant de la structure de l'URL.
Paramètres UTMDes tags dérivés de Google Analytics — utm_source, utm_medium, utm_campaign, etc. — ajoutés à une query string pour suivre des campagnes marketing.
PunycodeUn encodage distinct qui convertit les noms de domaine internationalisés en ASCII ; différent de l'encodage URL, et utilisé uniquement pour les noms d'hôte.
application/x-www-form-urlencodedLe format de soumission par défaut des formulaires HTML ; il encode une espace en « + » plutôt qu'en %20.

Guides approfondis

Réponses détaillées aux questions les plus fréquentes sur l'encodage d'URL.

Mes caractères accentués apparaissent déformés quand je partage une URL — que faire ?

Lorsque des caractères accentués sont ajoutés à une URL non encodés (en octets UTF-8 bruts), certaines applications, plateformes de messagerie ou systèmes anciens peuvent les mal interpréter, produisant du texte déformé (mojibake). La solution consiste à encoder le texte avec encodeURIComponent() avant de le partager : un mot comme « café » devient « caf%C3%A9 » et est correctement décodé à la réception.

Collez votre texte dans l'onglet « Encoder » ci-dessus et choisissez le mode « URI complète » pour conserver intacte la structure de l'adresse tout en n'encodant que les caractères problématiques ; utilisez ensuite le résultat directement dans la barre d'adresse de votre navigateur ou partagez-le comme lien.

À quoi faire attention en lisant les paramètres d'une query string ?

Pour examiner une query string, séparez-la d'abord en paramètres à chaque &, puis séparez chaque paramètre en clé et valeur au niveau du = ; les valeurs sont généralement encodées en pourcentage, il faut donc les décoder pour les rendre lisibles. Gardez aussi à l'esprit que des paramètres comme utm_*, gclid et fbclid ne sont pas des données fonctionnelles — ce sont des tags de tracking marketing, et vous voudrez peut-être les retirer avant de partager un lien.

L'onglet « Analyser Query » ci-dessus effectue automatiquement cette analyse et met en évidence les paramètres de tracking en ambre ; le mini-outil « Nettoyeur d'URL » les supprime en un clic.

Quel encodage utiliser lors d'un appel à une API ?

Lorsque vous envoyez un paramètre de requête à une API REST, encodez toujours la valeur avec encodeURIComponent() — surtout si elle contient des espaces, « & » ou des caractères accentués — car cette valeur n'est qu'un COMPOSANT de l'URL. Si vous envoyez du JSON dans le corps de la requête, aucun encodage supplémentaire n'est nécessaire, car JSON a ses propres règles d'échappement. N'utilisez encodeURI que si vous encodez en une seule passe une URL entière déjà construite ; sinon, vous risquez d'encoder des caractères nécessaires comme « ? » et « & » et de casser la requête.

Questions fréquentes

Qu'est-ce que l'encodage URL ?
L'encodage URL (encodage pourcentage) convertit les caractères qui ne peuvent pas être utilisés directement dans une URL — espaces, lettres accentuées, symboles réservés comme & ? #, et emoji — au format %XX compris par les navigateurs. Par exemple, une espace devient %20, et « é » devient %C3%A9. Cela permet d'ajouter du texte en toute sécurité à une adresse ou un paramètre sans casser la structure de l'URL.
Comment encoder un texte pour une URL ?
Dans un navigateur, utilisez les fonctions JavaScript encodeURIComponent() ou encodeURI(), ou un outil en ligne comme celui-ci. Collez votre texte dans l'onglet « Encoder », choisissez un mode et cliquez sur Encoder ; copiez ensuite le résultat et ajoutez-le à une URL ou un paramètre de requête.
Qu'est-ce qu'encodeURIComponent ?
encodeURIComponent() est une fonction JavaScript utilisée pour encoder une SEULE partie d'une URL (une valeur de requête, un paramètre) ; elle encode aussi les caractères structurels comme & = ? / :. Si vous encodez une VALEUR plutôt qu'une adresse complète, c'est la fonction à utiliser.
Comment construire une query string ?
Une query string est l'ensemble des paires clé=valeur qui suivent le « ? » dans une URL, jointes par & (par ex. ?couleur=rouge&taille=42). Saisissez vos paires clé-valeur dans l'onglet « Construire Query » et cliquez sur Construire ; les valeurs sont automatiquement et correctement encodées dans une query string complète ou une URL complète.
Comment les caractères accentués sont-ils encodés dans une URL ?
Les navigateurs modernes utilisent l'UTF-8 dans les URL ; chaque caractère accentué est converti en une séquence %XX%XX de 2 octets (par ex. « é » → %C3%A9). encodeURIComponent() et encodeURI() effectuent automatiquement et correctement cette conversion.
Qu'est-ce que l'encodage/décodage Base64 ?
Base64 est un encodage binaire-texte général qui représente les données avec un alphabet de 64 caractères (A-Z, a-z, 0-9, +, /) ; il est utilisé pour des jetons, des images ou l'intégration de petits fichiers. Il est différent de l'encodage URL, qui encode spécifiquement les caractères spéciaux à l'intérieur d'une URL. Essayez les deux dans la section des mini-outils ci-dessus.
Qu'est-ce que le décodage URL, et comment le fait-on ?
Le décodage URL convertit une chaîne encodée en pourcentage (%XX) en son texte d'origine, lisible ; c'est l'inverse de l'encodage. Collez le texte encodé dans l'onglet « Décoder » et cliquez sur Décoder ; pour un texte encodé plus d'une fois (imbriqué), l'option « décodage multi-niveaux » résout chaque couche en une seule étape.
Pourquoi vois-je parfois une valeur doublement encodée comme %2520 ?
%2520 résulte de l'encodage d'un %20 déjà encodé (une espace) une seconde fois, car « % » lui-même est encodé en %25. C'est généralement causé par un système qui encode par erreur les mêmes données deux fois. L'option « décodage multi-niveaux » dans l'onglet « Décoder » résout chaque couche imbriquée jusqu'au texte d'origine en une seule passe.
Puis-je encoder ou décoder plusieurs URL à la fois (en masse) ?
Oui. Collez un texte ou une URL par ligne dans l'onglet « Masse », choisissez l'opération (encodeURIComponent, encodeURI, ou decode), et cliquez sur Exécuter ; chaque ligne est traitée indépendamment et les résultats reviennent dans le même ordre. Vous pouvez ainsi traiter des dizaines de liens ou de paramètres à la fois plutôt qu'un par un. Tout s'exécute dans votre navigateur — aucune ligne n'est jamais envoyée à un serveur.

Méthodologie & sources

L'outil d'encodage / décodage URL de ToolPico est un outil gratuit et indépendant. L'encodage et le décodage sont effectués directement avec les fonctions natives du navigateur encodeURIComponent() / encodeURI() / decodeURIComponent() (basées sur UTF-8, conformes à la RFC 3986) ; l'analyse d'URL utilise l'API Web URL(), et la conversion Base64 utilise un wrapper compatible UTF-8 autour de btoa()/atob(). Aucun calcul n'est jamais envoyé à un serveur.

Sources : RFC 3986 (Uniform Resource Identifier — Generic Syntax, IETF) · WHATWG URL Standard · MDN Web Docs (encodeURIComponent, encodeURI, URL). Dernière mise à jour : 19 juillet 2026. Les résultats sont fournis à titre informatif uniquement.

🔗 Ajouter cet outil à votre site

Copiez le code ci-dessous sur votre propre site. L'outil est gratuit, toujours à jour, et fonctionne entièrement sur votre page. Aucune inscription requise.

Aperçu →
⚡ Créé avec ToolPico · toolpico.com