Chess Piece Symbols
Unicode provides characters for all six chess piece types in both white and black variants — ♔♕♖♗♘♙ and ♚♛♜♝♞♟ — allowing chess positions to be represented in plain text. This guide lists all Unicode chess symbols with their code points and explains how they are used in text-based chess notation.
Unicode provides a complete set of chess piece symbols -- six piece types in both white and black variants -- that allow chess positions, moves, and diagrams to be represented in plain text without images or special fonts. These 12 characters live in the Miscellaneous Symbols block and have been part of Unicode since version 1.0. This guide covers every chess symbol, explains how they are used in text-based chess notation, and demonstrates how to build simple chess displays with code.
The 12 Chess Piece Characters
All chess symbols reside in the Miscellaneous Symbols block (U+2600--U+26FF):
White Pieces
| Character | Code Point | Name | Piece |
|---|---|---|---|
| ♔ | U+2654 | WHITE CHESS KING | King |
| ♕ | U+2655 | WHITE CHESS QUEEN | Queen |
| ♖ | U+2656 | WHITE CHESS ROOK | Rook |
| ♗ | U+2657 | WHITE CHESS BISHOP | Bishop |
| ♘ | U+2658 | WHITE CHESS KNIGHT | Knight |
| ♙ | U+2659 | WHITE CHESS PIECE PAWN | Pawn |
Black Pieces
| Character | Code Point | Name | Piece |
|---|---|---|---|
| ♚ | U+265A | BLACK CHESS KING | King |
| ♛ | U+265B | BLACK CHESS QUEEN | Queen |
| ♜ | U+265C | BLACK CHESS ROOK | Rook |
| ♝ | U+265D | BLACK CHESS BISHOP | Bishop |
| ♞ | U+265E | BLACK CHESS KNIGHT | Knight |
| ♟ | U+265F | BLACK CHESS PAWN | Pawn |
The naming follows Unicode convention: "white" means the outline (hollow) version, and "black" means the filled (solid) version. On most fonts, white pieces render as outlines and black pieces as filled shapes, though the exact appearance depends on the font.
Encoding Structure
The chess pieces occupy a contiguous range with a logical ordering:
U+2654 ♔ White King
U+2655 ♕ White Queen
U+2656 ♖ White Rook
U+2657 ♗ White Bishop
U+2658 ♘ White Knight
U+2659 ♙ White Pawn
U+265A ♚ Black King
U+265B ♛ Black Queen
U+265C ♜ Black Rook
U+265D ♝ Black Bishop
U+265E ♞ Black Knight
U+265F ♟ Black Pawn
The offset between white and black versions of the same piece is always 6 code points: White King (U+2654) + 6 = Black King (U+265A). This regularity makes it easy to convert between colors programmatically.
Chess Notation Systems
Standard Algebraic Notation (SAN)
Standard Algebraic Notation -- the official notation used by FIDE (the World Chess Federation) -- uses ASCII letters for pieces: K (King), Q (Queen), R (Rook), B (Bishop), N (Knight). Pawns have no letter prefix. Moves are written as the piece letter followed by the destination square:
1. e4 e5
2. Nf3 Nc6
3. Bb5 a6
Unicode chess symbols can replace or supplement the ASCII letters in annotated games:
1. e4 e5
2. ♘f3 ♞c6
3. ♗b5 a6
This makes the notation more visually distinctive and easier to scan, especially in digital publications.
Figurine Algebraic Notation (FAN)
Figurine Algebraic Notation replaces the ASCII piece letters with Unicode chess symbols. It is the preferred notation in most modern chess publications because it is language-independent -- unlike "K" for King in English, "D" for Dame in German, or "R" for Rey in Spanish, the symbols ♔ and ♚ are universal:
| Language | King | Queen | Rook | Bishop | Knight |
|---|---|---|---|---|---|
| English | K | Q | R | B | N |
| German | K | D | T | L | S |
| French | R | D | T | F | C |
| Spanish | R | D | T | A | C |
| FAN | ♔ / ♚ | ♕ / ♛ | ♖ / ♜ | ♗ / ♝ | ♘ / ♞ |
Most chess databases (including ChessBase and Lichess) support FAN notation.
Building Text-Based Chess Boards
ASCII + Unicode Board
A simple approach combines Unicode pieces with ASCII borders:
a b c d e f g h
8 ♜ ♞ ♝ ♛ ♚ ♝ ♞ ♜ 8
7 ♟ ♟ ♟ ♟ ♟ ♟ ♟ ♟ 7
6 . . . . . . . . 6
5 . . . . . . . . 5
4 . . . . ♙ . . . 4
3 . . . . . . . . 3
2 ♙ ♙ ♙ ♙ . ♙ ♙ ♙ 2
1 ♖ ♘ ♗ ♕ ♔ ♗ ♘ ♖ 1
a b c d e f g h
This represents the position after 1. e4.
Python: Board Representation
PIECES = {
"K": "\u2654", "Q": "\u2655", "R": "\u2656",
"B": "\u2657", "N": "\u2658", "P": "\u2659",
"k": "\u265A", "q": "\u265B", "r": "\u265C",
"b": "\u265D", "n": "\u265E", "p": "\u265F",
}
def fen_to_board(fen):
# Parse a FEN string into a printable board
rows = fen.split(" ")[0].split("/")
board = []
for row in rows:
line = []
for ch in row:
if ch.isdigit():
line.extend(["."] * int(ch))
else:
line.append(PIECES.get(ch, ch))
board.append(line)
return board
def print_board(board):
print(" a b c d e f g h")
for i, row in enumerate(board):
rank = 8 - i
print(f"{rank} {' '.join(row)} {rank}")
print(" a b c d e f g h")
# Starting position FEN
fen = "rnbqkbnr/pppppppp/8/8/4P3/8/PPPP1PPP/RNBQKBNR w KQkq e3 0 1"
print_board(fen_to_board(fen))
JavaScript: Interactive Board
const PIECE_MAP = {
K: '\u2654', Q: '\u2655', R: '\u2656',
B: '\u2657', N: '\u2658', P: '\u2659',
k: '\u265A', q: '\u265B', r: '\u265C',
b: '\u265D', n: '\u265E', p: '\u265F',
};
function fenToHTML(fen) {
const rows = fen.split(' ')[0].split('/');
let html = '<table class="chess-board">';
rows.forEach((row, ri) => {
html += '<tr>';
let col = 0;
for (const ch of row) {
if (ch >= '1' && ch <= '8') {
for (let i = 0; i < parseInt(ch); i++) {
const dark = (ri + col) % 2 === 1;
html += `<td class="${dark ? 'dark' : 'light'}"></td>`;
col++;
}
} else {
const dark = (ri + col) % 2 === 1;
html += `<td class="${dark ? 'dark' : 'light'}">${PIECE_MAP[ch]}</td>`;
col++;
}
}
html += '</tr>';
});
return html + '</table>';
}
Chess Symbols in Extended Unicode
Beyond the 12 basic pieces, Unicode 12.0 (2019) added chess symbols to the Chess Symbols block (U+1FA00--U+1FA6F) for use in chess problem composition:
| Type | Code Range | Count | Purpose |
|---|---|---|---|
| Piece rotation | U+1FA00--U+1FA53 | 84 | Rotated and turned pieces for fairy chess |
| Equihoppers | U+1FA60--U+1FA6D | 14 | Fairy chess piece variants |
| Knight rotations | U+1FA70+ | Various | Rotated knight faces |
These extended symbols are used by chess problem composers for "fairy chess" -- chess variants with non-standard pieces and rules. They have very limited font support and are not needed for standard chess.
Font Compatibility
The basic 12 chess pieces have excellent cross-platform support:
| Platform | Font | Quality |
|---|---|---|
| macOS / iOS | Apple Symbols | Excellent -- clean outlines and fills |
| Windows | Segoe UI Symbol | Good -- consistent rendering |
| Linux | DejaVu Sans | Good -- clear distinction between white/black |
| Android | Noto Sans Symbols | Good |
For chess diagrams on the web where pixel-perfect rendering matters, many chess sites use dedicated chess fonts like Chess Merida, Chess Alpha, or Noto Chess which provide perfectly aligned pieces on a grid.
Practical Tips
-
Copy-paste: Chess symbols work in any application that supports Unicode -- emails, documents, social media, and messaging apps.
-
Monospace alignment: For text-based boards, use a monospace font so pieces align on the grid. Not all monospace fonts render chess symbols at the same width.
-
Color vs. fill: "White" and "black" in Unicode refer to fill style (outline vs. solid), not the piece color in a game. You may need CSS styling to color pieces appropriately.
-
FEN integration: The mapping between FEN piece letters (KQRBNPkqrbnp) and Unicode code points is trivially implemented as a dictionary lookup, as shown above.
-
Accessibility: When presenting chess positions to screen readers, always include text alternatives (e.g., "White King on e1") since screen readers may not announce Unicode chess symbols meaningfully.
Unicode chess symbols transform plain text into a medium capable of representing the world's most popular board game without any images, special software, or proprietary formats. From casual game annotations to published chess books, these 12 characters serve millions of chess players and enthusiasts worldwide.
Symbol Reference 中的更多内容
Unicode contains hundreds of arrow symbols spanning simple directional arrows, double arrows, …
Unicode provides multiple check mark and tick symbols ranging from the classic …
Unicode includes a rich collection of star shapes — from the simple …
Unicode contains dozens of heart symbols including the classic ♥, black and …
Unicode's Currency Symbols block and surrounding areas contain dedicated characters for over …
Unicode has dedicated blocks for mathematical operators, arrows, letterlike symbols, and alphanumeric …
Beyond the ASCII parentheses and square brackets, Unicode includes angle brackets, curly …
Unicode offers a wide variety of bullet point characters beyond the standard …
Unicode's Box Drawing block contains 128 characters for drawing lines, corners, intersections, …
Unicode includes musical note symbols such as ♩♪♫♬ in the Miscellaneous Symbols …
Unicode includes precomposed fraction characters for common fractions like ½ ¼ ¾ …
Unicode provides precomposed superscript and subscript digits and letters — such as …
Unicode contains dozens of circle symbols including filled circles, outlined circles, circles …
Unicode includes filled squares, outlined squares, small squares, medium squares, dashed squares, …
Unicode provides a comprehensive set of triangle symbols in all orientations — …
Unicode includes filled and outline diamond shapes, lozenge characters, and playing card …
Unicode provides various cross and X mark characters including the heavy ballot …
The hyphen-minus on your keyboard is just one of Unicode's many dash …
Unicode defines typographic quotation marks — curly quotes — for dozens of …
Unicode includes dedicated characters for the copyright symbol ©, registered trademark ®, …
The degree symbol ° (U+00B0) and dedicated Celsius ℃ and Fahrenheit ℉ …
Unicode's Enclosed Alphanumerics block provides circled numbers ①②③, parenthesized numbers ⑴⑵⑶, and …
Unicode includes a Number Forms block with precomposed Roman numeral characters such …
Greek letters like α β γ δ π Σ Ω are widely …
The Unicode Dingbats block (U+2700–U+27BF) contains 192 decorative symbols originally from the …
Unicode includes a Playing Cards block with characters for all 52 standard …
Unicode's Miscellaneous Symbols block includes the 12 zodiac signs ♈♉♊♋♌♍♎♏♐♑♒♓, planetary symbols, …
Unicode's Braille Patterns block (U+2800–U+28FF) encodes all 256 possible combinations of the …
Unicode's Geometric Shapes block contains 96 characters covering circles, squares, triangles, diamonds, …
The Unicode Letterlike Symbols block contains mathematical and technical symbols derived from …
Unicode's Miscellaneous Technical block contains symbols from computing, electronics, and engineering, including …
Diacritics are accent marks and other marks that attach to letters to …
Unicode defines dozens of invisible characters beyond the ordinary space, including zero-width …
Unicode includes warning and hazard symbols such as the universal caution ⚠ …
Unicode's Miscellaneous Symbols block includes sun ☀, cloud ☁, rain ☂, snow …
Unicode includes symbols for many of the world's major religions including the …
Unicode includes the traditional male ♂ and female ♀ symbols from astronomy, …
Apple's macOS uses Unicode characters for keyboard modifier keys such as ⌘ …
Unicode symbols like ▶ ◀ ► ★ ✦ ⚡ ✈ and hundreds …