Type below and copy any of 23 unicode styles for your X posts, bio, or display name. Everything runs in your browser — nothing is sent or stored.
X is the platform where a fonts generator needs a warning label: X's character counter charges two characters for most glyphs outside its basic Latin ranges, and mathematical-alphabet letters fall outside them. A fully bold post doesn't fit 280 characters of text — it fits roughly half that. The counter above measures your plain input; X's composer has the final word.
0 / 280 characters
280 characters left — styled versions can count for more (note below).
Bold
𝐗 𝐟𝐨𝐧𝐭𝐬
Italic
𝑋 𝑓𝑜𝑛𝑡𝑠
Bold italic
𝑿 𝒇𝒐𝒏𝒕𝒔
Bold sans-serif
𝗫 𝗳𝗼𝗻𝘁𝘀
Italic sans-serif
𝘟 𝘧𝘰𝘯𝘵𝘴
Bold italic sans-serif
𝙓 𝙛𝙤𝙣𝙩𝙨
Cursive (script)
𝒳 𝒻ℴ𝓃𝓉𝓈
Bold cursive
𝓧 𝓯𝓸𝓷𝓽𝓼
Gothic (fraktur)
𝔛 𝔣𝔬𝔫𝔱𝔰
Bold gothic
𝖃 𝖋𝖔𝖓𝖙𝖘
Outline (double-struck)
𝕏 𝕗𝕠𝕟𝕥𝕤
Monospace (typewriter)
𝚇 𝚏𝚘𝚗𝚝𝚜
Clean sans-serif
𝖷 𝖿𝗈𝗇𝗍𝗌
Small caps
x ꜰᴏɴᴛꜱ
Wide (aesthetic)
X fonts
Circled
Ⓧ ⓕⓞⓝⓣⓢ
Filled circles
🅧 🅕🅞🅝🅣🅢
Squared
🅇 🄵🄾🄽🅃🅂
Filled squares
🆇 🅵🅾🅽🆃🆂
Tiny (superscript)
ˣ ᶠᵒⁿᵗˢ
Upside down
sʇuoɟ X
Strikethrough
X̶ ̶f̶o̶n̶t̶s̶
Underline
X̲ ̲f̲o̲n̲t̲s̲
Previews show sample text — type above to style your own and enable the copy buttons. Long inputs are shortened in the previews; Copy always grabs your full text.
These styles are real Unicode characters, not fonts — that's why they survive copy-paste. Most sit outside the basic range, so apps that count UTF-16 units see each styled letter as two characters; the count above measures your plain input.
X renders these styles in posts, bios, and display names — but its counter charges two characters for most styled glyphs, so a fully styled post fits roughly half as much text against the 280-character limit. @handles accept only letters, numbers, and underscores.
Accessibility note: screen readers announce mathematical unicode letter-by-letter (“mathematical bold capital S”) or skip it entirely. Style a word or two for emphasis — keep names, offers, and anything essential in plain text.
Guide
X's counting rules are documented and mechanical: characters in a handful of basic Latin-oriented ranges count as one, everything else counts as two — and every mathematical-alphabet letter this tool produces lives in the “everything else” bucket. Style an entire 280-character draft and it will not fit; the practical budget for fully styled text is about half the limit.
That makes the X-native pattern obvious: style one or two words inside an otherwise plain post. A single 𝗯𝗼𝗹𝗱 word costs you a few extra characters and buys real visual contrast in the feed; a fully styled post costs half your space and most of your readability.
The cheapest place for styled text on X is the display name — 50 characters, no per-glyph double-counting drama because nobody writes essays there, and it follows you into every reply and quote. Bios (160 characters) take unicode too and are the classic spot for a styled word between plain keywords.
@handles are the hard exception: letters, numbers, and underscores only, so no generator can style one. And note that X's long-form articles for Premium subscribers have real native formatting — if you're writing something article-length, actual bold beats unicode bold on every count (as of June 2026).
The accessibility conversation around fancy unicode is loudest on X, for good reason: screen readers announce each mathematical letter (“mathematical bold capital S…”) or skip the run entirely, so a styled post can be unreadable to assistive tech. The same mechanics apply to search — X matches literal characters, so a styled keyword generally won’t surface for the plain query.
Both point to the same discipline: keep hashtags, cashtags, keywords, and anything informational in plain characters; reserve styles for one or two words of decoration. Emphasis is a contrast effect — it disappears when everything is emphasized.
X's counter charges two characters for most glyphs outside its basic Latin ranges, and unicode bold letters fall outside them. A fully styled post therefore fits roughly half as much text as a plain one against the 280-character limit — check X's own composer counter after pasting.
No — @handles accept only letters, numbers, and underscores. Your display name is the place for styled text: it allows 50 characters, accepts unicode, and appears next to every post and reply you write.
Not in ordinary posts — the composer offers no formatting, which is why unicode generators exist. X’s long-form articles for Premium subscribers do support native formatting (as of June 2026), so article-length writing is better served by real bold than by styled characters.
€0.00 due today · cancel anytime · 7-day money-back guarantee
SocialKit composes one post for all 11 platforms with every network’s character limit checked live — paste your styled text once and schedule it everywhere from a single calendar.
€0.00 due today · cancel anytime · 7-day money-back guarantee