Stacked Text Generator

Type a line and copy it back with a small copy of every letter stacked on top.

Sample. Type or paste your own to replace it.

Small letter on top 26 characters

Hͪeͤaͣrͬtͭ tͭoͦ hͪeͤaͣrͬtͭ

Every letter and number here has a character in this set.

Same text, other sets

  • Capitals underneath 26 charactersHͪEͤAͣRͬTͭ TͭOͦ HͪEͤAͣRͬTͭCapitals only, so a small letter becomes its capital.Every letter and number here has a character in this set.
  • Raised and lowered pair 26 charactersʰₕᵉₑᵃₐʳᵣᵗₜ ᵗₜᵒₒ ʰₕᵉₑᵃₐʳᵣᵗₜSmall letters only, so a capital becomes its small letter.Every letter and number here has a character in this set.

More options

Use these for fun, not for anything that matters. Screen readers read many of these characters badly or skip them, search cannot find them, and some apps strip them or show empty boxes.

All 111 characters: tap one to copy it

111 characters in 5 groups.

With a keyboard: Tab goes into the table once, the arrow keys move inside it, and Enter copies.

A small copy on top of each letter 23

The same, with a capital underneath 23

Raised and lowered pairs 27

Letters that stay plain 10

Small letters to paste on top by hand 28

How it works

This stacked text generator puts a small copy of each letter on top of it, using Unicode's combining letters. 23 letters stack, and J, Q and Y stay plain. Some apps strip or block these characters, and screen readers may read them badly.

Read the full guide

Type a line, copy the stack

The large card is Small letter on top. Capitals underneath sets the line in capitals with the same small letters above. Raised and lowered pair puts a raised letter beside a lowered one, and it is the only row that changes digits.

Why the letters overlap

An overlapping text generator of this kind adds a combining mark after each letter. The mark takes no space of its own, so it is drawn over the letter before it. Unicode files 19 of the 23 as medieval superscript letter diacritics, written directly above other letters in Germanic manuscripts. A stacked font generator hands over no font: the line pastes as text.

Tips
  • Every stacked letter counts twice. Heart to heart is 14 characters typed and 26 stacked, so check the limit of a name field first.
  • Numbers stay plain in the first two rows: Unicode has no combining form of 0 to 9. The third row raises and lowers them.

Questions and answers

How do I stack two different words?

By hand, a letter at a time. Type one letter of the bottom word, then tap a tile under Small letters to paste on top by hand and paste it straight after. For me over to: t, small m, o, small e.

Which letters cannot be stacked?

J, Q and Y, because Unicode has no combining small j, q or y. The raised and lowered row does J but leaves nine letters plain: b, c, d, f, g, q, w, y and z. Each has a note under Letters that stay plain.

Why do I see boxes, or small letters beside the big ones?

The font on that screen lacks the mark or cannot place it. Thirteen small letters date from Unicode 3.2 of March 2002; g, k, l, n, s and z came in April 2008, and b, f, p and w in June 2014.

All 111 characters

A small copy on top of each letter 23

  • Small a with a small a on top U+0061 U+0363. The letter a, then combining Latin small letter a, a mark that sits over the letter before it. One of the 13 oldest, in Unicode 3.2 of March 2002.
  • Small b with a small b on top U+0062 U+1DE8. The letter b, then combining Latin small letter b, a mark that sits over the letter before it. Added in Unicode 7.0 of June 2014, so older fonts may lack it.
  • Small c with a small c on top U+0063 U+0368. The letter c, then combining Latin small letter c, a mark that sits over the letter before it. One of the 13 oldest, in Unicode 3.2 of March 2002.
  • Small d with a small d on top U+0064 U+0369. The letter d, then combining Latin small letter d, a mark that sits over the letter before it. One of the 13 oldest, in Unicode 3.2 of March 2002.
  • Small e with a small e on top U+0065 U+0364. The letter e, then combining Latin small letter e, a mark that sits over the letter before it. One of the 13 oldest, in Unicode 3.2 of March 2002.
Show all 111 characters (106 more)

A small copy on top of each letter, continued

  • Small f with a small f on top U+0066 U+1DEB. The letter f, then combining Latin small letter f, a mark that sits over the letter before it. Added in Unicode 7.0 of June 2014, so older fonts may lack it.
  • Small g with a small g on top U+0067 U+1DDA. The letter g, then combining Latin small letter g, a mark that sits over the letter before it. Added in Unicode 5.1 of April 2008, so older fonts may lack it.
  • Small h with a small h on top U+0068 U+036A. The letter h, then combining Latin small letter h, a mark that sits over the letter before it. One of the 13 oldest, in Unicode 3.2 of March 2002.
  • Small i with a small i on top U+0069 U+0365. The letter i, then combining Latin small letter i, a mark that sits over the letter before it. One of the 13 oldest, in Unicode 3.2 of March 2002.
  • Small k with a small k on top U+006B U+1DDC. The letter k, then combining Latin small letter k, a mark that sits over the letter before it. Added in Unicode 5.1 of April 2008, so older fonts may lack it.
  • Small l with a small l on top U+006C U+1DDD. The letter l, then combining Latin small letter l, a mark that sits over the letter before it. Added in Unicode 5.1 of April 2008, so older fonts may lack it.
  • Small m with a small m on top U+006D U+036B. The letter m, then combining Latin small letter m, a mark that sits over the letter before it. One of the 13 oldest, in Unicode 3.2 of March 2002.
  • Small n with a small n on top U+006E U+1DE0. The letter n, then combining Latin small letter n, a mark that sits over the letter before it. Added in Unicode 5.1 of April 2008, so older fonts may lack it.
  • Small o with a small o on top U+006F U+0366. The letter o, then combining Latin small letter o, a mark that sits over the letter before it. One of the 13 oldest, in Unicode 3.2 of March 2002.
  • Small p with a small p on top U+0070 U+1DEE. The letter p, then combining Latin small letter p, a mark that sits over the letter before it. Added in Unicode 7.0 of June 2014, so older fonts may lack it.
  • Small r with a small r on top U+0072 U+036C. The letter r, then combining Latin small letter r, a mark that sits over the letter before it. One of the 13 oldest, in Unicode 3.2 of March 2002.
  • Small s with a small s on top U+0073 U+1DE4. The letter s, then combining Latin small letter s, a mark that sits over the letter before it. Added in Unicode 5.1 of April 2008, so older fonts may lack it.
  • Small t with a small t on top U+0074 U+036D. The letter t, then combining Latin small letter t, a mark that sits over the letter before it. One of the 13 oldest, in Unicode 3.2 of March 2002.
  • Small u with a small u on top U+0075 U+0367. The letter u, then combining Latin small letter u, a mark that sits over the letter before it. One of the 13 oldest, in Unicode 3.2 of March 2002.
  • Small v with a small v on top U+0076 U+036E. The letter v, then combining Latin small letter v, a mark that sits over the letter before it. One of the 13 oldest, in Unicode 3.2 of March 2002.
  • Small w with a small w on top U+0077 U+1DF1. The letter w, then combining Latin small letter w, a mark that sits over the letter before it. Added in Unicode 7.0 of June 2014, so older fonts may lack it.
  • Small x with a small x on top U+0078 U+036F. The letter x, then combining Latin small letter x, a mark that sits over the letter before it. One of the 13 oldest, in Unicode 3.2 of March 2002.
  • Small z with a small z on top U+007A U+1DE6. The letter z, then combining Latin small letter z, a mark that sits over the letter before it. Added in Unicode 5.1 of April 2008, so older fonts may lack it.

The same, with a capital underneath 23

  • Capital A with a small a on top U+0041 U+0363. Capital A, then combining Latin small letter a. The second row uses it for a as well as A.
  • Capital B with a small b on top U+0042 U+1DE8. Capital B, then combining Latin small letter b. The second row uses it for b as well as B.
  • Capital C with a small c on top U+0043 U+0368. Capital C, then combining Latin small letter c. The second row uses it for c as well as C.
  • Capital D with a small d on top U+0044 U+0369. Capital D, then combining Latin small letter d. The second row uses it for d as well as D.
  • Capital E with a small e on top U+0045 U+0364. Capital E, then combining Latin small letter e. The second row uses it for e as well as E.
  • Capital F with a small f on top U+0046 U+1DEB. Capital F, then combining Latin small letter f. The second row uses it for f as well as F.
  • Capital G with a small g on top U+0047 U+1DDA. Capital G, then combining Latin small letter g. The second row uses it for g as well as G.
  • Capital H with a small h on top U+0048 U+036A. Capital H, then combining Latin small letter h. The second row uses it for h as well as H.
  • Capital I with a small i on top U+0049 U+0365. Capital I, then combining Latin small letter i. The second row uses it for i as well as I.
  • Capital K with a small k on top U+004B U+1DDC. Capital K, then combining Latin small letter k. The second row uses it for k as well as K.
  • Capital L with a small l on top U+004C U+1DDD. Capital L, then combining Latin small letter l. The second row uses it for l as well as L.
  • Capital M with a small m on top U+004D U+036B. Capital M, then combining Latin small letter m. The second row uses it for m as well as M.
  • Capital N with a small n on top U+004E U+1DE0. Capital N, then combining Latin small letter n. The second row uses it for n as well as N.
  • Capital O with a small o on top U+004F U+0366. Capital O, then combining Latin small letter o. The second row uses it for o as well as O.
  • Capital P with a small p on top U+0050 U+1DEE. Capital P, then combining Latin small letter p. The second row uses it for p as well as P.
  • Capital R with a small r on top U+0052 U+036C. Capital R, then combining Latin small letter r. The second row uses it for r as well as R.
  • Capital S with a small s on top U+0053 U+1DE4. Capital S, then combining Latin small letter s. The second row uses it for s as well as S.
  • Capital T with a small t on top U+0054 U+036D. Capital T, then combining Latin small letter t. The second row uses it for t as well as T.
  • Capital U with a small u on top U+0055 U+0367. Capital U, then combining Latin small letter u. The second row uses it for u as well as U.
  • Capital V with a small v on top U+0056 U+036E. Capital V, then combining Latin small letter v. The second row uses it for v as well as V.
  • Capital W with a small w on top U+0057 U+1DF1. Capital W, then combining Latin small letter w. The second row uses it for w as well as W.
  • Capital X with a small x on top U+0058 U+036F. Capital X, then combining Latin small letter x. The second row uses it for x as well as X.
  • Capital Z with a small z on top U+005A U+1DE6. Capital Z, then combining Latin small letter z. The second row uses it for z as well as Z.

Raised and lowered pairs 27

  • Raised 0, then lowered 0 U+2070 U+2080. Superscript zero, then subscript zero. Only this row changes digits: Unicode has no combining form of 0 to 9 to put on top.
  • Raised 1, then lowered 1 U+00B9 U+2081. Superscript one, then subscript one. Only this row changes digits: Unicode has no combining form of 0 to 9 to put on top.
  • Raised 2, then lowered 2 U+00B2 U+2082. Superscript two, then subscript two. Only this row changes digits: Unicode has no combining form of 0 to 9 to put on top.
  • Raised 3, then lowered 3 U+00B3 U+2083. Superscript three, then subscript three. Only this row changes digits: Unicode has no combining form of 0 to 9 to put on top.
  • Raised 4, then lowered 4 U+2074 U+2084. Superscript four, then subscript four. Only this row changes digits: Unicode has no combining form of 0 to 9 to put on top.
  • Raised 5, then lowered 5 U+2075 U+2085. Superscript five, then subscript five. Only this row changes digits: Unicode has no combining form of 0 to 9 to put on top.
  • Raised 6, then lowered 6 U+2076 U+2086. Superscript six, then subscript six. Only this row changes digits: Unicode has no combining form of 0 to 9 to put on top.
  • Raised 7, then lowered 7 U+2077 U+2087. Superscript seven, then subscript seven. Only this row changes digits: Unicode has no combining form of 0 to 9 to put on top.
  • Raised 8, then lowered 8 U+2078 U+2088. Superscript eight, then subscript eight. Only this row changes digits: Unicode has no combining form of 0 to 9 to put on top.
  • Raised 9, then lowered 9 U+2079 U+2089. Superscript nine, then subscript nine. Only this row changes digits: Unicode has no combining form of 0 to 9 to put on top.
  • Raised a, then lowered a U+1D43 U+2090. Modifier letter small a, then Latin subscript small letter a. They sit side by side, one high and one low. The newer of the two is from Unicode 4.1 of March 2005.
  • Raised e, then lowered e U+1D49 U+2091. Modifier letter small e, then Latin subscript small letter e. They sit side by side, one high and one low. The newer of the two is from Unicode 4.1 of March 2005.
  • Raised h, then lowered h U+02B0 U+2095. Modifier letter small h, then Latin subscript small letter h. They sit side by side, one high and one low. The newer of the two is from Unicode 6.0 of October 2010.
  • Raised i, then lowered i U+2071 U+1D62. Superscript Latin small letter i, then Latin subscript small letter i. They sit side by side, one high and one low. The newer of the two is from Unicode 4.0 of April 2003.
  • Raised j, then lowered j U+02B2 U+2C7C. Modifier letter small j, then Latin subscript small letter j. They sit side by side, one high and one low. The newer of the two is from Unicode 5.1 of April 2008.
  • Raised k, then lowered k U+1D4F U+2096. Modifier letter small k, then Latin subscript small letter k. They sit side by side, one high and one low. The newer of the two is from Unicode 6.0 of October 2010.
  • Raised l, then lowered l U+02E1 U+2097. Modifier letter small l, then Latin subscript small letter l. They sit side by side, one high and one low. The newer of the two is from Unicode 6.0 of October 2010.
  • Raised m, then lowered m U+1D50 U+2098. Modifier letter small m, then Latin subscript small letter m. They sit side by side, one high and one low. The newer of the two is from Unicode 6.0 of October 2010.
  • Raised n, then lowered n U+207F U+2099. Superscript Latin small letter n, then Latin subscript small letter n. They sit side by side, one high and one low. The newer of the two is from Unicode 6.0 of October 2010.
  • Raised o, then lowered o U+1D52 U+2092. Modifier letter small o, then Latin subscript small letter o. They sit side by side, one high and one low. The newer of the two is from Unicode 4.1 of March 2005.
  • Raised p, then lowered p U+1D56 U+209A. Modifier letter small p, then Latin subscript small letter p. They sit side by side, one high and one low. The newer of the two is from Unicode 6.0 of October 2010.
  • Raised r, then lowered r U+02B3 U+1D63. Modifier letter small r, then Latin subscript small letter r. They sit side by side, one high and one low. The newer of the two is from Unicode 4.0 of April 2003.
  • Raised s, then lowered s U+02E2 U+209B. Modifier letter small s, then Latin subscript small letter s. They sit side by side, one high and one low. The newer of the two is from Unicode 6.0 of October 2010.
  • Raised t, then lowered t U+1D57 U+209C. Modifier letter small t, then Latin subscript small letter t. They sit side by side, one high and one low. The newer of the two is from Unicode 6.0 of October 2010.
  • Raised u, then lowered u U+1D58 U+1D64. Modifier letter small u, then Latin subscript small letter u. They sit side by side, one high and one low. The newer of the two is from Unicode 4.0 of April 2003.
  • Raised v, then lowered v U+1D5B U+1D65. Modifier letter small v, then Latin subscript small letter v. They sit side by side, one high and one low. The newer of the two is from Unicode 4.0 of April 2003.
  • Raised x, then lowered x U+02E3 U+2093. Modifier letter small x, then Latin subscript small letter x. They sit side by side, one high and one low. The newer of the two is from Unicode 4.1 of March 2005.

Letters that stay plain 10

  • B: where it stays plain U+0062. The first two rows stack B. Unicode has no lowered b, so the third row leaves B plain.
  • C: where it stays plain U+0063. The first two rows stack C. Unicode has no lowered c, so the third row leaves C plain.
  • D: where it stays plain U+0064. The first two rows stack D. Unicode has no lowered d, so the third row leaves D plain.
  • F: where it stays plain U+0066. The first two rows stack F. Unicode has no lowered f, so the third row leaves F plain.
  • G: where it stays plain U+0067. The first two rows stack G. Unicode has no lowered g, so the third row leaves G plain.
  • J: where it stays plain U+006A. Unicode has no combining small j, so J stays plain in the first two rows. The third row has a pair for it.
  • Q: where it stays plain U+0071. Unicode has no combining small q and no lowered q, so Q stays plain in all three rows.
  • W: where it stays plain U+0077. The first two rows stack W. A lowered w (U+209D) arrived only in Unicode 18.0 of September 2026, and a font made before then cannot hold it, so the third row leaves W plain.
  • Y: where it stays plain U+0079. Unicode has no combining small y, so Y stays plain in the first two rows. A lowered y (U+209E) arrived only in Unicode 18.0 of September 2026, and a font made before then cannot hold it, so the third row leaves Y plain too.
  • Z: where it stays plain U+007A. The first two rows stack Z. A lowered z (U+209F) arrived only in Unicode 18.0 of September 2026, and a font made before then cannot hold it, so the third row leaves Z plain.

Small letters to paste on top by hand 28

  • Small a for the top U+0363. Combining Latin small letter a. Paste it straight after any letter and it sits on top of that letter. In Unicode 3.2 of March 2002.
  • Small b for the top U+1DE8. Combining Latin small letter b. Paste it straight after any letter and it sits on top of that letter. In Unicode 7.0 of June 2014.
  • Small c for the top U+0368. Combining Latin small letter c. Paste it straight after any letter and it sits on top of that letter. In Unicode 3.2 of March 2002.
  • Small capital G for the top U+1DDB. Combining Latin letter small capital G. Paste it straight after any letter. In Unicode 5.1 of April 2008.
  • Small capital L for the top U+1DDE. Combining Latin letter small capital L. Paste it straight after any letter. In Unicode 5.1 of April 2008.
  • Small capital M for the top U+1DDF. Combining Latin letter small capital M. Paste it straight after any letter. In Unicode 5.1 of April 2008.
  • Small capital N for the top U+1DE1. Combining Latin letter small capital N. Paste it straight after any letter. In Unicode 5.1 of April 2008.
  • Small capital R for the top U+1DE2. Combining Latin letter small capital R. Paste it straight after any letter. In Unicode 5.1 of April 2008.
  • Small d for the top U+0369. Combining Latin small letter d. Paste it straight after any letter and it sits on top of that letter. In Unicode 3.2 of March 2002.
  • Small e for the top U+0364. Combining Latin small letter e. Paste it straight after any letter and it sits on top of that letter. In Unicode 3.2 of March 2002.
  • Small f for the top U+1DEB. Combining Latin small letter f. Paste it straight after any letter and it sits on top of that letter. In Unicode 7.0 of June 2014.
  • Small g for the top U+1DDA. Combining Latin small letter g. Paste it straight after any letter and it sits on top of that letter. In Unicode 5.1 of April 2008.
  • Small h for the top U+036A. Combining Latin small letter h. Paste it straight after any letter and it sits on top of that letter. In Unicode 3.2 of March 2002.
  • Small i for the top U+0365. Combining Latin small letter i. Paste it straight after any letter and it sits on top of that letter. In Unicode 3.2 of March 2002.
  • Small k for the top U+1DDC. Combining Latin small letter k. Paste it straight after any letter and it sits on top of that letter. In Unicode 5.1 of April 2008.
  • Small l for the top U+1DDD. Combining Latin small letter l. Paste it straight after any letter and it sits on top of that letter. In Unicode 5.1 of April 2008.
  • Small m for the top U+036B. Combining Latin small letter m. Paste it straight after any letter and it sits on top of that letter. In Unicode 3.2 of March 2002.
  • Small n for the top U+1DE0. Combining Latin small letter n. Paste it straight after any letter and it sits on top of that letter. In Unicode 5.1 of April 2008.
  • Small o for the top U+0366. Combining Latin small letter o. Paste it straight after any letter and it sits on top of that letter. In Unicode 3.2 of March 2002.
  • Small p for the top U+1DEE. Combining Latin small letter p. Paste it straight after any letter and it sits on top of that letter. In Unicode 7.0 of June 2014.
  • Small r for the top U+036C. Combining Latin small letter r. Paste it straight after any letter and it sits on top of that letter. In Unicode 3.2 of March 2002.
  • Small s for the top U+1DE4. Combining Latin small letter s. Paste it straight after any letter and it sits on top of that letter. In Unicode 5.1 of April 2008.
  • Small t for the top U+036D. Combining Latin small letter t. Paste it straight after any letter and it sits on top of that letter. In Unicode 3.2 of March 2002.
  • Small u for the top U+0367. Combining Latin small letter u. Paste it straight after any letter and it sits on top of that letter. In Unicode 3.2 of March 2002.
  • Small v for the top U+036E. Combining Latin small letter v. Paste it straight after any letter and it sits on top of that letter. In Unicode 3.2 of March 2002.
  • Small w for the top U+1DF1. Combining Latin small letter w. Paste it straight after any letter and it sits on top of that letter. In Unicode 7.0 of June 2014.
  • Small x for the top U+036F. Combining Latin small letter x. Paste it straight after any letter and it sits on top of that letter. In Unicode 3.2 of March 2002.
  • Small z for the top U+1DE6. Combining Latin small letter z. Paste it straight after any letter and it sits on top of that letter. In Unicode 5.1 of April 2008.

How this list was compiled: Unicode Character Database 18.0.0: https://www.unicode.org/Public/18.0.0/ucd/UnicodeData.txt (names, general category, combining class, decompositions), DerivedAge.txt, Blocks.txt and NamesList.txt (subheads and the remark on the medieval superscript letter diacritics); release months from https://www.unicode.org/history/publicationdates.html. All checked 2026-09-20. Licence: own work (facts from the Unicode Character Database, Unicode License v3, restated in our own words)