Tools / Morse Code Decoder

Morse Code Decoder

Decode Morse code to plain text or encode text to Morse code. Separate letters with a single space and words with three spaces (or a /). A built-in reference table lets you verify any symbol.

Separate letters with a single space, words with 3 spaces or a /.

Paste Morse code above to decode it.

Morse code reference
A.-
B-...
C-.-.
D-..
E.
F..-.
G--.
H....
I..
J.---
K-.-
L.-..
M--
N-.
O---
P.--.
Q--.-
R.-.
S...
T-
U..-
V...-
W.--
X-..-
Y-.--
Z--..
0-----
1.----
2..---
3...--
4....-
5.....
6-....
7--...
8---..
9----.
..-.-.-
,--..--
?..--..
'.----.
!-.-.--
/-..-.
(-.--.
)-.--.-
&.-...
:---...
;-.-.-.
=-...-
+.-.-.
--....-
_..--.-
".-..-.
$...-..-
@.--.-.

How Morse code works

Morse code represents each letter and digit as a sequence of short signals (dots) and long signals (dashes). The original system was designed for telegraph operators; modern use is mainly in amateur radio and, frequently, CTF challenges.

In picoCTF challenges, Morse code often appears as a WAV audio file with alternating tones. You can decode the audio by listening, or use a tool like morse2ascii (Linux) to convert the WAV to dot-dash notation, then paste the result here.

Challenges solved with this tool: picoCTF 2022 - morse-code.

Morse code encodes each letter and digit as a unique combination of dots (short) and dashes (long). The timing conventions are strict: a dot lasts one unit, a dash lasts three units, the gap between symbols within a letter is one unit, the gap between letters is three units, and the gap between words is seven units. When working with audio files in CTFs, these timing ratios are what distinguish dots from dashes and letters from word breaks.

CTF Morse challenges come in several forms. The most common is a .wav audio file containing audible tones. Open it in Audacity or a similar waveform viewer to visually read the short and long pulses, then transcribe the dot-dash pattern. Alternatively, a Python script using scipy can automatically threshold the amplitude to extract the signal. Occasionally Morse appears as literal dots and dashes in a text file, or hidden in binary (0 and 1) form.

A few recognition tips: Morse code text always uses only two symbols (dot and dash) plus separators. If you see a string made exclusively of ., -, and spaces or slashes, it is almost certainly Morse code. When a challenge title or description references "beeps," "signals," or "radio," Morse is the likely encoding. Paste the dot-dash string here with letters separated by spaces and words separated by / to decode instantly.