Unicode subscripts and superscripts

Unicode has subscripted and superscripted versions of a number of characters including a full set of Arabic numerals. These characters allow any polynomial, chemical and certain other equations to be represented in plain text without using any form of markup like HTML or TeX.
The World Wide Web Consortium and the Unicode Consortium have made recommendations on the choice between using markup and using superscript and subscript characters:
The intended use when these characters were added to Unicode was to produce true superscripts and subscripts so that chemical and algebraic formulas could be written without markup. Thus "H₂O" (using a subscript 2 character) is supposed to be identical to "H2O" (with subscript markup).
In reality, many fonts that include these characters ignore the Unicode definition, and instead design the digits for mathematical numerator and denominator glyphs, which are aligned with the cap line and the baseline, respectively. When used with the solidus or the Fraction Slash, they produce an almost typographically correct diagonal fraction, such as ³/₄ for the ¾ glyph. Super and subscript markup does not produce a correct fraction (compare markup /4 with precomposed ¾). The change also makes the superscript letters useful for ordinal indicators, more closely matching the ª and º characters.
Unicode intended that diagonal fractions be rendered by a different mechanism: the fraction slash U+2044 is visually similar to the solidus, but when used with the ordinary digits (not the superscripts and subscripts), it instructs the layout system that a fraction such as ¾ is to be rendered using automatic glyph substitution. User-end support was quite poor for a number of years, but fonts, browsers, word processors, desktop publishing software and others increasingly support the intended Unicode behavior. This browser and your default font render it as 3⁄4. (See Slash (punctuation)#Fractions for rendering in various other fonts.)
The most common superscript digits (1, 2, and 3) were included in ISO-8859-1 and were therefore carried over into those code points in the Latin-1 range of Unicode. The remainder were placed along with basic arithmetical symbols, and later some Latin subscripts, in a dedicated block at U+2070 to U+209F. The table below shows these characters together. Each superscript or subscript character is preceded by a baseline x to show the height of subscripting/superscripting.
Six code points in the "Superscripts and Subscripts" block are unassigned, and remain available for future characters. As of November 2024, three of these (209D, 209E, and 209F) were provisionally assigned to new subscript characters, namely Latin lowercase w, y, and z.
Unicode also includes codepoints for subscript and superscript characters that are intended for semantic usage, in the following blocks:
Consolidated, the Unicode standard contains superscript and subscript versions of a subset of Latin, Greek and Cyrillic letters. Here they are arranged in alphabetical order for comparison (or for copy and paste convenience). Since these characters appear in different Unicode ranges, they may not appear to be the same size or position due to font substitution by the browser. Shaded cells mark petite capitals that are not very distinct from minuscules in roman typeface, but they may be distinct in italic typeface, as is used in some phonetic notation.
Little punctuation is encoded. Parentheses are shown in the basic superscript block above, and the exclamation mark ⟨ꜝ⟩ is shown in the IPA table below. In a supporting font, a question mark may be created with a superscript gelded question mark and a combining dot below: ⟨ˀ̣⟩.
*Superscript versions of S, of petite capital A, D, E and P, of ƀ, and subscript versions of w, y and z have been accepted for a future version of the Unicode Standard.
Some of these superscript capitals are small caps in the source documents in the Unicode proposals.
Shaded cells Greek letters that are indistinguishable from Latin, and so would not be expected to be supported by Unicode.
*Superscript versions of Greek psi and omega have been accepted for a future version of the Unicode Standard.
Superscript and subscript ё, ї, й, ў etc. are handled with diacritics, ⟨𞀵̈ 𞁌̈ 𞀸̆ 𞁁̆⟩ etc. Many of the Cyrillic characters were added to the Cyrillic Extended-D block, which was added to the free Gentium Plus and Andika fonts with version 6.2 in February 2023.
See also small caps in Unicode.
The Latin Extended-F block was created for the remaining superscript IPA letters. They are supported by the free Gentium Plus and Andika fonts. Additional superscript characters for historical and para-IPA letters have been accepted for future versions of the Unicode Standard.
The Unicode characters for superscript (modifier) IPA and extIPA consonant letters are as follows. The entire Latin Extended-F block is dedicated to superscript IPA. Characters for sounds with secondary articulation are set off in parentheses and placed below the base letters.
The spacing diacritic for ejective consonants, U+2BC, works with superscript letters despite not being superscript itself: ⟨ᵖʼ ᵗʼ ᶜʼ ᵏˣʼ⟩. If a distinction needs to be made, the combining apostrophe U+315 may be used: ⟨ᵖ̕ ᵗ̕ ᶜ̕ ᵏˣ̕⟩. The spacing diacritic should be used for a baseline letter with a superscript release, such as [tˢʼ] or [kˣʼ], where the scope of the apostrophe includes the non-superscript letter, but the combining apostrophe U+315 might be used to indicate a weakly articulated ejective consonant like [ᵗ̕] or [ᵏ̕], where the whole consonant is written as a superscript, or together with U+2BC when separate apostrophes have scope over the base and modifier letters, as in ⟨pʼᵏˣ̕⟩.
Spacing diacritics, as in ⟨tʲ⟩, cannot be secondarily superscripted in plain text: ⟨ᵗʲ⟩. (In this instance, the old IPA letter for [tʲ], ⟨ƫ⟩, has a superscript variant in Unicode, U+1DB5 ⟨ᶵ⟩, but that is not generally the case.)
Among older letters, the most common letters with palatal hook are supported; they are displayed in the table above. IPA once had an idiosyncratic curl on some of the palatalized letters: these are the fricative letters ⟨ʆ ʓ⟩. Their superscript forms have been accepted for a future version of the Unicode Standard. Old-style click letters and the retired letters ⟨ƞ⟩ and ⟨ɼ⟩ have also been accepted for a future version of the Unicode Standard. The Teuthonista letter ⟨ꜧ⟩ (U+A727) approximates an old graphic variant of ⟨ɮ⟩. Its superscript is supported at ⟨ꭜ⟩ (U+AB5C).
Among para-IPA letters, superscript variants of Sinological ⟨ȡ ȴ ȵ ȶ⟩, of the Bantuist labio-dental plosives ⟨ȹ⟩ and ⟨ȸ⟩, and of central semivowels ⟨ɉ⟩, ⟨ɥ̶⟩, and ⟨w̶⟩ have been accepted for a future version of the Unicode Standard.
The Unicode characters for superscript (modifier) IPA vowel letters, plus a pair of extended letters ⟨ᵻ ᵿ⟩ found in English dictionaries, are as follows. Recently retired alternative letters such as ⟨ɩ ɷ⟩ are also supported; they are set off in parentheses and placed below the standard IPA letters:
The precomposed Unicode rhotic vowel letters ⟨ɚ ɝ⟩ are not directly supported. The rhotic diacritic U+02DE ◌˞ should be used instead: ⟨ᵊ˞ ᶟ˞⟩.
⟨ɜ⟩ and ⟨ᶟ⟩ are reversed ɛ. The older IPA turned ɛ, ⟨ᴈ⟩, is also supported, at U+1D4C ⟨ᵌ⟩. However, the briefly resurrected vowel letter ⟨ʚ⟩ (U+029A) is not supported, only its reversed replacement ⟨ɞ⟩ is.
Among older letters, ⟨ᴜ⟩ (U+1D1C), a graphic variant of ⟨ʊ⟩, is supported at ⟨ᶸ⟩ (U+1DB8).
Among para-IPA letters, Sinological superscript ⟨ɿ ʅ ʮ ʯ ⟩ have been accepted for a future version of the Unicode Standard.
The two length marks are also supported:
These are used to add length to another superscript, such as ⟨Cʰ𐞁⟩ or ⟨Cʰ𐞂⟩ for long aspiration.
Superscript wildcards (full caps) are largely supported: e.g. ᴺC (prenasalized consonant), ꟲN (prestopped nasal), Pꟳ (fricative release), NᴾF (epenthetic plosive), CVNᵀ (tone-bearing syllable), Cᴸ (liquid or lateral release), Cᴿ (rhotic or resonant release), Vᴳ (off-glide/diphthong), Cⱽ (fleeting vowel). Superscript S for sibilant release has been accepted for a future version of the Unicode Standard; superscript Ʞ for fleeting/epenthetic click has not. Other basic Latin superscript wildcards for tone and weak indeterminate sounds, as described in the article on the International Phonetic Alphabet, are mostly supported. (See table in previous section.)
In addition, a very few IPA letters beyond the basic Latin alphabet have combining forms or are supported as subscripts:
Primarily for compatibility with earlier character sets, Unicode contains a number of characters that compose super- and subscripts with other symbols. In most fonts these render much better than attempts to construct these symbols from the above characters or by using markup.