Skip to content

Add to your Home Screen

  1. Tap the Share button in Safari's toolbar.
  2. Scroll down and tap Add to Home Screen.
  3. Tap Add. The generator opens full-screen and works offline.

Fancy Text and Screen Readers: What Happens and What to Do

Are fancy fonts accessible? Mostly not: styled Unicode letters are separate characters, so screen readers may read long character names or skip them. Wide text and native formatting fare best; upside-down, glitch and look-alike styles fare worst.

By Maya Chen, lettering designer and type educator · Checked by Jordan Hale · · Published · How we review content

Key facts

  • Each styled letter is a separate Unicode character with its own name, such as U+1D400 MATHEMATICAL BOLD CAPITAL A, so screen readers may read the name, skip it or read a plain letter.
  • Scope reported that a stylised t may be read as "mathematical sans-serif script t" and that screen readers "may skip them entirely or read something irrelevant."
  • Upside-down, glitch and look-alike alphabets are rated unreadable, mathematical, enclosed and small-cap styles read oddly, and fullwidth text generally reads normally.
  • Native formatting such as WhatsApp bold or Discord markdown changes the appearance without changing the characters, so screen readers read the words normally.
  • Hashtags, links, handles, email addresses and discount codes should stay plain, because styled characters break their function.
  • WCAG success criterion 1.4.5 accepts images of text when the visual presentation is essential, as with lettering and logos, and alt text should repeat the exact words.

Are fancy fonts accessible? The short answer

Fancy text is not a font. Each styled letter is a separate Unicode character with its own official name, such as U+1D400 MATHEMATICAL BOLD CAPITAL A. Screen readers are built to report characters accurately, so when they meet one of these, they do one of three things:

  1. Read its name, or part of it, letter by letter.
  2. Skip it, because the speech engine has no pronunciation for it.
  3. Read it as the plain letter, when the software recognises the character as a variant of a normal letter.

Only the third is good, and you can’t control which one happens on someone else’s device. That is the whole accessibility problem in one paragraph. (If you want the mechanics of why styled letters are separate characters, see how fancy text works.)

What has been documented about screen readers and fancy text?

Two widely cited sources show that screen readers announce styled letters as character names or skip them.

Kent C. Dodds, January 2019. The web developer and educator posted a video of VoiceOver reading a styled tweet His tweet asked whether you had “listened to what it sounds like with assistive technologies like VoiceOver”, and the recording made the point: styled words were announced as strings of character names rather than read as words. In a follow-up he stressed that these “are actual mathematical characters that are being abused” and that “the screen reader is doing its job correctly.” An archived copy of the original post is available.

Scope for Business, October 2021. In an article on screen readers, special characters and Unicode symbols, Holly Tuke, writing for the UK disability charity Scope, explained that a stylised “t” may be read as “mathematical sans-serif script t”, and that screen readers “may skip them entirely or read something irrelevant.” The piece covers JAWS, NVDA, VoiceOver, Narrator and TalkBack, recommends plain text for social posts, and suggests screenshots with alt text instead of ASCII art.

Screen readers and their speech engines are updated regularly, and some newer versions may handle certain styled letters better than the versions in those recordings. But behaviour still varies between products, versions and user settings, and the person reading your post may be using an older device. The safe assumption is that styled text costs listeners something.

What does fancy text sound like?

It can sound like a list of character names instead of a sentence. Here is the kind of difference a listener faces. Written plainly, a bio might say:

Hi, I’m Maya. Bakery owner in Leeds.

Styled as 𝓗𝓲, 𝓘’𝓶 𝓜𝓪𝔂𝓪. 𝐁𝐚𝐤𝐞𝐫𝐲 𝐨𝐰𝐧𝐞𝐫 𝐢𝐧 𝐋𝐞𝐞𝐝𝐬, a screen reader that announces character names would turn those 26 letters into 26 multi-word names, each beginning with “mathematical”. One that skips unknown characters would read something closer to “comma, apostrophe, full stop”, leaving only the punctuation. Neither tells the listener who Maya is.

Plain text read aloud as a single short phrase compared with styled Unicode text read aloud as a long list of character names.

Which fancy text styles cause the most trouble?

Upside-down, glitch and look-alike styles are worst, while fullwidth text and native formatting are best. The families below are ordered from most to least disruptive. The rating for each style also appears under Compatibility & details in the generator.

Family Example Why it is a problem Rating
Upside-down and mirror ɐʎɐW Look-alike characters in reverse order; even a perfect reader would say the word backwards Unreadable
Glitch (medium and heavy) M̷̢a̶y̵a̸ Dozens of combining marks per letter, each of which may be announced Unreadable
Look-alike alphabets 爪卂ㄚ卂, ᗰᗩYᗩ, ꎭꍏꌩꍏ Real letters from Chinese, syllabics, Yi and other scripts; read as those languages or skipped Unreadable
Mathematical styles 𝐌𝐚𝐲𝐚, 𝓜𝓪𝔂𝓪, 𝔐𝔞𝔶𝔞, 𝕄𝕒𝕪𝕒 Separate maths characters; often read by name or skipped Reads oddly
Enclosed letters Ⓜⓐⓨⓐ, 🅼🅰🆈🅰 Read as “circled” letters; some squared letters may be announced by emoji names such as “A button (blood type)” Reads oddly
Small caps and superscripts ᴍᴀʏᴀ, ᴹᵃʸᵃ Phonetic and modifier letters; may be read as phonetic symbol names Reads oddly
Strikethrough and underline M̶a̶y̶a̶ The letters are normal, but each one is followed by a mark that may be announced Reads oddly
Wide (fullwidth) Maya Usually treated as normal letters Generally reads normally
Platform formatting Maya via *bold* The characters don’t change at all Reads normally

Two patterns are clear. Anything that reverses order or piles up marks is the worst, because no amount of software cleverness recovers the words. And look-alike alphabets are a special case: they aren’t styled Latin at all, so to a screen reader set to read Chinese or Cherokee, they are text in another language.

Four rules for using fancy text responsibly

1. Style decoration, not information

Use styled letters for parts of a message that nobody needs to understand: a decorative name, a one-word heading, a flourish. Keep anything a reader must take in, such as a date, a price, an instruction or a call to action, in plain text.

A useful test: if a listener heard nothing but silence where the styled part is, would they miss anything important? If yes, it shouldn’t be styled.

2. Keep a plain-text version close by

If your display name is styled, make sure your @username or the first line of your bio says the same thing plainly. Platforms such as Instagram reportedly don’t match styled letters in search either, so the plain version helps people find you too.

For a styled heading in a caption, repeat the words in plain text directly below, or style only a decorative frame around plain words: ✦ Summer Sale ✦ reads far better than 𝐒𝐮𝐦𝐦𝐞𝐫 𝐒𝐚𝐥𝐞. The text decorator adds frames and symbols around ordinary letters. And if you have inherited styled text you need to clean up, the unstyle tool converts it back to plain letters.

3. Give images of text real alt text

When the look matters more than copy and paste, an image is often the more accessible choice, because you can describe it. A lettering graphic made with the Lettering Image Maker or drawn by hand should carry alt text containing the exact words. Web accessibility guidelines treat images of text as something to use only when the visual presentation is essential (WCAG success criterion 1.4.5), which is exactly the case for lettering and logos, and alt text is what makes that acceptable.

Good alt text for a lettering image:

  • States the words exactly as written: “Happy birthday, Sam”.
  • Mentions the style only if it adds meaning: “in gold cursive on a pink background”.
  • Skips “image of” or “picture of”, which screen readers already announce.

These are the places where styled characters break function as well as accessibility:

Element What goes wrong when styled
Hashtags A different string from the plain tag, so it won’t join the same feed; read badly aloud. Write them plainly in CamelCase (#WeddingIdeas) so screen readers pronounce the words
Links and URLs Styled letters aren’t valid in most addresses; the link won’t be tappable or will lead nowhere
@mentions and handles Usernames are plain ASCII on most platforms, so a styled mention won’t resolve
Email addresses and phone numbers Can’t be tapped, copied into a dialler, or reliably searched
Discount codes, passwords, booking references People copy them; styled characters won’t match what your system expects

What are safer ways to add emphasis?

Native formatting, such as WhatsApp asterisks or Discord markdown, is the safest way to add emphasis.

You want Safer choice Where it works
Bold or italic in a chat message Native formatting: *bold* _italic_ ~strike~ WhatsApp (formatting guide)
Bold, italic, headings in a message Markdown: **bold**, *italic*, # Heading Discord messages (markdown cheat sheet)
A decorative look around a name Plain name inside symbols: ꧁ Maya ꧂ Bios, display names, game tags
Emphasis in a caption Capitalise one word, or put it on its own line Every platform
A specific typeface or effect An image with alt text Posts, stories, thumbnails
A stylish display name One short styled word plus plain text Display names, nicknames
Wide aesthetic text Fullwidth letters, which generally read normally Captions, bios

Native formatting is the clear winner wherever it exists, because it changes the appearance without changing a single character.

What if I post for a business, school or charity?

Set a house rule: no styled Unicode in posts that announce important information. Personal accounts can make their own trade-offs, but an organisation’s posts are often the only way people get important information from it, and public bodies may have legal accessibility duties. A simple house rule avoids most problems:

  • No styled Unicode in posts that announce dates, prices, closures, deadlines or safety information.
  • Styled text, if used at all, is limited to a decorative word or the account’s display name.
  • Every image containing words gets alt text before it is published.
  • Whoever schedules posts checks them with a screen reader once in a while, not only when someone complains.

Writing the rule down matters more than its exact wording, because styled text usually creeps in one well-meant post at a time.

How do I check a post before publishing?

Run five quick checks, the last of which is listening with a real screen reader.

  1. Read the post back with every styled character removed. Does it still make sense?
  2. Is every hashtag, link, handle and contact detail plain?
  3. Have you avoided upside-down, glitch and look-alike styles for anything longer than a word or two?
  4. Does every image that contains words have alt text with those exact words?
  5. If you have a phone handy, turn on its screen reader (VoiceOver on iPhone, TalkBack on Android) and listen to the post yourself. It takes a minute, and it is the most convincing test there is.

So, are fancy fonts accessible? Only when styled text stays decorative and plain text carries the message.

Frequently asked questions

Basics

Are fancy fonts accessible for screen reader users?
Mostly not. Fancy text is not a font; each styled letter is a separate Unicode character, so a screen reader may read its long name, skip it or read a plain letter, and you cannot control which. Fullwidth text and native formatting are the best-behaved options.
What does a screen reader say for bold Unicode text?
It may announce each letter as a long name beginning with mathematical, such as mathematical sans-serif script t, or skip the letters entirely. Scope's accessibility article describes both outcomes. Results vary between JAWS, NVDA, VoiceOver, Narrator and TalkBack, and with software version and settings.

Where it works

Is it okay to use fancy text in my display name?
A styled display name is one of the lower-risk uses, because it is short and people can usually find you by your plain @username. Keep it brief, avoid the unreadable families, and consider styling only part of it, such as a cursive first name followed by plain text. Keep your @handle plain, since most platforms reject styled characters there.
Do styled hashtags work?
Usually not as intended. A hashtag spelled in bold or cursive characters is a different string from the plain tag, so it won't collect posts with the normal spelling, and some apps don't treat it as a tag at all. Keep hashtags plain and capitalise each word, like #BackToSchool, so screen readers read them correctly.
Should a business or school use fancy text in posts?
It is better not to for anything that matters. Public bodies may have legal accessibility duties, and an organisation's posts are often the only way people get information. A simple house rule is no styled Unicode in posts announcing dates, prices, closures, deadlines or safety information, and alt text on every image of words.

How it works

Does VoiceOver read fancy text?
It reads the characters, but often not as words. In the 2019 recording Kent C. Dodds shared, VoiceOver worked through the styled words as strings of character descriptions instead of reading them as words. Behaviour differs between iOS versions and settings, but you should assume a VoiceOver user will hear something slower and harder to follow than plain text.
How do I make text in an image accessible?
Add alt text that contains the exact words in the image, and describe the look only if it matters, for example "Hand-lettered sign reading Open Late, in red brush script." Most social platforms offer an alt text field on upload. If the image carries a date or address, repeat it in the caption as well.

Tips & limits

Which fancy font is most accessible?
Wide (fullwidth) text is generally the best behaved, because most screen readers treat fullwidth letters as ordinary letters. Platform-native formatting is better still: WhatsApp's bold and italic markers or Discord's markdown change the appearance without changing the characters, so screen readers read the words normally. Upside-down, glitch and look-alike styles are the worst choices.
How can I check that my fancy text post is accessible?
Read the post back with every styled character removed and see whether it still makes sense. Then turn on VoiceOver on iPhone or TalkBack on Android and listen to it yourself. It takes a minute and is the most convincing test. Also check that hashtags, links and handles are plain.