Braille Translator

Instantly translate English to Braille and Braille to English, with intelligent support for Grade 1 and Grade 2 braille.

English Input Type or paste your English text here
0 / 5000
Braille Output Your Braille translation will appear here
Braille Grade
Input Layout
Display Size
S Dot 3
D Dot 2
F Dot 1
Space Cell Gap
J Dot 4
K Dot 5
L Dot 6
Current Cell:
empty
Under the hood

How this braille translator works

Client side translation, your text never leaves your browser

Every translation runs in JavaScript, on your device, so it works as a private braille transcriber for anything from a single word to full documents. There is no server call for the core engine, so nothing you type is transmitted, logged, or stored anywhere. This is also why the tool feels instant: there is no round trip to wait on. The one exception is voice input, covered below, since browser speech recognition works differently.

hello
0 requests sent, runs entirely in this window
Grade 1 and Grade 2 toggle inside the braille translator tool In the tool above

Grade 1 vs Grade 2, which one you’re getting and why it matters

Grade 1 braille is uncontracted: every letter, number, and punctuation mark is written out in full, one braille cell per character. Grade 2 adds a layer of contractions on top of the same alphabet, using single cells or short cell sequences to stand in for common letter groups and whole words. Most printed braille you’ll encounter, books, signage, menus, is Grade 2. Grade 1 is used where contraction would introduce ambiguity: technical text, spelling instruction, and early literacy. Read the full breakdown in our Grade 1 vs Grade 2 guide if you’re deciding which one your braille translation project needs.

Braille to English, too

Most online translators only go one direction. This one reads braille back into English as well, whether you paste Unicode braille characters or type numeric dot notation. The reverse engine has to resolve genuine ambiguity that a forward-only tool never has to face. A single cell with only dot 2 raised, for example, is both a comma and the “ea” groupsign in Grade 2. There’s no way to tell which one it is by looking at the cell alone. The decoder resolves this by position: a mid-word occurrence reads as “ea” (as in “learn”), while the same cell at the end of a word, following a letter sequence that would otherwise leave a stray consonant, reads as a comma (as in “much,”). This positional logic runs through the entire decode engine, not just this one case.

English to Braille direction switch inside the translator tool In the tool above

Ready to see it for yourself?

Scroll back up, paste a line of text or a line of braille, and switch the direction whenever you need to.

Try it with your own text
The braille cell

Inside the six dot braille cell

Dot numbering and cell structure

Every braille character is built from a cell of up to six raised dots, arranged in two columns of three. Dots are numbered 1, 2, 3 down the left column and 4, 5, 6 down the right. A capital “A” is a single raised dot in position 1. Add dot 2 and it becomes “B.” The full alphabet, numbers, and punctuation are built from combinations of these six positions, which is also why the layout maps directly onto a 6 key input device. See how to read braille dots for the complete dot-to-letter reference.

1
4
2
5
3
6
A B
  • Wordsigns

    A single cell stands for an entire common word on its own. The letter “b” cell, standing alone, means “but.”

  • Groupsigns

    A cell represents a letter group inside a longer word. The “st” groupsign appears inside “stand” without spelling out s-t.

  • Short form words

    A shortened cell sequence replaces a longer word entirely, more than one cell, distinct from a wordsign. “Ab” stands for “about.”

How contractions are formed from the same six dots

Grade 2 doesn’t introduce new symbols. It reassigns meaning to cells and cell sequences based on where they appear. Three contraction types do most of the work, shown alongside.

Position determines which rule applies, and the engine enforces the same positional constraints a trained transcriber would: a groupsign valid mid-word isn’t automatically valid at a word’s start or end.

Choosing your output

Grade 1 and Grade 2, what changes in your output

Grade 1

When to use Grade 1

Grade 1 is the right choice whenever contraction would create ambiguity or when the reader needs to see every letter explicitly: spelling practice, names, technical strings, passwords, and any text where contracted shorthand would obscure the exact characters involved.

Grade 2

When to use Grade 2

Grade 2 is the standard for most published braille and is faster to read for fluent braille users, since contractions reduce the number of cells per word. Use it for body text, books, and anything meant to be read at length.

Edge cases this translator handles correctly

Grade 2 contraction rules are context dependent, and getting the context wrong produces output that misrepresents the source text. Three cases the engine is specifically built and regression tested to get right:

Digits directly followed by letters.

A sequence like “9am” needs its number indicator and letter sign placed correctly so the digit and the letter aren’t merged into an invalid cell run. The engine disambiguates this rather than treating it as one continuous token.

Emails and technical strings.

Contracting inside an email address or URL would corrupt it. The engine detects these patterns and forces Grade 1, uncontracted output for that specific string, even while the surrounding text stays in Grade 2.

Single capital letters in list context.

A sequence like “A, B, C” needs correct capitalization handling per cell, not literal letter by letter treatment. The engine applies UEB capitalization rules across the sequence rather than defaulting to a naive per-character read.

Contractions blocked at morpheme boundaries.

Some letter pairs that would normally trigger a contraction are blocked when they cross a real word part boundary. “Rawhide” is raw plus hide, so the “wh” contraction is blocked even though the letters sit adjacent. Getting this wrong is a common failure point in simpler translators, since a naive pattern match sees “wh” and contracts it regardless of what the word actually is.

Output options

Getting your translation out

Copy Plain Text and Copy Braille buttons in the translator tool

Copy as Unicode braille or plain text

Copy the raw Unicode braille characters for use anywhere that renders them, or copy the plain English text back out if you’re working in reverse.

Export TXT button in the translator tool

Export as a plain .txt file

A straightforward text file export, readable output rather than embosser formatting. Use this when you need the translation in a document, an archive, or anywhere a plain file is more useful than a formatted one.

Export BRF button in the translator tool

Export to .brf for braille embossers and note takers

BRF is the standard file format braille embossers and refreshable braille displays expect. It isn’t a general purpose file type, it’s formatted specifically for that hardware. If you’re not sure what a .brf file actually contains or when you need one instead of a .txt file, this breakdown covers it.

Print button in the translator tool

Print directly from your browser

Print your translation straight from the page using your browser’s print function, no separate export step required.

Other ways in

Beyond typing: voice input and image scanning

Voice input and image scan icons in the translator's input toolbar
Both live in the input toolbar, next to the text box

Voice input

Speak your text instead of typing it. This feature uses your browser’s built in speech recognition service to convert speech to text, which means it’s the one part of this tool that isn’t fully client side the way the translation engine itself is. Accuracy and availability depend on which browser you’re using.

Scan text from an image (OCR)

Upload or capture a photo containing printed text and the tool will extract it for translation. This runs entirely in your browser using a self hosted copy of the OCR engine, so the image itself is never uploaded to a third party server. It’s built for printed and typed text. Handwriting recognition isn’t reliable and shouldn’t be relied on for accuracy sensitive use.

Adjustable display size

Switch the rendered braille cells between small, medium, and large. This is a genuine accessibility control for anyone with low vision reading the dot pattern on screen, not a cosmetic preference toggle.

Small, medium, and large display size control in the translator tool
Perkins style input

Composing braille directly with the Perkins style keypad

How the six keys map to the cell

The on-screen keypad mirrors the layout of a physical Perkins brailler: F, D, S on the left map to dots 1, 2, 3, and J, K, L on the right map to dots 4, 5, 6. If you already know the dot-to-letter structure covered above, this layout will be immediately familiar.

F1
D2
S3
J4
K5
L6
A B
Standard and Perkins input layout toggle in the translator tool
Staging cell
h i

Staging a cell before inserting it

Press the keys for the dots you want and they toggle in a staging cell, shown before you commit it. Once the cell reflects what you intend, insert it into your output. This lets you compose braille dot by dot without needing a physical brailler, useful for practicing cell composition or entering characters that are awkward to reach by typing English.

Standards and accuracy

Built on Unified English Braille standards

This translator’s contraction rules follow the Unified English Braille standard maintained by the Braille Authority of North America (BANA). Every wordsign, groupsign, short form word, and positional rule implemented here is checked against BANA’s published UEB rulebook, and the contraction engine runs against a regression suite of confirmed test cases, including the morpheme boundary exceptions and digit, email, and capitalization edge cases described above, so changes to the engine can’t silently break previously correct output.

Read more about our UEB methodology. Every contraction rule is checked by our lead transcription reviewer before it ships.

UEB rules checked against BANA’s published rulebook

  • Wordsigns
  • Groupsigns
  • Short form words
  • Positional rules
Questions

Frequently asked questions

Yes. There’s no signup and no cost to use the translator, in either direction.

Grade 1 spells every character out with no contractions. Grade 2 adds wordsigns, groupsigns, and short form words on top of the same alphabet, reducing the number of cells needed for common words and letter patterns. See our full Grade 1 vs Grade 2 guide for details.

Yes. Paste Unicode braille characters or type numeric dot notation and the tool decodes it back into English, including resolving contractions that are genuinely ambiguous out of context.

BRF is the format braille embossers and refreshable braille displays expect. Export to .brf when your output needs to go to that kind of hardware rather than a general document.

The translation engine itself runs entirely in your browser once the page has loaded, so the core translation doesn’t depend on an active connection. Voice input and OCR do require the page’s scripts to load initially. There’s also a 5,000 character limit per translation to keep in mind for longer documents.

Yes, 5,000 characters per translation. For longer text, split it into sections.

Yes. The decode field accepts numeric dot notation directly, for example 1-2-3 or 123-134, alongside standard Unicode braille. The tool detects which format you’ve entered automatically, no mode switch needed.