Twitter Tool

X Invisible Text Generator

Copy zero-width and braille blank characters for X posts, display names, the 160-character bio, and DMs. Each one is tested against X's actual field limits — including the 280-character post cap and the 50-character display name.

Quick Copy

Tap a character, then paste into X

Zero Width Space

U+200B

ZWSP
3
3 characters

Generated invisible text

3 characters
Output previewClick to inspect
Click to select generated text

Test Area

Works everywhereNo sign-up required100% free

What invisible text actually does on X

X (formerly Twitter) treats invisible characters as real content in most fields, with one stubborn exception. The @username accepts only letters, numbers, and underscores up to 15 characters — invisible characters get stripped, full stop. The display name (50 characters) and the bio (160 characters) both accept Unicode freely, which is where invisible text earns its keep: blank lines in a bio, an empty-looking display name, or spacing inside a long Premium post. Standard posts give you 280 characters and Premium posts up to 25,000. X counts in UTF-16 code units, so an emoji costs two units and a braille blank costs one. This page hands you the exact characters we tested in each X field.

How to paste invisible text into X

1
Copy a character
Tap any character above. Braille blank (U+2800) is the safer default for X posts and bios — it survives the field's save step more reliably than zero-width space.
2
Open the right X field
Paste into a post, your display name, your bio, or a DM. The @username is the one exception: letters, numbers, and underscores only, up to 15 characters.
3
Paste and post
Long-press the field, choose Paste, then post. The text disappears from view, but X still counts it toward the 280-character post cap or the 160-character bio.

What invisible text is actually useful for on X

💬
Blank posts
X rejects truly empty posts. A single invisible character passes the check and publishes as a blank line in the timeline, with your name above it.
📝
Bio line breaks
The bio caps at 160 characters with no paragraph control. Invisible characters fake a line break and let you stack a CTA under a tagline.
🎭
Invisible display name
Paste an invisible character into the 50-character display name and your profile shows a blank name above your @handle. The handle itself stays visible.
📄
Long-post spacing
Premium posts get up to 25,000 characters. Invisible characters push sections or CTAs onto their own lines — only the first 280 show in the timeline before 'Show more'.

Where on X you can use it

💬
Posts
Publish a post that looks empty. Standard posts cap at 280 characters, so one invisible character is a noticeable slice — Premium posts give you 25,000.
📝
Bio
Add a line break inside the 160-character bio. Each invisible character counts toward the cap.
🎭
Display name
Make the 50-character name field read as empty. Your @username (15 characters) stays visible — only the display name disappears.
🔒
DMs
Push text onto a new line inside a direct message. DMs accept up to 10,000 characters, so invisible padding is effectively free.

Field-by-field behavior on X

X counts characters in UTF-16 code units, so a braille blank (U+2800) costs one unit and most emojis cost two. The post field is where the limit bites hardest: 280 characters for free accounts (raised from 140 in November 2017, when the platform was still called Twitter) and up to 25,000 for Premium subscribers since 2023. Only the first 280 characters of a Premium post show in the timeline, with the rest behind a 'Show more' fold. URLs always count as exactly 23 characters regardless of length, thanks to the t.co wrapper. The bio (160 characters) and display name (50) both accept invisible Unicode, but the @username (15 characters, letters/numbers/underscores only) strips them on save. One quirk: X revalidates the bio on some app updates and occasionally strips characters it previously accepted.

Practical notes before you paste

Braille blank (U+2800) survives X's save step more reliably than zero-width space (U+200B), which sometimes gets stripped.

Every invisible character counts toward the limit. Three in a 280-character post is about 1% — small, but they add up with emojis.

The @username field rejects invisible characters. Only the display name, bio, post, and DM fields accept them.

URLs always count as 23 characters in a post, no matter how long the actual link is. Plan invisible padding around that fixed cost.

Premium posts show only the first 280 characters in the timeline. Invisible line breaks past that cutoff live behind 'Show more'.

Emojis cost two UTF-16 units each. In a 160-character bio, an emoji plus invisible padding adds up fast.

X revalidates the bio on some app updates and can strip characters it previously accepted. Re-paste if a layout breaks.

Test on a second device after saving. Some Android builds render braille blank as a faint dot.

Common questions about invisible text on X

X compatibility, by field

Standard posts (280 characters), Premium posts (up to 25,000), the bio (160), the display name (50), and DMs (10,000) all accept invisible Unicode characters, with braille blank (U+2800) the most reliable across iOS, Android, and the web client. The @username is the hard exception — X restricts it to letters, numbers, and underscores up to 15 characters, so invisible characters get stripped on save. X counts in UTF-16 code units, meaning most invisible characters cost one unit, emojis cost two, and URLs count as a fixed 23 regardless of length. Premium posts show only their first 280 characters in the timeline, with the rest behind a 'Show more' fold.

Copy a character and try it

Pick braille blank if you're not sure, paste it into a post or your bio, and see how X renders it on your device.