Free tool

X (Twitter) Font Generator

Type once and get 12 Unicode styles you can paste into a post, a bio or a display name. Every style shows what it really costs against the 280-character limit, which is double, and only the 5 styles that have real digits pretend to. Free, no account, and nothing you type is saved or sent anywhere.

A name, a tagline or a whole bio. Nothing you type is stored or sent anywhere.

Characters
11
as typed
Plain cost
11
of 280
Styled cost
21
roughly double
Each one labelled, so you can tell them apart once pasted.
  • Bold

    The one most people are here for. Reads as emphasis, not decoration.

    ๐›๐›๐ฎ๐๐๐ฒ ๐Ÿ๐ŸŽ๐Ÿ๐Ÿ”

    11 characters21 of 280 on X
  • Italic

    Serif italic. Quieter than bold, good for a subtitle line.

    ๐‘๐‘๐‘ข๐‘‘๐‘‘๐‘ฆ 2026

    11 characters17 of 280 on X4 digits left plain: this style has none
  • Bold Italic

    Both at once. Heavy enough to survive a small phone screen.

    ๐’ƒ๐’ƒ๐’–๐’…๐’…๐’š 2026

    11 characters17 of 280 on X4 digits left plain: this style has none
  • Script

    Looping and formal. Eleven of its letters live outside the main block.

    ๐’ท๐’ท๐“Š๐’น๐’น๐“Ž 2026

    11 characters17 of 280 on X4 digits left plain: this style has none
  • Bold Script

    Script with weight behind it. No holes in this one.

    ๐“ซ๐“ซ๐“พ๐“ญ๐“ญ๐”‚ 2026

    11 characters17 of 280 on X4 digits left plain: this style has none
  • Fraktur

    Blackletter. Distinctive at a glance and hard to read in bulk.

    ๐”Ÿ๐”Ÿ๐”ฒ๐”ก๐”ก๐”ถ 2026

    11 characters17 of 280 on X4 digits left plain: this style has none
  • Bold Fraktur

    Heavier blackletter, complete across all 52 letters.

    ๐–‡๐–‡๐–š๐–‰๐–‰๐–ž 2026

    11 characters17 of 280 on X4 digits left plain: this style has none
  • Double-Struck

    Outlined, the way โ„ and โ„ค are written. Has real digits.

    ๐•“๐•“๐•ฆ๐••๐••๐•ช ๐Ÿš๐Ÿ˜๐Ÿš๐Ÿž

    11 characters21 of 280 on X
  • Sans-Serif

    Close to the default on most devices, with a different rhythm.

    ๐–ป๐–ป๐—Ž๐–ฝ๐–ฝ๐—’ ๐Ÿค๐Ÿข๐Ÿค๐Ÿจ

    11 characters21 of 280 on X
  • Sans-Serif Bold

    The cleanest heavy style. Usually the best bet for a display name.

    ๐—ฏ๐—ฏ๐˜‚๐—ฑ๐—ฑ๐˜† ๐Ÿฎ๐Ÿฌ๐Ÿฎ๐Ÿฒ

    11 characters21 of 280 on X
  • Sans-Serif Italic

    Slanted without the serifs. Sits closer to the surrounding text.

    ๐˜ฃ๐˜ฃ๐˜ถ๐˜ฅ๐˜ฅ๐˜บ 2026

    11 characters17 of 280 on X4 digits left plain: this style has none
  • Monospace

    Fixed width, so columns line up. Has real digits.

    ๐š‹๐š‹๐šž๐š๐š๐šข ๐Ÿธ๐Ÿถ๐Ÿธ๐Ÿผ

    11 characters21 of 280 on X

Read this before you paste a whole bio. A screen reader does not see a styled word, it sees mathematical letters, and it spells them out one at a time. Search does not see the word either, so a stylised keyword stops matching. Style the display name or one word of a tagline and leave the rest plain: you get the effect and everybody can still read it.

Works in a post, a bio and a display nameNot indexed as the plain wordCounting a full post? Use the character counter.

12 styles that work

Bold, italic, script, fraktur, double-struck, sans-serif and monospace, each paste-ready for a post, a bio or a display name.

Honest about digits

Only 5 of the 12 have real numerals. The rest leave 0-9 plain and say so, rather than faking them from the wrong block.

The real character cost

Styled letters weigh 2 each on X. Every style shows what it actually costs against the 280 limit, so a bio does not silently fail to save.

Private by default

Nothing you type is saved or sent anywhere. The substitution happens in your browser and nowhere else.

Styled text costs double, and nobody tells you

There is no font setting on X. What a generator gives you is not a typeface, it is a substitution: each letter is swapped for a different Unicode character that happens to be drawn in another shape, taken from a block that exists so a physics paper can distinguish the vector from the scalar. It survives the paste because it is text rather than styling.

The catch is what it weighs. X does not count characters, it counts weight, and its published configuration gives the Latin, Cyrillic, Greek, Hebrew and Arabic ranges a weight of 1 and everything else a weight of 2. Nearly every styled letter lives outside those ranges, so it costs 2. A ten-letter word in bold is ten characters and twenty of your 280.

That matters most in the bio field, which is 160 characters. Written in bold it becomes 80 letters of usable space, and the failure mode is confusing: you paste a bio that looks the right length, press save, and X refuses it with no useful explanation. Each style above shows its weighted cost for exactly this reason, and it is the same number the character counter reports, because both read it from the same rule.

The 7 styles with no numbers, and the boxes you get when a tool pretends otherwise

Unicode gave mathematical digits to five styles: bold, double-struck, sans-serif, sans-serif bold and monospace. It gave none to italic, bold italic, script, bold script, fraktur, bold fraktur or sans-serif italic, because a mathematician does not italicise a numeral, and the block was encoded for mathematics rather than for bios. There is no italic 3. There will not be one.

So when a generator shows you a full set of script digits, it has gone shopping elsewhere, usually in Fullwidth Forms or the circled numbers, and what you paste is a number drawn at a different size on a different baseline from the letters around it. On this page those 7 styles leave 0-9 as plain ASCII and tell you which ones did it.

The other failure is more visible. The block has two dozen positions that are permanently empty, because the characters that belong in them were encoded years earlier in a different block: script capital H, fraktur R, double-struck Z and twenty more. A generator built by adding a fixed offset to each letter walks straight into those gaps and emits a codepoint that does not exist, which your device draws as an empty rectangle. Every one of them is patched here from where the real character actually lives, so no style in the list produces a box.

What to style, and what to leave alone

Two costs are worth knowing before you paste a whole profile. The first is that a screen reader does not recognise these as letters. It reads them as the mathematical symbols they are, one at a time, so a stylised sentence arrives as a long spelled out string. That is not a marginal audience on a platform used heavily by people who listen to their feed.

The second is search. A styled word is a different string from the plain word, so it does not match a search for the plain one. Putting your job title in fraktur takes it out of every result where someone was looking for exactly that. The same applies to hashtags: a styled hashtag is not the hashtag, it is a decorative string that links nowhere.

The version that works is small. Style the display name, or one word of a tagline, or a single line that opens a post, and leave the rest plain. You get the visual break you were after, the words that matter stay findable, and anyone listening still gets a profile they can understand. If you are styling a post rather than a profile, run the finished thing through the character counter first, because the doubled weight is the reason stylised posts get rejected at what looks like half the limit.

Meet bbuddy

Bold text is not a content strategy.

Styling a display name takes ten seconds and it is worth doing once. The part that takes your week is having something to post on Tuesday, and again on Thursday, on every platform, without repeating yourself. bbuddy reads your brand, drafts posts written for X rather than broadcast everywhere at once, and either queues them for your approval or publishes them itself.

It runs the same weighted count before anything goes out, so a post never fails on length.

Frequently asked questions

How do you get bold text on X (Twitter)?

You cannot change the typeface of a post, so what everyone does instead is swap each letter for a different Unicode character that happens to be drawn bold. Type your text above, copy the bold line, and paste it into the post box, your bio or your display name. X treats it as ordinary text, which is why it survives the paste.

Why will the numbers not change to italic or script?

Because those numbers do not exist. Unicode encoded mathematical digits for 5 of the 12 styles here and stopped: bold, double-struck, sans-serif, sans-serif bold and monospace. There is no italic 3 and no script 7, and there never will be. Generators that appear to have them are pulling digits from an unrelated block, so the numbers come out at a different size and sit off the baseline from the letters beside them.

Does fancy text use more characters on X?

Yes, twice as many. X weighs characters rather than counting them, and everything outside the Latin, Cyrillic, Greek, Hebrew and Arabic ranges weighs 2. Almost every styled letter sits outside those ranges, so a ten-letter word costs 20 of your 280. A 160-character bio written entirely in bold will not save, because X sees 320.

Why does styled text show up as boxes or question marks?

Because the tool that made it emitted a codepoint that does not exist. The Unicode block these styles come from has two dozen permanently empty positions, since the characters that belong there were encoded years earlier somewhere else, and a generator that just adds a fixed number to each letter lands on them. Script capital H is the usual casualty. Every hole is patched here, so no style produces a box.

Is stylised text bad for accessibility?

For a full bio, yes, and it is worth being plain about it. A screen reader does not recognise these as letters of the alphabet. It reads them as mathematical symbols, one at a time, so a stylised sentence becomes a long string of spelled-out characters. Styling a display name or a single word is a small cost. Styling everything makes your profile unusable for anyone who listens to it.

Does styled text hurt my reach or my search visibility?

It stops the word matching. Search on X and search engines index the characters you actually posted, and a styled word is a different string from the plain one, so a stylised keyword in your bio no longer matches anyone looking for it. Reach itself is not penalised, but a profile nobody can find through search has lost the thing a bio is for.

Is this font generator free, and does it store what I type?

It is free with no account, no email address and no limit on use. Nothing you type is stored or sent anywhere: the whole thing runs in your browser, which matters because most people paste a draft that has not been published yet.

More free tools
All X tools
Get started

Free generator now, a channel that runs itself next..

Styling a name takes ten seconds. Filling the feed every week is the part that takes your Thursday.

Cancel any time ยท Secure checkout ยท 5-minute setup