Text to Morse code

Encode any text into International Morse code. Each letter A-Z and digit 0-9 maps to its standard sequence of dots and dashes; letters in a word are separated by one space, words are separated by / (slash with surrounding spaces). Customise the Dot and Dash characters in the action bar if you need a different visual. Punctuation outside A-Z 0-9 is dropped.

Input
Line 1:1 LF cloud_done Saved locally
Result Text to Morse Code
0 lines 0 chars

International Morse, dots and dashes, configurable separators

Morse code maps each letter and digit to a sequence of short signals (dots) and long signals (dashes). The encoder ships the International Morse table: A = .-, B = -..., through to Z = --.., plus digits 0-9. Within a word, letters are separated by a single space; words are separated by / (slash with surrounding spaces), the convention used in printed Morse so a decoder can reliably segment.

The Dot and Dash fields in the action bar let you replace the visual characters. Defaults are . and -. Use * and _ for a chat-friendly form, or o and = if you want a more visible long-signal glyph. The dot/dash character only changes how the encoded output looks; the underlying letter-to-Morse mapping is identical.

Input is lowercased before lookup, so HELLO and hello produce the same output. Characters outside A-Z 0-9 and the literal space are dropped from the output (no Morse code is emitted for them). Punctuation, accented letters, and emoji are not part of the standard table this tool uses. For decoding the dots and dashes back to letters, see Morse code to text.

How to use text to morse code

  1. 1Paste or type your text into the input panel on the left.
  2. 2The Morse code output appears in the output panel as you type.
  3. 3Customise the Dot field if you want a different short-signal character.
  4. 4Customise the Dash field if you want a different long-signal character.
  5. 5Click Copy in the output header to copy the encoded Morse.

Keyboard shortcuts

Drive TextResult without touching the mouse.

Shortcut Action
Ctrl FOpen the find & replace panel inside the input Plus
Ctrl ZUndo the last input change
Ctrl Shift ZRedo
Ctrl Shift EnterToggle fullscreen focus on the editor Plus
EscClose find & replace, or exit fullscreen
Ctrl KOpen the command palette to jump to any tool Plus
Ctrl SSave current workflow draft Plus
Ctrl PRun a saved workflow Plus

What this tool actually does

International Morse for letters and digits

Maps A-Z and 0-9 to their International Morse sequences. A = .-, S = ..., O = ---, 5 = ....., 0 = -----. Case is normalised to lowercase before lookup, so input case does not matter.

Letter and word separators

Letters within a word are joined by a single space. Words are joined by / (space, slash, space). So SOS HELP encodes as ... --- ... / .... . .-.. .--.. The slash convention lets Morse code to text distinguish word boundaries unambiguously.

Customisable Dot and Dash

Defaults are . for short and - for long. Set the Dot field to or * for a stylised look; set Dash to _ or another character. The mapping itself does not change; only the visible glyph.

Unsupported characters drop

Characters outside A-Z 0-9 and space are not emitted. Punctuation (.,!?), accented letters (é, ñ), and non-Latin scripts produce no Morse output. The standard Morse table includes some punctuation; this tool ships the letters-and-digits subset.

Browser-side, no upload

Encoding runs through a static lookup table on each keystroke. No server round-trip, no log of what you pasted.

Worked example

SOS = ... --- ..., HELP = .... . .-.. .--., with / between the two words.

Input
SOS HELP
Output
... --- ... / .... . .-.. .--.

Settings reference

Behaviour Effect on output
ASCII letters A-Z Mapped to their International Morse sequences. Case-insensitive.
Digits 0-9 Mapped to their International Morse sequences (5 dots/dashes each).
Letter separator Single space between Morse sequences within a word.
Dot Default .. Replaces the short-signal character throughout the output.
Dash Default -. Replaces the long-signal character throughout the output.
Letter Sep Default single space. Separator between letters within a word. Set to a custom string for chunkier output.
Word Sep Default / (space-slash-space). Separator between words. Set to (three spaces) for the historical Morse spacing convention.
Unsupported characters Punctuation, accents, and non-Latin scripts produce no Morse output and are dropped.

FAQ

Does it encode punctuation?
No. Standard International Morse covers letters and digits in this tool. Punctuation marks like .,!? are dropped. The full Morse standard does include punctuation but the lookup table here ships only the letter and digit subset.
Why are word boundaries shown as /?
The slash is the printed-Morse convention for word separation. Within a word, letters are split by single spaces; between words, by / . That gives Morse code to text an unambiguous way to put the spaces back when decoding.
Can I use different characters for dot and dash?
Yes. Set the Dot and Dash fields in the action bar. Try o and = for a chunkier look, or * and _ for chat. Whatever you set is round-tripped through Morse code to text as long as you set the same characters there.
Is Morse case-sensitive?
No. The encoder lowercases the input before looking up each letter, so HELLO and hello produce identical output.
Is the input sent anywhere?
No. Encoding runs entirely in your browser via a static table. Nothing is uploaded, nothing is logged.