Skip to content

Fancy Text Showing as Boxes? What We Measured, and the Fixes

Fancy text showing as boxes means no font on that device can draw one of the characters. In our 2026-10-27 measurement, macOS 26.5.1 and Android draw every character of all 27 common styles, so the one cause our test shows failing there is text built on 24 reserved code points that no font draws. Older systems, apps with their own fonts and Windows (untested) are next.

We measured why fancy text showing as boxes happens instead of repeating the usual advice. On 2026-10-27 we read the character map of every system font on a Mac running macOS 26.5.1 (365 font files) and of the fonts Android lists in its platform font configuration (the stock AOSP/Google set, not phone makers' own fonts such as Samsung's), then checked each character that 27 fancy-text styles produce: 1,185 checks in all.

Three findings came out of it. Every style character is drawn by at least one font on both platforms. 24 reserved code points, the slots a generator lands on when it maps letters by a fixed offset, are drawn by no font at all. And five characters switch to color emoji. The rest of this page goes through the method, the tables, the causes, starting with the one our data shows failing on current systems, and the fixes.

Three styled phrases rendered in Chrome: a naive generator's reserved code points appear as rows of boxes, while the correct Letterlike characters display as cursive, Old English and double-struck letters
The same three phrases from an offset-only generator (left) and with the gaps filled from Letterlike Symbols (right), rendered in Chrome on macOS 26.5.1 on October 27, 2026. Every reserved code point draws as a box. Screenshot by Fancy Text Styles · Own work

How the measurement worked

A box appears when the text system cannot find any font that contains a drawing (a glyph) for a character. So the question “will this character show?” can be answered from the fonts themselves: every font file carries a character map, a table listing which Unicode code points it can draw. We read those tables with fontTools 4.60.2.

A character counted as drawable on a platform if at least one font in that platform's set maps it. That mirrors how fallback works: if your app's main font lacks a character, the system looks through other installed fonts for one that has it. Plain ASCII letters were skipped, since every font has them.

One font was excluded on purpose. macOS ships a font called LastResort whose whole job is to draw a placeholder box for any character nothing else can draw. Counting it would make every character look “covered”, so it is left out of the Apple numbers.

The whole run is a script in this site's repository, so it can be repeated after each operating system release. The numbers on this page are from the run dated 2026-10-27; if a later run changes them, this page changes with them.

PlatformFont setFiles
macOS 26.5.1Every system font file, including Supplemental, LastResort excluded365
AndroidFonts listed in AOSP frameworks/base/data/fonts/fonts.xml that carry the blocks fancy text uses: Roboto, Noto Sans Symbols (two subsets), Noto Sans Lisu, Noto Sans CJK, Noto Color Emoji. Stock AOSP/Google fonts only; phone makers' own fonts, such as Samsung's, were not measured6
WindowsNot measured: its fonts were not on the measuring machine—
What was measured (Source: our measurement, scripts/measure-coverage.py → coverage.json, 2026-10-27; Android font list from AOSP fonts.xml)

Finding 1: the common styles are drawn completely

Every character of every style we checked was drawn by at least one font on both platforms. The table below shows the styles people most often ask about, with the number of non-ASCII characters each style produces and how many of them each platform can draw. Zero missing on either side.

That includes the styles with the strangest-looking characters: upside-down text, which borrows letters from IPA Extensions, Latin Extended and the Lisu block; small capitals; and glitch text, built from combining marks. If a modern Mac or Android phone has fancy text showing as boxes in one of these styles, the characters are not the problem. Something else in the chain is, and the causes below tell you what.

The table counts characters, not words, and each row checks the full set a style can produce: 62 for styles with letters and digits, 52 for letter-only styles, fewer for styles Unicode only partly covers, such as subscript (27) and small caps (24). A smaller number is not a failure to draw: the generator leaves some letters plain, either because Unicode has no form for them (subscript b, small-capital x) or because the form exists but a platform doesn't draw it (small-capital q on Android, superscript q on both). Glitch is the largest set because it draws from 101 different combining marks.

StyleSampleConvertsmacOS 26.5.1 system fontsAndroid fontsWhat stays plain
Bold (serif)𝐀𝐛𝐜 𝟏𝟐𝟑A–Z 26/26 · a–z 26/26 · 0–9 10/1062/62 drawn62/62 drawnNothing — full set
Italic (serif)𝐴𝑏𝑐 123A–Z 26/26 · a–z 26/26 · 0–9 0/1052/52 drawn52/52 drawnNo italic digits
Cursive (script)𝒜𝒷𝒸 123A–Z 26/26 · a–z 26/26 · 0–9 0/1052/52 drawn52/52 drawnNo script digits
Old English (fraktur)𝔄𝔟𝔠 123A–Z 26/26 · a–z 26/26 · 0–9 0/1052/52 drawn52/52 drawnNo fraktur digits
Double-struck𝔸𝕓𝕔 𝟙𝟚𝟛A–Z 26/26 · a–z 26/26 · 0–9 10/1062/62 drawn62/62 drawnNothing — full set
Monospace (typewriter)𝙰𝚋𝚌 𝟷𝟸𝟹A–Z 26/26 · a–z 26/26 · 0–9 10/1062/62 drawn62/62 drawnNothing — full set
Small capsᴀʙᴄ 123A–Z 26/26 · a–z 24/26 · 0–9 0/1024/24 drawn24/24 drawnq stays plain (its small capital isn’t drawn on Android); no small-capital x; digits unchanged
Superscript (tiny)ᴬᵇᶜ ¹²³A–Z 25/26 · a–z 25/26 · 0–9 10/1054/54 drawn54/54 drawnq and Q stay plain (superscript q isn’t drawn on Apple or Android); C F S X Y Z use lowercase forms
Subscriptₐbc ₁₂₃A–Z 26/26 · a–z 17/26 · 0–9 10/1027/27 drawn27/27 drawnOnly 17 lowercase letters; no b c d f g q w y z, no capitals
Bubble (circled)Ⓐⓑⓒ ①②③A–Z 26/26 · a–z 26/26 · 0–9 10/1062/62 drawn62/62 drawnNothing — full set
Squared (filled)🅰🅱🅲 123A–Z 26/26 · a–z 26/26 · 0–9 0/1026/26 drawn26/26 drawnCapitals only; no digits; several letters render as emoji
Upside downƐᄅƖ ɔq∀A–Z 18/26 · a–z 21/26 · 0–9 8/1037/37 drawn37/37 drawnNo turned capital Q; reversed so it reads when rotated
Glitch (zalgo)Ȧ̵̗̟̒̌b̜͈̒̃̎c̩̙͐̅͟ 1̸͔̐̉͊̈2̯͔͎̾́̋3̯̩̓A–Z 26/26 · a–z 26/26 · 0–9 10/10101/101 drawn101/101 drawnNothing — full set
Measured 2026-10-27 by reading the character map of every system font: macOS 26.5.1 system fonts (365 font files) and the Android system fonts that carry these blocks (android-NotoColorEmoji.ttf, android-NotoSansCJK-Regular.ttc, android-NotoSansLisu-Regular.ttf, android-NotoSansSymbols-Regular-Subsetted.ttf, android-NotoSansSymbols-Regular-Subsetted2.ttf, android-Roboto-Regular.ttf). “Drawn” counts the non-ASCII characters the style produces that at least one font can display. Windows: its fonts (Segoe UI Symbol, Cambria Math) are not on the measuring machine, so Windows is not in this table.

Finding 2: 24 slots that no font draws

The Mathematical Alphanumeric Symbols block (U+1D400–1D7FF) holds the bold, italic, script, fraktur and double-struck alphabets that fancy text is built from. Most of its alphabets run in neat order, A to Z then a to z. But a few letters had already been encoded earlier in a smaller block, Letterlike Symbols (U+2100–214F), where they serve as mathematical and scientific symbols: ℬ, ℋ, ℛ, ℂ, ℝ, ℎ and others.

Unicode does not encode the same character twice. So the slots where those letters would have gone in the math block were left reserved, with a note in the official chart pointing to the Letterlike character. There are 24 of these holes: 11 in script, 5 in fraktur, 7 in double-struck and 1 in italic.

We checked all 24 against both font sets. Not one font on macOS 26.5.1 or Android maps any of them. That is expected: a reserved code point has no character assigned, so no font designer has anything to draw. The table shows the script holes; the highlighted cells are the letters that must come from Letterlike Symbols.

This also explains why correct script text mixes two blocks. In 𝒮ℯ𝓇𝓋ℯ𝓇 the ℯ is U+212F from Letterlike Symbols while the letters around it come from the math block, and that is exactly how Unicode intends the alphabet to be assembled. A generator that keeps every letter in the math block is not being more consistent; it is producing holes.

LetterEmpty slot a naive generator usesDrawn there?Correct character
BU+1D49D (reserved, unassigned)No — box on macOS and Androidℬ U+212C
EU+1D4A0 (reserved, unassigned)No — box on macOS and Androidℰ U+2130
FU+1D4A1 (reserved, unassigned)No — box on macOS and Androidℱ U+2131
HU+1D4A3 (reserved, unassigned)No — box on macOS and Androidℋ U+210B
IU+1D4A4 (reserved, unassigned)No — box on macOS and Androidℐ U+2110
LU+1D4A7 (reserved, unassigned)No — box on macOS and Androidℒ U+2112
MU+1D4A8 (reserved, unassigned)No — box on macOS and Androidℳ U+2133
RU+1D4AD (reserved, unassigned)No — box on macOS and Androidℛ U+211B
eU+1D4BA (reserved, unassigned)No — box on macOS and Androidℯ U+212F
gU+1D4BC (reserved, unassigned)No — box on macOS and Androidℊ U+210A
oU+1D4C4 (reserved, unassigned)No — box on macOS and Androidℴ U+2134
Measured 2026-10-27: none of the 365 macOS font files or the Android system fonts map any reserved slot, which is why letters such as these turn into boxes on copy-cat generators. Correct replacements per the Unicode Mathematical Alphanumeric Symbols chart.

Double-struck, fraktur and italic have holes too

Double-struck letters are the ones most often used for number sets in maths, so seven of them were encoded early: ℂ ℍ ℕ ℙ ℚ ℝ ℤ (U+2102, U+210D, U+2115, U+2119, U+211A, U+211D, U+2124). Their math-block slots, from U+1D53A for C to U+1D551 for Z, are reserved and drawn by nothing in our test.

Fraktur, the Old English style, has five: ℭ ℌ ℑ ℜ ℨ (C H I R Z, at U+212D, U+210C, U+2111, U+211C, U+2128). Italic has one, and it is the most surprising: the italic small h lives at U+210E, where Unicode names it PLANCK CONSTANT. Its slot in the math block, U+1D455, is reserved.

A generator that simply adds a fixed offset to every letter lands on these holes. Type “Hello” into one and the H comes out as a box in script, fraktur and double-struck alike, while the other letters look fine. This site's engine maps each hole to its Letterlike character instead.

LetterEmpty slot a naive generator usesDrawn there?Correct character
CU+1D53A (reserved, unassigned)No — box on macOS and Androidℂ U+2102
HU+1D53F (reserved, unassigned)No — box on macOS and Androidℍ U+210D
NU+1D545 (reserved, unassigned)No — box on macOS and Androidℕ U+2115
PU+1D547 (reserved, unassigned)No — box on macOS and Androidℙ U+2119
QU+1D548 (reserved, unassigned)No — box on macOS and Androidℚ U+211A
RU+1D549 (reserved, unassigned)No — box on macOS and Androidℝ U+211D
ZU+1D551 (reserved, unassigned)No — box on macOS and Androidℤ U+2124
Measured 2026-10-27: none of the 365 macOS font files or the Android system fonts map any reserved slot, which is why letters such as these turn into boxes on copy-cat generators. Correct replacements per the Unicode Mathematical Alphanumeric Symbols chart.

Finding 3: five characters turn into emoji

Not every surprise is a box. Some characters exist in both a text form and an emoji form, and the system may pick the color emoji font to draw them. In our measurement five fancy-text characters are in both Apple Color Emoji and Noto Color Emoji: Ⓜ (U+24C2, from the bubble style) and 🅰 🅱 🅾 🅿 (U+1F170, U+1F171, U+1F17E, U+1F17F, from the filled squared style).

The effect is a word where one or two letters are suddenly bigger, colored badges: Ⓦⓔⓛⓒⓞⓜⓔ is fine, but Ⓜⓐⓡⓚ may start with an emoji M. It is not a box and nothing is broken; it is simply a different drawing. If it spoils the look, use a style that avoids those letters, or the outlined squared style, whose letters are not in either emoji font.

Cause #1: a generator that used reserved code points

We put this first because it is the only cause our font test shows failing on current Apple and Android systems. That is a ranking by mechanism, not by frequency: we measured fonts, not generators, so we can't say how many generators emit these slots. What we did show is that the 24 reserved slots are drawn by no font we tested, and that mapping letters by a fixed offset lands on them, as the screenshot at the top of this page shows. Text containing them shows boxes even on a brand-new phone, for everyone who sees it.

It has a fingerprint: the boxes appear only on particular letters. In cursive, watch B E F H I L M R and e g o. In Old English, C H I R Z. In double-struck, C H N P Q R Z. In italic, a lone h. If “𝒮𝓉𝒶𝓇” looks fine but a name with an R in it gets a box exactly where the R should be, this is your cause.

The fix is to regenerate the text with a tool that uses the Letterlike characters. Pasting the old text into a different app will not help, because the characters themselves are empty slots.

StyleLetters with a reserved slotUse instead
Script (cursive)B E F H I L M R e g oℬ ℰ ℱ ℋ ℐ ℒ ℳ ℛ ℯ ℊ ℴ
Fraktur (Old English)C H I R Zℭ ℌ ℑ ℜ ℨ
Double-struckC H N P Q R Zℂ ℍ ℕ ℙ ℚ ℝ ℤ
Italichℎ
Reserved slots and the correct characters (Source: Unicode code charts for Mathematical Alphanumeric Symbols and Letterlike Symbols; font coverage from our 2026-10-27 measurement)

Cause #2: older systems and apps that bring their own fonts

Fonts are updated along with the operating system. A device on an older version has older fonts, and a character that today's fonts draw may be missing from them. We measured only current systems, and on Android only the stock AOSP/Google fonts; phone makers such as Samsung ship their own fonts, which we did not test. So we can't say which older versions or brands lack which characters; what we can say is the mechanism. If text looks right on your new phone and shows boxes on a friend's older one, the difference is the fonts installed on their device.

Apps can cause the same thing on a current system. Most apps draw text with the system's fonts and let the system fall back through every installed font when a character is missing. Some, often games and apps built on their own rendering engines, ship a limited font of their own and don't fall back. Inside such an app, a character the phone could draw elsewhere may still come out as a box.

We have not tested individual apps, so we don't name any here. The test is simple: paste the same text into the device's notes app. If it shows there and not in the other app, the app is the cause; if it fails in both, the device's fonts are.

The same applies to the person reading your text, not just to you. A bio or display name is drawn on each viewer's device with that device's fonts, so one friend may see boxes while you and everyone else see the style. Asking what device and app they are using usually settles it in one message.

Cause #3: Windows, which our test did not cover

Windows uses its own set of fonts for these characters, such as Segoe UI Symbol and Cambria Math, and those fonts were not on the machine we measured. We therefore make no claim, either way, about how fancy text looks on Windows.

If you or your readers see boxes on a Windows PC, the general rule still applies: the box means no font Windows could find has that character. The same app-versus-system test from cause #2 works there too: try the text in a browser or a plain text editor on the same computer.

Cause #4: fields that strip combining marks

Strikethrough, underline, slashed and glitch text work differently from the letter styles. They keep your plain letters and add a combining mark after each one: U+0336 for a strike line, U+0332 for an underline, U+0338 for a slash, and assorted marks from U+0300–036F for glitch. The mark has no width of its own; it is drawn on top of the letter before it.

Our measurement found those marks drawn on both platforms. The failure here is usually not a box at all. Some text fields clean up input and remove characters they don't expect, and if a field drops the marks you are left with ordinary letters, so “s̶t̶r̶i̶k̶e̶” arrives as “strike”. Fields with tight character limits can also refuse the text, because each styled letter is now two characters.

If a strikethrough or glitch effect disappears, the field is the cause, not your device. Use the app's own formatting where it has one.

To confirm it, copy the text back out of the field after saving and paste it into a notes app. If the marks are gone there too, the field removed them when you saved; if they reappear, the field only failed to draw them.

Fancy text showing as boxes, plain letters or emoji: which cause is it?

What you see narrows it down quickly. Match the symptom, then check the cause it points to.

What you seeMost likely causeFirst thing to try
Boxes on a few specific letters (cursive R, double-struck C, italic h)Reserved code points in the textRegenerate the text with a tool that uses Letterlike characters
Every styled letter is a box, on one device onlyOlder system fonts on that deviceUpdate the system, or use bold or a simpler style
Boxes in one app, fine in the notes appThe app uses its own limited fontUse plain text or the app's own formatting there
Boxes on a Windows PCNot covered by our testTry the text in a browser on the same PC
The line or glitch marks vanishedThe field strips combining marksUse the app's own strikethrough or underline
One letter became a color badgeEmoji form of Ⓜ 🅰 🅱 🅾 🅿Pick a style without those letters
Symptoms and likely causes (Source: our 2026-10-27 measurement; reserved slots from the Unicode code charts)

Fixes, in the order to try them

Work through these from the top when you find fancy text showing as boxes. The first two deal with the cause our font test shows failing on current systems, and they cost nothing.

If you publish styled text where many people will see it, such as a profile, a server name or a social post, check it on at least one other device before you rely on it, ideally one running a different operating system from yours.

  1. Regenerate the text here. If the old text came from another site, its script, fraktur, double-struck or italic letters may sit in reserved slots. Type the plain words again and copy a fresh version.
  2. Check the same text in the device's notes app. Fine there means the app is the cause; boxes there mean the device's fonts are.
  3. Update the operating system if the device is behind. Newer fonts may include characters older ones lack.
  4. Switch to a style with simpler characters. Bold and bold sans have every letter and digit in one block with no holes, and they were drawn completely on both platforms we measured.
  5. Avoid styles where the effect matters most in fields that clean input. Strikethrough and glitch depend on combining marks a field may remove.
  6. For anything people must read, such as a username, a rule or contact details, use plain text. Styled letters are symbols to screen readers too, which W3C's guidance on separating meaning from presentation is about.

Sources & further reading

Read next

  • Cursive Font Generator

    Cursive font generator with thin and bold Unicode script. See the 11 letters borrowed from an older block, why numbers stay plain, and measured coverage.

  • Old English Font Generator

    Old English font generator for blackletter-style text: regular and bold fraktur, the five capitals Unicode borrows from an older block, and every letter mapped.

  • Copy and Paste Fonts

    Copy and paste fonts in 27 Unicode styles: bold, cursive, Old English and more. See which letters each style lacks and which phones can draw them.

  • Bold Text Generator

    Bold text generator with six Unicode bold styles, serif to fraktur. See which ones have bold digits, every character mapped, and measured phone coverage.

  • Weird Text Generator

    Weird text generator with nine styles: glitch, upside down, bubble, crossed out and wide letters, plus which Unicode characters each one is built from.

Part of Copy and Paste Fonts. Want every style at once? Use the fancy text generator on the home page.

Sukie, editor of Fancy Text Styles

Sukie · Editor

Sukie edits Fancy Text Styles. Every style on the site is checked against the Unicode Consortium code charts before it is published, and every page names the characters a style cannot produce instead of hiding them.

About this site · How pages are checked · Last updated October 27, 2026

Fancy Text Styles is an independent site. Discord, Instagram, TikTok, X and other platform names belong to their owners and are used only to describe where text is pasted; none of them endorse this site.