Invisible text
Blank space to copy and paste
Press Copy beside a row to take that blank. For an empty line, or a gap that has to survive an app’s clean-up, the Braille blank (U+2800) is the most dependable choice, because it isn’t a space at all. For a gap of a set width inside a line, use one of the Unicode spaces, from the em space down to the hair space. They all look alike, so every row names the character and its code point.
40 to copy · Updated 6 October 2026
Blanks that aren’t spaces · 8
- Braille pattern blankU+2800
- Hangul fillerU+3164
- Halfwidth Hangul fillerU+FFA0
- Hangul choseong fillerU+115F
- Hangul jungseong fillerU+1160
- Two Braille blanksU+2800 × 2
- Three Braille blanksU+2800 × 3
- Three Hangul fillersU+3164 × 3
Spaces by width, wrapped to survive trimming · 16
- Ideographic space, 1 emU+200B U+3000 U+200B
- Em quad, 1 emU+200B U+2001 U+200B
- Em space, 1 emU+200B U+2003 U+200B
- En quad, ½ emU+200B U+2000 U+200B
- En space, ½ emU+200B U+2002 U+200B
- Figure space, a digit wideU+200B U+2007 U+200B
- Three-per-em space, ⅓ emU+200B U+2004 U+200B
- Ordinary spaceU+200B U+0020 U+200B
- No-break spaceU+200B U+00A0 U+200B
- Four-per-em space, ¼ emU+200B U+2005 U+200B
- Punctuation spaceU+200B U+2008 U+200B
- Medium mathematical spaceU+200B U+205F U+200B
- Thin space, about ⅕ emU+200B U+2009 U+200B
- Narrow no-break spaceU+200B U+202F U+200B
- Six-per-em space, ⅙ emU+200B U+2006 U+200B
- Hair space, the thinnestU+200B U+200A U+200B
Zero-width characters · 9
- Zero-width spaceU+200B
- Zero-width non-joinerU+200C
- Word joinerU+2060
- Mongolian vowel separatorU+180E
- Soft hyphenU+00AD
- Invisible timesU+2062
- Invisible separatorU+2063
- Left-to-right markU+200E
- Right-to-left markU+200F
Longer blanks and blank lines · 7
- Five Braille blanksU+2800 × 5
- Ten Braille blanksU+2800 × 10
- Twenty Braille blanksU+2800 × 20
- Five Hangul fillersU+3164 × 5
- Ten Hangul fillersU+3164 × 10
- One blank lineU+000A U+2800 U+000A
- Two blank linesU+000A U+2800 U+000A U+2800 U+000A
Ready-made lines for bios and captions
Dashed boxes mark the invisible characters. They are copied with the line.
Why an ordinary space vanishes
Apps tidy what you type before they save it. Most cut spaces from the start and end of a field, and many squeeze a run of spaces down to one; Instagram, for example, collapses extra spaces and trims blank lines in bios and captions. All of that tidying looks for characters that Unicode classes as white space: the ordinary space, the no-break space, the em and en spaces and every other space in the second set.
The Braille blank and the Hangul fillers are not white space. U+2800 is the Braille cell with none of its eight dots raised, and the fillers are Korean letters that hold the place of a missing part of a syllable. Code that strips spaces leaves them alone, which is why they can keep an empty line or an empty-looking name in place.
What we checked: the Unicode 16.0 properties of every character on this page, and what JavaScript’s built-in trim(), a function many websites use to tidy form fields, does to each one. It removed every space in the width list plus the zero-width no-break space (U+FEFF), and kept the Braille blank, the Hangul fillers and the zero-width characters in the third set. We have not tested each character in every app. Apps run their own clean-up on top of that, and an update can change what survives.
Which blank to use for which job
| Job | Use | Why |
|---|---|---|
| An empty line between paragraphs | A Braille blank alone on its line | A line that holds a character isn’t empty, so a trim doesn’t remove it. |
| A visible gap at the start of a line | Two or more Braille blanks | Leading spaces get cut, and Braille blanks are not spaces. |
| A gap of set width between words or emoji | An em, en or thin space from the second set | Trimming only touches the ends of a line, so a space in the middle usually keeps its width. |
| A blank-looking name or message | A Hangul filler or a run of Braille blanks | Fields that refuse plain spaces may accept them, though some apps block them on purpose. |
| A number and its unit on one line | A no-break or narrow no-break space | The line can’t break between 10 and km. |
| A long word or link that needs to wrap | A zero-width space | It adds a place to break the line without adding a gap. |
Tip: To space out an Instagram caption, write the paragraphs first, then put a single Braille blank on its own line between each pair. Look at the preview before you post.
How wide each space is
Widths are measured in ems. An em is the size of the font, so in 16-pixel text an em space is 16 pixels wide and an en space 8. Most of the others are fractions of that, and a few are tied to a character: the figure space matches a digit, which is how columns of numbers line up, and the punctuation space matches a full stop. The ideographic space is as wide as one Chinese or Japanese character.
Those are the widths Unicode intends. The font decides the real one, and an app may draw an unfamiliar space as an ordinary one. The quads are leftovers from metal type: Unicode treats the em quad as the same character as the em space, and the en quad as the en space, so tools that normalise text can quietly swap one for the other.
Each space in the second set is wrapped in two zero-width spaces (U+200B), one on each side. They take no room, but they keep a standard trim from removing the space when it lands at the start or end of a line. The codes shown under each row list all three characters.
Zero-width characters and other traps
- The zero-width space (U+200B) takes no room at all. It is the right pick for a hidden break point and the wrong one when you want a gap people can see.
- The zero-width joiner (U+200D) is left out on purpose. It glues emoji together: 👩, U+200D and 💻 in a row become a single emoji, 👩💻. Pasted between two emoji by mistake, it can merge them.
- Unicode marks the Hangul fillers as default-ignorable, which allows a phone to draw them with no width at all. A gap made of them on one phone can vanish on another; the Braille blank is steadier.
- Direction marks (U+200E and U+200F) are invisible, but in text that mixes right-to-left and left-to-right scripts they can move a full stop or a bracket to the other side.
- Blanks still count. Each one uses up a character of a 150-character Instagram bio, and every wrapped space in the second set counts as three.
- Screen readers treat blanks unevenly: some skip them and some announce them, so a column of twenty can mean twenty pauses for someone listening.
Questions people ask
How do I add a blank line to an Instagram caption?
Copy the Braille blank from the first set. In your caption, finish a paragraph, press return, paste the blank, press return again and carry on typing. That line looks empty but holds a character, so it is far less likely to be removed than a truly empty one.
Why does my space disappear after I post?
Because it is white space. Apps trim ordinary spaces, and the em, en and thin spaces too, from the ends of a line, and many squeeze a run of them into one. Swap it for a Braille blank, or use the wrapped spaces in the second set.
Can I send a blank message or comment?
Many apps won’t send a message made only of ordinary spaces, because they trim it to nothing first. A Braille blank or a Hangul filler is a real character, so the app may accept it. Bear in mind that an empty-looking message can read like a glitch to the person who gets it.
Braille blank or Hangul filler: which is better?
The Braille blank, in most cases. It has a letter-sized width in most fonts, and nothing in Unicode tells software to ignore it. The Hangul filler is a Korean letter that software is allowed to ignore, so it is wide on some devices and has no width on others.
Is a blank space the same as invisible text?
Close, but not quite. A blank space takes up room on the line, while invisible text such as the zero-width space takes up none. Use a blank when you want a gap people can see, and a zero-width character when nothing should show at all.
Related pages
More symbols and text art
Styled your caption? Let DMFast answer the comments
When someone comments a word like LINK, DMFast replies under the comment and sends them a DM, on Instagram and Facebook. Free plan, no card.
Start free