Questions
Asked often, answered plainly.
( 02 )
What's the difference between the three encoding modes?
Component mode mirrors encodeURIComponent: everything except A–Z, a–z, 0–9 and - _ . ! ~ * ' ( ) is escaped, so & = ? # / all become safe inside a single query value — use it for parameter values. Full-URI mode mirrors encodeURI: the URL's own structure characters (: / ? # [ ] @ & = +) survive while spaces and non-ASCII characters are escaped — use it for whole addresses. Form mode follows the W3C form-encoding rules: spaces become + and almost everything else is percent-escaped — use it for POST bodies and query strings built the classic way.
Why does my Persian text or emoji become so many %XX groups?
Because percent-encoding works at the byte level, and UTF-8 uses two to four bytes for every non-ASCII character. س becomes two groups (%D8%B3), the Persian word ستاره becomes ten, and the telescope emoji becomes four (%F0%9F%94%AD). The decoder rejoins those byte runs back into single characters, so the round trip is completely lossless — nothing is approximated, nothing is dropped.
Is a + a space or a plus sign?
In query strings written with form encoding, + means space — that's the convention the decoder follows while the ⊞ plus → space toggle is on. If your data contains literal plus signs, turn the toggle off before decoding. And when encoding, use component mode for values: it escapes a real + to %2B, so it can never be mistaken for a space on the way back.
What happens with malformed sequences like %ZZ?
The decoder never throws. A % that isn't followed by two hexadecimal digits is passed through exactly as written and counted in the Left as-is stat, so you can see at a glance how much of the input didn't decode. Likewise, byte runs that don't form valid UTF-8 fall back to single-byte decoding instead of failing, and the verdict flips live as you fix the input.
Is my data saved anywhere?
No. IrisTool has no backend and no database. Encoding happens inside your browser tab and the data disappears the moment you close or refresh the page. There is nothing to leak, because nothing is ever collected.