Listen · decode · create

Morse Code Audio Translator: Sound to Text and Text to Sound

A Morse code audio translator listens to beeps from your microphone or an uploaded recording and writes out the letters, or plays and downloads your own message as Morse sound. Tone and speed are detected automatically, and nothing leaves your device.

Listen to a signal

Tap Start listening. No settings needed.

What the mic hears

Auto tone · Auto speed · waiting for input

The input meter shows volume, not decoding accuracy.

Upload a recording
Drop an audio file hereNo file selected

M4A, MP3, WAV, OGG, WebM supported by your browser · max 20 MB

Advanced detection settings

Automatic detection is on by default. Change these only for a known signal.

Higher values accept weaker tones and may pick up more noise.

Decoded so farAutomatic

Your decoded message will appear here.

Ready to listen

More result actions

Decode a sample or recording first.

Shaded letters need review. Tap one to compare possible readings.

Wrong result?

Save signal measurements to help diagnose a decoding problem. No audio recording or camera image is included. Nothing is sent automatically.

Start a capture to enable Save signal report.

Getting a clean read

One tone

Keep other voices and music away from the microphone.

Steady timing

Even dots and gaps are easier to recognize.

Check the result

Use Fix in decoder to correct any missed symbols.

How to translate Morse code audio to text

The quickest way to decode Morse code audio is to let the tool hear it: either through the microphone while another device plays the beeps, or from a recording you upload. Both routes end in the same place, a line of dots and dashes above the decoded text.

  1. Tap Start listening and allow the microphone when the browser asks. The status line confirms when sound is reaching it.
  2. Play the complete message on a second device, or open Upload a recording and drop in the file.
  3. Watch the result build as the signal arrives. Letters appear as each character's beeps finish.
  4. Tap Stop listening, then Copy text or Download text (.txt). Shaded letters need a second look; tap one to compare possible readings.

If you have nothing to test with, Try a sample plays a known phrase, I LOVE YOU at 10 WPM and 600 Hz, so you can see the decoder working before you trust it with your own recording.

Listening through the microphone

Live decoding works in real time, but the microphone is the part most people get wrong. The page asks the browser to switch off echo cancellation, noise suppression and automatic gain control, because those filters are tuned for voices and can swallow a steady tone. If the browser keeps them on anyway, you will see a warning: hold the phone close to the speaker in a quiet room.

Keep one tone in the room. Music, speech or a second signal overlapping the beeps is the most common reason a live session produces gibberish. The 40-bar meter under the status line shows volume only; a full meter does not mean the decoder has locked on. Record 10 s, then decode is a useful middle path when the live result keeps changing, because it captures a short clip and analyzes it in one pass.

Uploading a recording

Any audio format your browser can play will decode, up to 20 MB and three minutes. That covers a phone voice memo, a ham radio clip, a training file or a signal generated by a script, as long as the Morse tone is the loudest thing in it.

FormatTypical sourceDecoding notes
M4AiPhone and Android voice memosWorks well; keep the mic near the speaker when you record
MP3Shared files, downloadsCompression can soften tone edges; clean files decode fine
WAVGenerated audio, radio softwareUncompressed, so timing and tone edges stay sharp
OGGBrowser apps, open-source toolsSimilar to MP3 in practice
WebMScreen or tab recordingsDecodes if the browser can play it; trim long silences first

Mono recordings with little background noise give the cleanest result. A stereo file still works; the decoder reads the first channel.

Morse code sound generator: text to Morse audio

Morse code sound is made in the second pane, Text → sound: type a message of up to 1,000 characters and press Play. Letters, numbers and common punctuation such as ? / @ = + are encoded; a character outside the table shows as # in the code line so you can spot it.

  1. Switch to Text → sound and enter your message.
  2. Pick a speed chip, or leave it at 10 words per minute (WPM) for a microphone test. Letter spacing follows the speed automatically.
  3. Open Advanced sound settings if you want longer gaps for practice, a different pitch, or a telegraph click instead of a clean tone.
  4. Press Play on this device, or save a WAV or MP3 to play elsewhere.

Exports are rendered at 44.1 kHz on your device, with the speed, spacing, pitch and waveform you set baked into the file. A study clip, a ringtone or a signal for someone else's decoder all come out of the same button.

How the translator finds the tone and speed

The decoder never asks you what frequency or speed the signal uses; it measures both. For a file, it scans 300 to 1,200 Hz in 20 Hz steps with a Goertzel filter and keeps the frequency with the most energy. For the microphone, it watches 400 to 1,000 Hz and picks the band whose level rises and falls the most, which is what a keyed tone does and background hum does not.

Once the tone is known, every frame is marked on or off against a threshold set from the signal's own peak, so a quiet recording is judged on its own scale. The on-runs are then split into two clusters by duration, short ones become dots and long ones dashes, and the gaps are anchored to the 1, 3 and 7 unit spacing of International Morse. The dot length that falls out of this is converted to WPM with the standard 1,200 ÷ WPM rule, which is why a 10 WPM file reports dots of about 120 ms. A manual speed fixes that dot length instead of estimating it.

Settings explained

Automatic detection is on by default, and most recordings decode without touching anything. The controls under Advanced detection settings and Advanced sound settings exist for signals you already know, such as a file you generated at a fixed tone and speed.

SettingPaneRange and defaultWhat it changes
SensitivitySound → text1–10, default 5Higher values accept weaker tones and let in more noise; lower values ignore faint sound
Tone (Hz)Sound → text0 = auto, up to 1,000Fixes the frequency the decoder listens for; use when a noisy file has a known pitch
Speed (WPM)Sound → text0 = auto, up to 40Fixes the dot length instead of estimating it from the signal
SpeedText → sound5–40 WPM, default 10How fast letters play; letter and word gaps follow unless spacing is customized
Spacing speedText → sound5–40 WPMFarnsworth-style longer gaps between letters and words at the same character speed
Tone and SoundText → sound300–1,000 Hz, default 600; clean tone, telegraph click or buzzerPitch and waveform of the generated audio

Reset to automatic clears any manual tone or speed. The telegraph click option plays a short 900 Hz tap when a symbol starts and a 700 Hz tap when it ends, which is how a mechanical sounder is heard rather than a continuous beep.

Wrong letters? Causes and fixes

A wrong result almost always traces to one of six causes, and the fix is usually on the page rather than in a different recording. Work down the table from the top; the first two rows cover most cases.

What you seeLikely causeFix
Random letters, nothing readableAnother sound is louder than the Morse tone (music, speech, a second signal)Move closer to the speaker, quiet the room, or re-record with one tone
Mostly right, a few letters shadedUneven keying or a dropout inside a dashTap each shaded letter and pick the alternative reading, or use Fix in decoder
Words run togetherWord gaps shorter than seven units in the sourceSet Speed (WPM) manually to the sending speed so gap classification is fixed
Letters split into fragmentsThreshold too low for a noisy fileLower Sensitivity to 3 or 4 so faint noise is not counted as a dot
Nothing decodes at allTone outside the scanned range, or the browser mic is filteringRe-record with the tone between 400 and 1,000 Hz, or follow the on-screen mic warning and retry
Result changes while listeningSignal still arriving, or the source is being replayedWait for the full message, or use Record 10 s, then decode for a single pass

If none of these help, open Wrong result? and save a signal report. It contains timing measurements only, no audio, and it is not sent anywhere unless you choose to share it.

Who uses a Morse code audio translator

Ham radio operators use a Morse code translator with audio input to check their own CW sending or to read a recorded contact without copying by ear. Students and anyone training their ear can generate a clip at 10 WPM, play it on a second device, and confirm the decoder hears what they intended to send.

Puzzle and escape room designers verify that an audio clue actually resolves to the right word. Developers testing a Raspberry Pi buzzer or a Python script point the microphone at the hardware and compare the decoded text with the input. Archivists and teachers use the upload route for old recordings and classroom demonstrations, where a clean WAV gives the most dependable read.

Hear the pattern, learn the rhythm

Practice letters, make a ringtone, prepare a study clip or compare a recording with the alphabet chart.

Next

Watch the sound travel between two stations in the Simulator →

More Morse code tools

Common things to translate

Questions people ask

Does the audio leave my device?

No. Microphone input and uploaded files are processed in your browser with the Web Audio API, and nothing is stored or sent to a server. The optional signal report holds timing measurements only, and you decide whether to share it.

Which files work?

Any audio format your browser can play: M4A, MP3, WAV, OGG or WebM, up to 20 MB and three minutes. Mono files with one clear tone decode most reliably, and WAV keeps tone edges sharpest.

Can it decode Morse code in real time?

Yes. With the microphone running, letters appear as each character's beeps finish, and the result keeps updating until you stop. An uploaded file is analyzed in one pass as soon as it loads.

Does it work on a phone?

Yes, in Safari on iPhone and Chrome on Android, with nothing to install. The browser asks for microphone permission the first time you tap Start listening; voice memos can be uploaded directly from the phone.

Can I download Morse code sound?

Yes. Switch to Text → sound, type the message, and choose WAV or MP3. The export keeps the speed, spacing, pitch and waveform you selected and is generated on your device.

Can it decode Morse from a video or another app?

Yes, indirectly. Play the video or app on one device and let this page listen on another, or use Record 10 s, then decode for a short clip. A saved screen recording can also be uploaded if your browser can play the file.

Checked against ITU-R M.1677-1 · Last reviewed · How we check our pages · Report it