Making an encoded URL readable again
Encoded URLs turn up constantly in places you need to read them: analytics reports, referrer headers, OAuth redirect parameters, server logs, error messages. A redirect URI nested inside another URL's query string gets encoded, and if it contains its own query string that gets encoded again, producing a long unreadable run of `%3A%2F%2F` and `%3D`.
Decoding reverses the transformation - each `%XX` triplet becomes the byte it names, and consecutive triplets forming a UTF-8 sequence become the character they encode. What you get back is the original value, which is usually immediately obvious once readable.
Nested URLs are the common case worth expecting. An OAuth `redirect_uri` parameter holds a whole URL, and its own parameters were encoded before being placed there. That means one decode reveals a URL that itself still contains encoded parts, and you decode again to read those. Each layer of nesting is one more pass.