Free exact browser converter
ROT13
Apply ROT13 to encode or decode A-Z letters. Keep case, punctuation, digits and non-Latin text. Apply it twice to restore the original.
Interactive tool
ROT13
Ready
Choose a clear output representation.
Detailed conversion guide
How ROT13 Works
ROT13 moves each Latin letter thirteen places around a 26-letter alphabet. Since thirteen is half of twenty-six, the same operation both encodes and decodes.
Uppercase stays uppercase and lowercase stays lowercase. Numbers, punctuation, emoji and non-Latin scripts pass through unchanged.
| Input | Output | Meaning |
|---|---|---|
Hello, World! | Uryyb, Jbeyq! | Default example |
你好 123 | 你好 123 | Boundary example |
JavaScript Example
Runnable example for the default sample. The tool also validates its full input contract.
const rotated=input.replace(/[a-zA-Z]/g,c=>String.fromCharCode(
c.charCodeAt(0)+(c.toLowerCase()<="m"?13:-13)));Formats, Boundaries and Limitations
ROT13 is a reversible substitution used for puzzles and spoiler text. It is not encryption for passwords, private messages or other sensitive data.
This tool does not guess arbitrary Caesar shifts, transliterate accented letters or alter Unicode lookalike characters.
Related converters
More Text and Encoding Tools
Choose the tool that matches your text or byte workflow.