ROT13 Encoder / Decoder — Encode & Decode Text Online
Apply ROT13 to any text online — a symmetric letter-rotation cipher (rot13(rot13(x)) == x). Also supports ROT-N with custom shift, and ROT47 for full ASCII coverage. Runs 100% locally.
Last updated:
Not secure. ROT ciphers are obfuscation, not encryption. Anyone can decode them instantly. Use them for spoilers, puzzles, and demos only — never for real secrets.
Apply ROT13 to any text to encode or decode — the operation is symmetric so the same button does both. Rotates A↔N, B↔O, …, M↔Z; digits, punctuation, emoji, and non-Latin characters are untouched.
What is ROT13?
ROT13 is a Caesar cipher with a shift of 13 — an obfuscation, not encryption. Because the Latin alphabet has exactly 26 letters and 26 = 2 × 13, rotating a letter by 13 and then again by 13 returns the original. That elegant symmetry made ROT13 the standard way to hide spoilers, puzzle answers, and offensive punchlines on Usenet in the '80s and '90s; it's still used on forums, CTFs, and puzzle sites today. Two related ciphers ship with this tool: ROT-N with any shift value (1–25), and ROT47 which rotates all 94 printable ASCII characters (33–126), so digits and punctuation are scrambled too — useful when 'change every character' is the goal.
How to encode / decode ROT13 online
- 1Paste text into the input pane.
- 2The output pane updates instantly with ROT13-transformed text.
- 3Because ROT13 is self-inverse, the same tool decodes ROT13-encoded input — just paste it back.
- 4To change the shift or use ROT47, switch to the corresponding mode.
Use Cases
Hide spoilers and puzzle answers
The classic Usenet convention — a reader who wants to see the answer runs ROT13 to reveal it, but casual browsing doesn't accidentally spoil.
CTF and cryptography exercises
Almost every 'intro to crypto' challenge starts with a Caesar cipher. Use this tool to check by-hand solutions.
Simple obfuscation for demos
Give a talk that requires 'a barely-encrypted message' as a prop — ROT13 reads visually as gibberish but decodes instantly.
Key Concepts
- Caesar cipher
- Any substitution cipher that shifts each letter by a fixed number of positions. Named after Julius Caesar, who used shift-3 for military messages.
- Involution
- An operation that is its own inverse: applying it twice returns the original. ROT13 and ROT47 are involutions on their respective character sets.
Tips & Best Practices
- ▸ROT13 provides zero security. Never use it for anything that matters — a determined 12-year-old can crack it in under a second.
- ▸ROT13 is idempotent-in-pairs: `rot13(rot13(x)) === x`. That's why the same operation encrypts and decrypts.
- ▸ROT47 covers more characters (all printable ASCII) but breaks visually when the input contains newlines — those pass through untouched.
- ▸For real 'obfuscation with some effort', pair ROT13 with base64 encoding: base64(rot13(x)). Still not secure, but harder to eyeball.
Frequently Asked Questions
What is ROT13?
ROT13 is a Caesar cipher that rotates each Latin letter by 13 positions (A↔N, B↔O, …, M↔Z). Because 26 = 2 × 13, applying ROT13 twice returns the original — that's why the same button both encodes and decodes.
Is ROT13 secure?
No. ROT13 is an obfuscation, not encryption. It's used on Usenet and puzzle sites to hide spoilers and answer keys — anyone determined can decode it in seconds. Never use it for real secrets.
What's the difference between ROT13 and ROT47?
ROT13 only rotates the 26 Latin letters. ROT47 rotates all 94 printable ASCII characters (33–126), so digits and punctuation are also scrambled. Both are self-inverse.
Does the tool preserve numbers, punctuation, and non-Latin characters?
Yes for classic ROT13 — anything that isn't A-Z or a-z passes through untouched, including digits, spaces, punctuation, emoji, CJK, and accented Latin characters (é, ñ, etc.).
Is my text uploaded anywhere?
No. ROT13 runs entirely in your browser.
Related Tools
Regex Tester
Test regular expressions online. Live match highlighting, capture groups, and support for JavaScript flags (g, i, m, s, u, y).
Regex Replace
Find and replace text with a regular expression online. Supports every JavaScript flag (g, i, m, s, u, y), all backreferences ($1..$9, $&, $`, $', $<name>), and escape sequences (\n, \t) in the replacement. Live match-by-match preview and diff. 100% local.
Text to Speech
Convert text to spoken audio using your browser's built-in Speech Synthesis API. Pick from all voices installed on your OS, adjust rate, pitch, and volume. No account, no download, no upload — 100% local.
XML Formatter
Format, beautify, and validate XML documents online. Handles namespaces, CDATA sections, and mixed content.
SQL Formatter
Format and beautify SQL queries. Supports SELECT, JOIN, subqueries, CTEs, and multiple SQL dialects.
Case Converter
Convert text between camelCase, PascalCase, snake_case, kebab-case, CONSTANT_CASE, Title Case, and more.