ForHosting KIT · Unit converters

Unicode text converter

Hello becomes 𝐇𝐞𝐥𝐥𝐨 in Unicode bold. Turn plain text into bold, italic or monospace letters that paste as ordinary characters into a bio, a chat nickname, a livestream title or a spreadsheet cell that accepts no formatting. Free in your browser.

  • Free
  • Runs in your browser
  • No sign-up
  • Your data stays on your device
Use it from WebAPIEmailTelegramApp soon
If you enter
Text
Hello
You get
Result
𝐇𝐞𝐥𝐥𝐨
Style
Bold
Mapped count
5
Passthrough count
0

Unicode styled text is what people reach for when a channel accepts ordinary characters but not HTML, Markdown, or a custom webfont. A social caption, chat nickname, spreadsheet cell, or support ticket can show letters that look bold, italic, or monospaced if those letters are the official Mathematical Alphanumeric Symbols rather than a font file. This converter takes a non-empty plain text string, applies one of three styles — bold, italic, or monospace — and returns the converted string so you can paste it anywhere general text is allowed. Latin letters always map; digits map in bold and monospace and pass through in italic because the standard defines no italic digit run. Spaces and everyday punctuation stay in place, so a phrase remains a phrase.

How bold, italic, and monospace Unicode mapping works

The Unicode Standard keeps a dedicated block, Mathematical Alphanumeric Symbols, for letters that must retain a typeface even when the surrounding document cannot load a font. Bold capitals occupy U+1D400 through U+1D419, bold small letters occupy U+1D41A through U+1D433, and bold digits occupy U+1D7CE through U+1D7D7.

Italic capitals occupy U+1D434 through U+1D44D and italic small letters occupy U+1D44E through U+1D467, with one official hole: small italic h is not encoded at the would-be code point U+1D455, which is reserved, so the converter uses U+210E PLANCK CONSTANT, the glyph the standard points to for an italic h. Italic digits do not exist in that block, so ASCII digits pass through unchanged when style is italic. Monospace capitals occupy U+1D670 through U+1D689, small letters occupy U+1D68A through U+1D6A3, and digits occupy U+1D7F6 through U+1D7FF.

Conversion walks the string by Unicode scalar value with codePointAt rather than by UTF-16 code unit, because the styled letters live outside the Basic Multilingual Plane and a naive charAt loop would split surrogate pairs. Spaces, tabs, newlines, and common ASCII punctuation remain themselves so Hello, World! is still a greeting after conversion.

Any other symbol — emoji, accented letters, or characters already taken from a different mathematical alphabet — is kept in the result and listed once under unmapped, in first-seen order, so mixed input never disappears.

Where a Unicode text converter earns its keep

Creators who want emphasis in places that strip HTML still need something that looks bold or italic in a bio, a livestream title, or a product badge, and Mathematical Alphanumeric Symbols copy as ordinary text on most modern devices. Developers who generate display names, coupon codes, or terminal-looking labels can pick monospace without shipping a webfont or drawing onto a canvas.

Community teams paste styled strings into campaigns and later need a documented mapping so moderation filters can reason about which letters were transformed rather than treating the result as noise. Support desks receive tickets full of fancy letters and need unmapped reporting when the user mixed emoji, circled letters, or another mathematical alphabet that this converter deliberately does not rewrite.

Keep requests inside the published length cap, pin the converted result in tests, and you get reproducible styled text for captions, profile editors, and edge workers without standing up a font renderer of your own.

Social captions and display names

Turn a plain phrase into Unicode bold or italic for bios, stream titles, and chat nicknames that cannot load a webfont or keep HTML.

Monospace labels and codes

Style SKUs, invite codes, and terminal-looking snippets as Mathematical Monospace so they paste into sheets and tickets as copyable text.

How do I convert plain text to Unicode bold, italic, or monospace?

Send a non-empty string in text and set style to bold, italic, or monospace (bold is the default).

What happens if text is empty or not a string?

The contract requires a non-empty string; empty values and non-string types are not converted and are not billed.

Do digits change in every style?

Bold and monospace map digits 0–9 to their Mathematical digit ranges. Italic has no digit run in Unicode, so ASCII digits pass through unchanged in italic mode.

Why does italic h look different in the code point table?

Unicode leaves U+1D455 reserved. The converter follows the standard and uses U+210E PLANCK CONSTANT for small italic h so the glyph still reads as italic h.

What happens to accented letters and emoji?

They stay in the result exactly as you typed them and are listed once as unmapped, in the order they first appear, so nothing in a mixed phrase disappears.

Everything on this page is available programmatically. This section is for teams who want to wire it into their own systems; everyone else can just use the tool above.

POSThttps://api.kit.forhosting.com/conv/unicode-text

Prefer to automate it? One authenticated POST creates the task; the result comes back by webhook or a signed link. The same capability also runs here on the web, by email and from Telegram — and soon from our app too.

curl -X POST https://api.kit.forhosting.com/conv/unicode-text \
  -H "Authorization: Bearer $KIT_KEY" \
  -H "Content-Type: application/json" \
  -d '{"text":"Hello"}'
{
  "text": "Hello"
}
{
  "task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
  "type": "conv.unicode_text",
  "status": "queued",
  "_links": {
    "result": "/tasks/tsk_…/result"
  }
}

The API is asynchronous: the call returns a task_id immediately and the result arrives by webhook. Polling is capped at 1 req/s per task.

Per request$0.002

Published price — no tokens, no invented credits. A failed task is never charged.

max_chars65536
HTTPCodeMeaning
401unauthorizedMissing or invalid API key.
402insufficient_balanceYour balance doesn't cover the task price.
404unknown_typeThat task type doesn't exist.
429rate_limitedToo many requests. Use the webhook instead of polling.

Empty input and values that are not strings fail with invalid_input instead of a silent blank. The free browser path and the API share one deterministic function, so a preview you copy here is the same payload a script stores.

How bold, italic, and monospace Unicode mapping works

Three of those faces match the everyday search for styled Unicode text: Mathematical Bold, Mathematical Italic, and Mathematical Monospace. The table is closed: no network, no clock, and no randomness, which means identical input always yields identical JSON.

Input contract, response shape, and error behaviour

When style is omitted, bold is the default so a single field still produces a useful converted string. An unsupported style value fails the same way and names the allowed set. When at least one unmapped character exists, the response includes an unmapped array of those unique characters; when every character mapped or passed through cleanly, that field is omitted rather than set to null. Classic checks include converting Hello in bold, converting The in italic so the Planck-constant h is exercised, and converting a mixed phrase with digits in monospace. POST a JSON object with a required non-empty string field named text and an optional style set to bold, italic, or monospace. Aliases such as input, value, data, and s are accepted for text; variant, kind, and font alias style. Length is capped at a documented maximum of scalar characters so a runaway paste cannot exhaust an isolate; oversize input is invalid_input as well. On success the body echoes text and style, returns result as the converted string you actually paste, reports mapped_count for characters that transformed, passthrough_count for spaces, punctuation, and italic digits that stayed put, unmapped_count for distinct leftover symbols, length as the scalar count of result, and script as a stable label of the Mathematical Bold, Italic, or Monospace profile. Successful API calls bill the published base of $0.002 per item; validation failures do not consume prepaid balance.

Campaign fixtures and moderation

Generate a documented converted string for tests and recover which letters mapped, while listing leftover unmapped symbols from mixed paste.

What does the Unicode text converter cost?

The browser tool is free. API requests use prepaid KIT balance at $0.002 per successful call; invalid input is not billed.

Read the full KIT documentation →