Short answer: Screen readers announce many symbols by name — © is “copyright,” ° is “degrees” — but whether a given symbol is spoken depends on the user’s punctuation/verbosity setting, and decorative characters (fancy fonts, star dividers, ornament bullets) are often read character by character or skipped entirely. If content will be read aloud, keep symbols meaningful and sparing, and keep important text plain.
This is exactly why “fancy fonts” are risky for names and bios — see fancy text for how those characters behave, and use them as a light accent only.
A screen reader turns on-screen text into speech (or braille) for blind and low-vision users. Symbols complicate that, because a symbol can be spoken, mispronounced, or silently ignored — and it varies by reader and by the user’s settings. Here’s how it actually works, and how to keep your content clear for everyone.
Verbosity: not everything is spoken
Every major screen reader lets the user choose how much punctuation and symbol detail is read, usually None, Some, Most, or All (VoiceOver uses None/Some/All). Most people leave it near the default, which means a lot of punctuation isn’t announced at all. For example, NVDA only reads an ellipsis (…) at the “All”/”Most” level; VoiceOver, by default, doesn’t announce quotation marks, parentheses or dashes — so a screen-reader user may not hear where a quote or an aside begins and ends.
The practical takeaway: you can’t assume a symbol will be read the way you intend, because the listener controls the verbosity.

How common symbols are read
Roughly what the major readers announce (when verbosity allows), though the exact word varies:
| Symbol | Usually announced | Notes |
|---|---|---|
| @ | “at” | reliable |
| & | “ampersand” | reliable |
| % | “percent” | reliable |
| # | “number” / “hash” / “pound” | wording varies |
| * | “star” / “asterisk” | wording varies |
| © ® ™ | “copyright” / “registered” / “trademark” | reliable |
| ° | “degrees” | reliable |
| • | “bullet” | signals a real list item |
| — / – | “dash” | VoiceOver may skip by default |
| ” ” ( ) | “quote” / “paren” or nothing | VoiceOver often silent |
| ≤ ≥ ≠ | “less/greater than or equal to,” “not equal” | JAWS fixed these by 2023 |
| − | “minus” | in a math context |
| → ← ↑ ↓ | “right/left/up/down arrow” or skipped | inconsistent |
Two things stand out: math symbols are now read fairly well (JAWS corrected several old bugs), but arrows and typographic marks are inconsistent — sometimes named, sometimes skipped.
Emoji
Emoji are announced by their official description name — 😀 as “grinning face,” ❤️ as “red heart” — added as the last step before speech. But behaviour differs by reader and platform: JAWS can read compound emoji verbosely, NVDA depends on Windows data that sometimes lags new emoji, VoiceOver reads long sequences slowly, and TalkBack can stumble on skin-tone variants. A string of emoji (“🎉🎉🎉🔥🔥”) becomes a slow, repetitive read-out. Use emoji with intent, not as decoration, and never bury essential meaning in one.
The real problem: fancy text and decorative symbols
This is where accessibility breaks:
- “Fancy fonts” — the bold, script and gothic look (𝓯𝓪𝓷𝓬𝔂, 𝕓𝕠𝕝𝕕) — are separate Unicode characters, so a screen reader reads them letter-by-letter with their Unicode names or skips them. “𝓱𝓮𝓵𝓵𝓸” can come out as a string of “mathematical script small” letters — unintelligible. (More on why: fancy text.)
- Decorative bullets and dividers — stars, diamonds and arrows used as bullets or section breaks “may not be read at all, and if they are, voiced literally,” so a row of “✦✦✦” or “─────” becomes noise. Use a standard filled bullet • for lists and a real rule for dividers (see bullet points and newsletter dividers).
- A quirk worth knowing: Word’s default second-level bullet (the open circle) is actually a lowercase letter “o,” so it’s read as “o” — confusing in a list.
The rule: anything decorative should be invisible to a screen reader or clearly labelled — never something a listener has to sit through.
What this means for you
If your text might be read aloud — a web page, an email, a social post, a document — a few habits keep it accessible:
- Use standard punctuation and a filled-circle bullet; avoid symbol substitutes for styling.
- Use real HTML structure — proper lists, headings and a horizontal rule (
<hr>) — instead of characters that only look like them. - Don’t convey meaning with a symbol alone. Pair it with words (“required *” → “required”), and give meaningful icons/emoji a text alternative or
aria-label. - Keep fancy text out of names, headings and anything important — it’s the least accessible choice you can make.
- Go easy on emoji; one with purpose beats a decorative string.
The major screen readers, briefly
- NVDA (Windows, free) — the least verbose by default; punctuation level under Preferences → Punctuation/Symbol pronunciation.
- JAWS (Windows) — configurable in Quick Settings; supports custom pronunciation via symbol (.sbl) files.
- VoiceOver (Mac/iOS, built in) — verbosity in VoiceOver Utility; custom pronunciations supported; toggle with Command + F5.
- TalkBack (Android, built in) — handles most emoji, less predictable on variants.
- Narrator (Windows, built in) — improving, but test alongside NVDA/JAWS.
Because each behaves differently and users change their settings, don’t rely on any single behaviour — design so the meaning survives whether or not a symbol is spoken.
Test it yourself
You don’t need special equipment. On Windows, install NVDA (free) and listen to your page. On a Mac, press Command + F5 for VoiceOver. On Android, enable TalkBack. Read your own bio, headings and a sample post — if a divider or fancy name turns into a wall of “box drawings” or “mathematical bold,” that’s your cue to simplify.
Frequently asked questions
How do screen readers read symbols?
They announce many symbols by name — @ as “at,” © as “copyright,” ° as “degrees” — but only if the user’s punctuation/verbosity setting is high enough. At default settings, a lot of punctuation and many decorative symbols aren’t spoken at all, and the exact wording varies between NVDA, JAWS, VoiceOver and TalkBack.
Are emoji read by screen readers?
Yes. Emoji are announced by their description name, such as “grinning face” for 😀 or “red heart” for ❤️. Behaviour varies by reader and platform, though — long emoji sequences read slowly, and some readers lag on new emoji or skin-tone variants — so use emoji with intent and never rely on one to carry essential meaning.
Why is fancy text bad for screen readers?
“Fancy fonts” are separate Unicode characters, not styling, so a screen reader reads them letter by letter with their Unicode names or skips them — turning “𝓱𝓮𝓵𝓵𝓸” into gibberish. Keep names, headings and anything important in plain text; use fancy text only as a light decorative accent, if at all.
Which bullets and dividers are accessible?
Use a standard filled-circle bullet (•) for lists and a real horizontal rule for section breaks. Decorative bullets and dividers — stars, diamonds, arrows, rows of ornaments — are often read literally or not at all, which is distracting or confusing. In HTML, use proper list markup and the <hr> element.
Do all screen readers read symbols the same way?
No. NVDA is the least verbose by default, JAWS and VoiceOver announce more, and each can name the same symbol differently or skip it. Users also change their own verbosity settings. Because of that variation, design so your meaning is clear whether or not a symbol is spoken.
How can I test how my content sounds?
Use a screen reader on a device you already have: NVDA is free on Windows, VoiceOver is built into Mac (Command + F5) and iPhone, and TalkBack is built into Android. Read your bio, headings and a sample post to hear how symbols, emoji and any fancy text are announced.
Written by Igor R.. Based on published screen-reader testing (Deque, Eleven Ways) and NVDA, JAWS, VoiceOver and TalkBack behaviour. Last updated July 2026.