La codifica URL funziona sostituendo qualsiasi carattere non sicuro o riservato in un URL con un simbolo di percentuale seguito da due cifre esadecimali che rappresentano il valore in byte di quel carattere, uno schema formalmente definito nella RFC 3986 dall'IETF.
Uno spazio diventa %20, una e commerciale (&) diventa %26 e una barra (/) diventa %2F. I caratteri non ASCII vengono prima convertiti nella loro sequenza di byte UTF-8, poi ogni byte viene codificato in percentuale, quindi la lettera 'é' diventa %C3%A9.
Secondo i MDN Web Docs, i browser applicano questa operazione automaticamente tramite funzioni come encodeURIComponent. Solo i caratteri non riservati (A-Z, a-z, 0-9, trattino, trattino basso, punto, tilde) rimangono inalterati.