Windows Alt Codes: The Complete Reference List

This is the complete, up-to-date reference list of Windows Alt codes. They originated from ASCII-based character sets such as IBM Code Page 437 and Windows Code Page 1252. Alt codes are keyboard shortcuts built into Microsoft Windows that let you type a wide range of characters by holding the Alt key and entering a numeric code on the numeric keypad. They are also known as Alt key codes or Alt numeric pad codes.

This reference list includes Alt codes for special characters and symbols like accented Latin letters (ñ, é, ü, â), Greek letters (Σ, Ω, π, α), mathematical symbols (÷, ±, ∞, √), punctuation marks (•, ¶, §, ‼), currency symbols (£, €, ¥, ¢), box-drawing and graphical symbols (░, ▓, ▒, █), and emoticons and emoji (☺, ♥, ☼, ♫). While it covers all characters available via Alt codes, including those already present on a standard QWERTY keyboard, the majority correspond to special characters that are not found on a standard keyboard, making Alt codes the fastest way to insert them in Windows.

New to Alt codes? See How to Use Alt Codes to Enter Special Characters. Having trouble? Read Why Do Alt Codes Not Work in Some Programs?

How to read this Alt codes list:

  • Alt codes without leading zeroes (Alt + nnn) produce characters based on IBM Code Page 437 (DOS).
  • Alt codes with leading zeroes (Alt + 0nnn) produce characters based on Windows Code Page 1252.
  • Alt codes with and without leading zeroes sometimes produce the same character and sometimes different ones. The list below shows both side by side so you can compare.
  • Alt codes in blue represent non-printable and non-displayable control characters.
  • Click or tap any character in the list to copy it to your clipboard instantly.
WP Data Tables

What are Alt codes?

Alt codes are keyboard shortcuts for Windows that let you type any character by holding the Alt key and entering a numeric code on the numeric keypad. Because of this, they are also called Alt key codes, Alt numeric pad codes, or Alt num pad codes.

Alt codes are especially useful in Windows applications such as Microsoft Word or Outlook, where users frequently need to insert special characters (accented letters, symbols, arrows, math operators) quickly and without switching input methods.

It is important to note that Alt codes may not work in all applications or on all operating systems. Some programs have their own input methods or require different key combinations for special characters. If Alt codes are not working as expected, consult the documentation for your specific software to find the correct input method. For more details, see Why Do Alt Codes Not Work in Some Programs?

How Alt Codes Work: History and Technical Background

On the original IBM Personal Computer, users could insert a special character from IBM’s Code Page 437 (DOS) by holding the Alt key and typing a decimal code (0–255) on the numeric keypad, which gave rise to the term “Alt codes.” When Microsoft later introduced new character sets for Windows, including Windows Code Page 1252 and eventually Unicode, they chose to retain Code Page 437 and its decimal codes, since many users had already memorized them. Microsoft then added support for Windows Code Page 1252 characters by requiring a leading zero before their decimal codes (e.g., Alt 0163 instead of Alt 163).

Alt Codes for DOS / IBM Code Page 437 (Alt 1 – Alt 255)

Alt codes without leading zeroes (Alt 1 – Alt 255) produce characters based on IBM Code Page 437, the original character set of the IBM PC and DOS. Code Page 437 is also known as CP437, OEM-US, OEM 437, PC-8, or DOS Latin US. It is built on top of the older ASCII (US-ASCII) standard, of which it is a superset.

What each range covers in IBM Code Page 437:

  • Alt 0 – Alt 31 and Alt 127 produce a range of graphical characters and symbols, such as smiley faces, playing card suits, musical notes, and arrows. In standard ASCII, codes 0–31 and 127 are reserved for non-printable control characters (line feed, carriage return, etc.) that have since become obsolete. IBM repurposed these codes in Code Page 437 and assigned them decorative graphical characters instead.
  • Alt 32 – Alt 126 produce the standard ASCII printable characters: Latin letters, digits, punctuation marks, and common symbols. These are identical to their standard ASCII equivalents.
  • Alt 128 – Alt 255 produce extended characters unique to Code Page 437, including internationally accented letters (diacritics), Greek letters, box-drawing (line-drawing) symbols, mathematical symbols, and miscellaneous symbols.

Alt Codes for Windows / Code Page 1252 (Alt 01 – Alt 0255)

Alt codes with leading zeroes (Alt 01 – Alt 0255) produce characters based on Windows Code Page 1252 (CP-1252, also called Windows-1252). Like Code Page 437, Windows Code Page 1252 is built on ASCII. The first 128 codes are identical to ASCII.

Why Windows Code Page 1252 is not actually an “ANSI Code Page”

Windows Code Page 1252 is widely, but incorrectly, called an “ANSI Code Page.” The confusion dates to the early days of Windows, when Microsoft implemented the character set based on an American National Standards Institute (ANSI) draft, anticipating it would become an official standard. That draft was never finalised as an ANSI standard; it forked and became the ISO 8859-1 standard instead, which is not identical to Windows Code Page 1252. Despite its widespread use, Windows Code Page 1252 has never been an ANSI standard. Calling it an “ANSI Code Page” is therefore a misnomer: historically persistent, but technically incorrect.

What each range covers in Windows Code Page 1252:

  • Alt 0 – Alt 031 and Alt 0127 do not produce any visible characters. These codes correspond directly to ASCII control characters (codes 0–31 and 127), which are non-printable and non-displayable. They are associated with legacy teletype commands such as line feed (LF) and carriage return (CR).
  • Alt 032 – Alt 0126 produce the standard ASCII printable characters: Latin letters, digits, punctuation marks, and common symbols. In this range, IBM Code Page 437 and Windows Code Page 1252 produce identical characters.
  • Alt 0128 – Alt 0255 produce extended characters from Windows Code Page 1252, which differ widely from those in Code Page 437. These include internationally accented letters (diacritics) for Latin-1 languages (Afrikaans, Basque, Catalan, Danish, Dutch, English, Faroese, Finnish, French, Galician, German, Icelandic, Indonesian, Italian, Malay, Norwegian, Portuguese, Spanish, Swahili, and Swedish), European punctuation, currency symbols (including the Euro sign €), and miscellaneous symbols.

Note: In many Windows applications, Alt codes starting at 256 and above produce the same character whether or not they include a leading zero. For example, Alt 256 and Alt 0256 both produce Ā.

More Windows Alt Codes by Category

This page covers the original Windows Alt code set based on DOS / IBM Code Page 437 and Windows Code Page 1252. The site also contains a much wider range of Alt codes that go beyond these older legacy character sets, corresponding to characters from the newer Unicode standard. Browse the sections on Miscellaneous Symbols, Letters with Accents, and Math Symbols to find categorized lists of Alt code keyboard shortcuts, including Alt codes for Check Mark Symbols and Alt codes for Heart Symbols. A free printable Windows Alt Codes PDF Reference Chart is also available to download.

References and Sources:
Windows code page (https://en.wikipedia.org/wiki/Windows_code_page)
ISO/IEC 8859-1 (https://en.wikipedia.org/wiki/ISO/IEC_8859-1)
Code Pages (https://docs.microsoft.com/en-us/windows/win32/intl/code-pages)
A brief introduction to code pages and Unicode (https://www.ibm.com/developerworks/library/ws-codepages/index.html)