Short answer: Box drawing characters live at U+2500–U+257F. Copy them from the keys below, or on Windows type the legacy Alt code on the numeric keypad — Alt + 218 gives ┌. Whatever you build with them will only hold its shape in a monospace font; that single detail causes most of the trouble people have with them.
Tap to copy
Need the Alt code for a character that isn’t here? The Alt Code Finder covers the full set.
The four families
All of them share one design rule: each character occupies exactly one cell and its strokes meet the cell edges, so characters stacked in a grid connect seamlessly.
| Family | Looks like | Example code points |
|---|---|---|
| Light | ─ │ ┌ ┐ └ ┘ ├ ┤ ┬ ┴ ┼ | U+2500, U+2502, U+250C |
| Heavy | ━ ┃ ┏ ┓ ┗ ┛ | U+2501, U+2503 |
| Double | ═ ║ ╔ ╗ ╚ ╝ ╠ ╣ ╦ ╩ ╬ | U+2550, U+2551, U+2554 |
| Arc (rounded) | ╭ ╮ ╰ ╯ | U+256D–U+2570 |
There are dashed variants too — ┄ ┅ ┆ ┇ ┈ at U+2504 onwards — and the shade and block characters ░ ▒ ▓ █ sitting next door in a separate range, which is where the retro terminal look comes from. Related decorative characters are in shape symbols.
Quick reference
| Char | Name | Code point | Windows Alt code | Word | HTML |
|---|---|---|---|---|---|
| ─ | Box drawings light horizontal | U+2500 | Alt + 196 | 2500 + Alt + X | ─ |
| │ | Box drawings light vertical | U+2502 | Alt + 179 | 2502 + Alt + X | │ |
| ┌ | Box drawings light down and right | U+250C | Alt + 218 | 250C + Alt + X | ┌ |
| ┐ | Box drawings light down and left | U+2510 | Alt + 191 | 2510 + Alt + X | ┐ |
| └ | Box drawings light up and right | U+2514 | Alt + 192 | 2514 + Alt + X | └ |
| ┘ | Box drawings light up and left | U+2518 | Alt + 217 | 2518 + Alt + X | ┘ |
| ├ | Box drawings light vertical and right | U+251C | Alt + 195 | 251C + Alt + X | ├ |
| ┤ | Box drawings light vertical and left | U+2524 | Alt + 180 | 2524 + Alt + X | ┤ |
| ┬ | Box drawings light down and horizontal | U+252C | Alt + 194 | 252C + Alt + X | ┬ |
| ┴ | Box drawings light up and horizontal | U+2534 | Alt + 193 | 2534 + Alt + X | ┴ |
| ┼ | Box drawings light vertical and horizontal | U+253C | Alt + 197 | 253C + Alt + X | ┼ |
| ═ | Box drawings double horizontal | U+2550 | Alt + 205 | 2550 + Alt + X | ═ |
| ║ | Box drawings double vertical | U+2551 | Alt + 186 | 2551 + Alt + X | ║ |
| ╔ | Box drawings double down and right | U+2554 | Alt + 201 | 2554 + Alt + X | ╔ |
| ╗ | Box drawings double down and left | U+2557 | Alt + 187 | 2557 + Alt + X | ╗ |
| ╚ | Box drawings double up and right | U+255A | Alt + 200 | 255A + Alt + X | ╚ |
| ╝ | Box drawings double up and left | U+255D | Alt + 188 | 255D + Alt + X | ╝ |
| █ | Full block | U+2588 | Alt + 219 | 2588 + Alt + X | █ |
| ░ | Light shade | U+2591 | Alt + 176 | 2591 + Alt + X | ░ |
Why Alt + 218 works but Alt + 0218 doesn’t
Box drawing is the one family where the old Windows Alt codes genuinely work — and it’s also the clearest demonstration of a rule that trips people up everywhere else.
Alt + 218 gives you ┌. Alt + 0218 gives you Ú. Same digits, one leading zero, completely different character.
The reason is that Windows uses two different code pages depending on that zero:
- No leading zero → CP437, the original IBM PC character set. IBM needed line-drawing graphics for text-mode interfaces, so they filled the range above 127 with exactly these box characters. That’s why they have Alt codes at all.
- Leading zero → Windows-1252, where the same byte values hold accented Latin letters.
So Alt + 196 is ─ while Alt + 0196 is Ä; Alt + 201 is ╔ while Alt + 0201 is É. Below 128 the two code pages are identical, so the zero makes no difference there — the split only bites from 128 up.
This is also why the rounded corners ╭ ╮ ╰ ╯ have no Alt code at all. They were added to Unicode later and were never in CP437, so you need 256D followed by Alt + X, or copy them. The full picture is in Alt codes vs Unicode vs HTML, and if your Alt codes aren’t working at all, that has its own guide.
The monospace rule
This is the single thing that determines whether your box looks like a box.
Box drawing characters are designed for a fixed grid. In a monospace font every character occupies the same width, so a vertical bar on line one sits exactly above the vertical bar on line two. In a proportional font — which is nearly every default in Word, Docs, email and web body text — characters have different widths, your right-hand edge drifts a little further out on each line, and the box collapses into a sagging mess.
The fix is always the same: apply a monospace font to the whole block, not just to the characters. Consolas, Courier New, Menlo, DejaVu Sans Mono and Cascadia Code all cover the range well.
And keep the lines together. If the block wraps, or if a single line is longer than the container, the grid breaks no matter what font you’ve used.
Windows
- Legacy Alt codes — hold Alt, type the code on the numeric keypad with Num Lock on, release.
Alt + 218→ ┌. The top-row number keys don’t work, and laptops without a keypad need the Fn-layer keypad or a different method. - In Word — type the hex code, then Alt + X.
250C+ Alt + X → ┌. - Character Map — run
charmap, Advanced view, Go to Unicode2500.
Windows Terminal, PowerShell and the classic console all render these correctly, since drawing boxes in a terminal is what they were invented for.

Mac
There’s no Option shortcut for any box drawing character — none exists, so don’t hunt for one.
- Unicode Hex Input: add it in System Settings → Keyboard → Input Sources, then hold Option and type 2500.
- Character Viewer: Control + Command + Space, search “box drawings”.
Terminal.app and iTerm2 handle them fine with any of the monospace fonts above.
Linux
Ctrl + Shift + U, type 2500, then Enter or Space — the sequence GNOME documents. Box drawing is well supported across terminal emulators; the usual culprit for broken output is a font without full coverage rather than the character itself. More in typing symbols on Linux.
Word, Docs, Excel and Notion
- Word: hex + Alt + X, then select the block and set the font to Consolas. See symbols in Word.
- Google Docs: Insert → Special characters, search “box drawings”, then apply Courier New to the block. Symbols in Google Docs has more.
- Excel:
=UNICHAR(9484)returns ┌. Box characters inside a cell are fine, but a box spanning several cells will never align — use real borders instead. See symbols in Excel. - Notion: put the block inside a code block. Notion’s body text is proportional, so anything else drifts. Symbols in Notion covers the rest.
In code and documentation
In a Markdown README, always wrap the block in a fenced code block — that gets you monospace rendering and stops the characters being reflowed:
markdown
```
project/
├── src/
│ ├── index.js
│ └── utils.js
└── README.md
```
That tree shape — ├── │ └── — is what the Unix tree command outputs, and it’s the most common real-world use of these characters.
In HTML, the numeric references work anywhere, but the font is what matters:
html
<pre style="font-family:Consolas,'Courier New',monospace">
┌────────────┐
│ Aligned. │
└────────────┘
</pre>
Use <pre>, not <p>. A paragraph collapses runs of whitespace and reflows the lines, which destroys the grid before the font ever gets involved.
They aren’t emoji, and that’s useful
Unlike arrows, stars and squares, no box drawing character is registered as an emoji. They render as flat monochrome glyphs on every platform, including phones — there’s no colour variant waiting to ambush you. For dividers and borders that have to survive a trip through someone else’s device, that makes them a safer pick than the decorative alternatives in newsletter dividers.
Accessibility
Screen readers announce each character individually, so a five-line box becomes dozens of spoken phrases like “box drawings light horizontal” before the reader reaches your content. Two rules:
- If the box is decorative, hide it with
aria-hidden="true"and leave the text inside accessible. - If it’s a table, use a real HTML table. ASCII tables are unreadable to assistive technology no matter how neat they look.
How screen readers pronounce symbols covers the wider pattern.
Troubleshooting
| Problem | Fix |
|---|---|
| Box edges don’t line up | Proportional font. Apply a monospace font to the whole block. |
| Alt + 0218 gives Ú instead of ┌ | Drop the leading zero. Alt + 218 uses CP437; the zero switches to Windows-1252. |
| Alt code does nothing | Use the numeric keypad with Num Lock on — the top row won’t work. |
| Characters show as boxes | Font gap, not a bad character. See symbols showing as boxes. |
| Lines have gaps between them | Line height above 1.0 separates the vertical strokes. Set line-height:1 on the block. |
| ╭ ╮ ╰ ╯ have no Alt code | Correct — they were never in CP437. Use 256D + Alt + X, or copy them. |
| Box breaks when pasted into chat or email | The destination reflowed it or used a proportional font. Send an image or a code block. |
Recap
| Situation | Do this |
|---|---|
| Windows, quick | Alt + 218 etc. on the keypad |
| Word | 250C + Alt + X, then Consolas |
| Mac | Unicode Hex Input, Option + 2500 |
| Terminal or README | Fenced code block, any mono font |
| Web | ┌ inside <pre> with line-height:1 |
| Notion | Code block, never body text |
Frequently asked questions
What are box drawing characters?
A set of Unicode characters at U+2500–U+257F designed to draw boxes, tables and borders in text. Each one fills a single character cell and its strokes reach the cell edges, so they connect when stacked in a grid.
Why does Alt + 0218 give Ú instead of ┌?
The leading zero switches Windows to a different code page. Without it, Alt codes use CP437, the original IBM PC set that contains the box drawing graphics. With it, they use Windows-1252, where the same value is an accented letter.
Why don’t my box drawing characters line up?
You’re using a proportional font. Apply a monospace font — Consolas, Courier New, Menlo or Cascadia Code — to the entire block, and make sure no line wraps.
How do I type box drawing characters on a Mac?
There’s no Option shortcut. Enable Unicode Hex Input and press Option + 2500, or open Character Viewer with Control + Command + Space and search for “box drawings”.
Can I use box drawing characters in Excel?
Inside a single cell, yes — =UNICHAR(9484) gives ┌. Across several cells they’ll never align, because column widths vary. Use Excel’s own borders for that.
Do box drawing characters turn into emoji on phones?
No. None of them is registered as an emoji, so they render as flat monochrome glyphs everywhere, which makes them a reliable choice for borders and dividers.
Written by Igor R. Tested on Windows 11, macOS, Linux, Word, Excel, Google Docs and Notion. Last updated September 2026. Symbol code points follow the Unicode Standard.