Caesar Cipher Decoder
Encode or decode text with a Caesar shift cipher, or brute-force every possible shift at once, instantly inside your browser.
What is a Caesar cipher?
A Caesar cipher is one of the oldest known encryption techniques: every letter in the message is shifted a fixed number of positions through the alphabet — for example, a shift of 3 turns "A" into "D". It's named after Julius Caesar, who is said to have used it for military messages. It offers no real security by modern standards since there are only 25 possible shifts, but it's a classic puzzle and teaching tool.
This tool encodes or decodes text with a chosen shift, and also brute-forces every one of the 25 possible shifts at once so you can spot the readable result.
GuideHow to use it
How the cipher works
Each letter is moved forward (encoding) or backward (decoding) through the alphabet by the shift amount, wrapping around from "Z" back to "A" as needed. Numbers, spaces, and punctuation are left unchanged. Because the alphabet only has 26 letters, there are only 25 meaningful shifts — trying all of them will always reveal the original message somewhere in the list.
Why it helpsFeatures & benefits
Why this runs entirely in your browser
Every shift runs in JavaScript locally in the tab, which means it keeps working offline once the page has loaded and nothing typed here is ever sent to a server.
Common uses
Solving a Caesar cipher puzzle or escape room clue, learning the basics of classical cryptography, or quickly applying ROT13-style obfuscation (a shift of 13) to hide spoilers in text.
Frequently asked questions
A few things people usually want to know before trusting the numbers.
ROT13 is a Caesar cipher with a shift of 13. It's special because applying it twice returns the original text, since 13 + 13 = 26, a full loop of the alphabet.
No. With only 25 possible shifts, it can be broken instantly by trying all of them, which is exactly what the brute-force table on this page does.
No. Only letters A-Z and a-z are shifted; numbers, spaces, and punctuation are left exactly as typed.
Use the brute-force table, which shows the result of every possible shift at once — scan down the list until one of them reads as normal text.
No. All encoding and decoding happens locally in your browser. Nothing typed or pasted here is sent to a server, stored, or shared.