This translator turns Morse code you can hear into text. Upload an audio file or record the beeps from your microphone, and the tone is found, timed and decoded in your browser. It also works the other way, rendering your text as a Morse audio file to download.
Choose an audio file or record from your microphone. The tone is analysed in your browser and nothing is uploaded.
You can also drop an audio file onto this box.
A recording is the hardest kind of Morse to handle by hand. The speed is whatever the sender chose, and the silences carry as much meaning as the tones. The decoder measures both for you rather than asking you to set them.
Below the tool are the conditions that make a decode accurate, what to do about noise and overlapping signals, and how the tone is picked out of the recording in the first place.
If your Morse is written down instead, the translator handles it, and a photo or a blinking light goes to the image translator.
Decode Morse code audio to text
The decoder looks for a single steady tone between 200 and 1500 Hz, which covers practice oscillators and on-air signals alike, and measures how long it is switched on and off. Nothing is uploaded.
You do not have to tell it the speed. The tones are sorted into short and long groups, the short group becomes the dot length, and everything else is measured against that.
What the microphone hears for SOS. The decoder measures each run against its neighbours.
Turn text into a Morse code audio file
Type a message, listen to it, then download it as a WAV file you can send or play elsewhere.
The file is a WAV, rendered from the same timing the Listen button plays, so what downloads is what you just heard. Pick a speed from 5 to 40 words per minute and a pitch from 400 to 1000 Hz.
A letter speed faster than the overall speed sends each letter quickly and leaves longer gaps between them. This is Farnsworth spacing, which many courses use to teach Morse by ear.
WAV rather than MP3, deliberately: encoding MP3 in the page would mean shipping an encoder to every reader, and a WAV needs no library at all. Any player, phone or messaging app will open it.
How to get an accurate decode
Let the beeps be the loudest thing. The tone has to stand above the speech, music and hiss around it, so hold the microphone near the speaker.
Include a moment of silence at each end. Leading and trailing quiet is trimmed automatically, and it gives the analysis a clean edge to work from.
Keep the pitch steady. A recording that drifts across the band, or carries two signals at once, decodes only one tone. A steady hum in the background is ignored.
Send the gaps properly. A letter gap is three dots long and a word gap seven. Cramped gaps are the single most common reason text comes back as one long run of letters.
If the result is close but not right, paste the dots and dashes into the Morse code translator and correct them by hand. The Morse code alphabet chart is the quickest way to check a single letter.
How the decoder works
Morse is one tone switched on and off, so the analysis measures the energy at that one frequency rather than transcribing the whole recording. It is the same idea as tuning a radio to one station instead of listening to the whole band.
The audio is cut into 5 millisecond frames, each frame is scored at the tone frequency, and a frame counts as sound when it passes half the average energy of the loudest frames in the clip. The resulting on and off runs become dots, dashes and gaps.
Before reading anything, the decoder checks that what it found is really Morse: a single pitch, clearly switched on and off. Hiss, speech and a steady hum fail that check, so they come back as no tone found instead of made-up letters.
One case is genuinely undecidable. A message whose tones are all the same length could be all dots or all dashes, since E and T are the same signal at different speeds, and the decoder reads those as dots.
Frequently asked questions
Q
Which audio formats can it decode?
A
The audio translator decodes any format your browser can play, which in practice means WAV, MP3, M4A and OGG. The file is decoded by the browser itself, so there is no separate list of supported formats for this page to keep up with.
Q
Is my recording uploaded anywhere?
A
Your recording is never uploaded. The file is read and analysed inside the page, and no part of it is sent to a server. That is also why decoding keeps working with the network disconnected or the device in aeroplane mode.
Q
Why did it fail to decode my file?
A
A file usually fails to decode because the beeps are not the loudest thing in it. The decoder listens for one steady tone switched on and off. When speech, music or hiss drowns it out, it reports no tone rather than guessing letters.
Q
Does it need to know the sending speed first?
A
The decoder does not need to be told the sending speed. It measures the speed from the signal, sorting the tones into short and long groups and taking the short group as the dot length. That is why hand sent Morse still decodes.
Q
Can it decode two stations at once?
A
The decoder cannot read two stations at once. It locks onto the one tone that is clearly switched on and off, so a second signal or a steady hum at a different pitch is treated as background and ignored.