ROT13 and Variants: Complete Guide
Encode text with ROT13, ROT47, and custom rotation ciphers — with browser-based tool and examples.
Published:
Tags: ROT13 encoder online, ROT13 ROT47 cipher, text rotation cipher
ROT13 and Variants: Complete Guide Part of our complete guide to this topic — see the full series. ROT13 is a Caesar cipher with one special property: shift 13 is the midpoint of the 26-letter alphabet, making ROT13 its own inverse. Apply it once to encode, apply it again to decode. --- All the tools discussed here are available for free at theproductguy.in — client-side, no sign-up required. What is ROT13? The 26 letters of the English alphabet pair up when shifted by 13: Applying ROT13 to gives . Applying ROT13 to gives back . Same operation, twice, returns the original. Non-alphabetic characters — digits, spaces, punctuation — are left unchanged. --- How was ROT13 used in computing? ROT13 did not appear in academic cryptography papers. It evolved organically on Usenet newsgroups in the…
Frequently Asked Questions
What is ROT13?
ROT13 is a letter substitution cipher that rotates each letter 13 positions in the alphabet. Because the English alphabet has 26 letters, a shift of 13 is its own inverse — applying ROT13 twice returns the original text. A becomes N, B becomes O, Z becomes M. Digits and non-letter characters are left unchanged.
How is ROT13 used on the internet?
ROT13 became popular on Usenet newsgroups in the 1980s as a way to optionally obscure content — spoilers, punchlines, offensive jokes — so readers could choose whether to decode. Reddit, 4chan, and other forums still use ROT13 for spoiler text. It appears regularly in CTF challenges as a trivial encoding layer.
What is ROT47?
ROT47 extends the rotation concept from the 26 letters to all 94 printable ASCII characters (codes 33–126). Each character is shifted 47 positions forward in that range, wrapping around. Like ROT13, ROT47 is self-inverse — applying it twice returns the original. It rotates letters, digits, and most punctuation characters.
How do I apply ROT13 twice?
Applying ROT13 to any text produces the ROT13-encoded version. Applying ROT13 to that encoded text returns the original — that is the defining property. In Python: import codecs; original = codecs.decode(codecs.decode(text, 'rot_13'), 'rot_13') will always equal text. This makes ROT13 a self-inverse or involutory cipher.
What is spoiler text encoding?
Spoiler text encoding is the informal practice of hiding text so readers must actively choose to view it. On Usenet, ROT13 was the standard: wrapping spoiler content in ROT13 let readers decide whether to decode. Modern platforms use CSS-based spoiler tags (Reddit uses >!spoiler!<) but ROT13 survives in discussions where markup is not available.
All articles · theproductguy.in