Importing a game or a position
One paste box takes both PGN and FEN, and works out which you gave it.
There is a single input for both formats. You do not choose a mode: if what you paste is a single line describing a board, it is treated as a position; otherwise it is parsed as a game. That detection is strict enough that a PGN can never be mistaken for a FEN.
Getting a PGN out of your games
- Lichess — open the game, then the download or share menu; the PGN can be copied directly from the analysis page.
- Chess.com — the game review screen has a download or share option offering PGN.
- Over-the-board games — any PGN you have typed up by hand works, provided the moves are legal.
Paste the whole thing, headers and all. A minimal example:
[Event "Casual game"]
[White "Player One"]
[Black "Player Two"]
[Result "1-0"]
1. e4 e5 2. Nf3 Nc6 3. Bb5 a6 1-0
What the parser keeps and what it drops
| In your PGN | What happens |
|---|---|
Headers like [White "…"] | Read and shown with the game |
| The mainline moves | Parsed and analyzed |
Comments in { } | Accepted, then discarded |
Variations in ( ) | Accepted, then discarded — mainline only |
Annotation glyphs like $1 | Accepted, then discarded |
| Several games in one file | Only the first is loaded |
Discarding rather than rejecting is deliberate: an annotated game from a
database imports cleanly instead of failing on notation the analyzer does
not display. You lose the annotations, not the game. Move numbering is
flexible too — 1. e4, 1.e4 and continuations
written 1... e5 all parse.
Two errors you can hit: "PGN input is empty" if the box is blank, and "No valid moves found in PGN" if headers came through but no movetext could be read — usually a copy that stopped short, or moves that are not legal in the position they appear.
Importing a position with FEN
A FEN describes one position on a single line. The full form has six fields:
rnbqkbnr/pppppppp/8/8/4P3/8/PPPP1PPP/RNBQKBNR b KQkq e3 0 1
Piece placement, side to move, castling rights, en-passant square, halfmove clock, move number. In practice you rarely have all six, and you do not need them — the placement field alone is enough. The rest is filled in for you:
- Castling rights are inferred from where the kings and rooks are. A king on e1 with a rook on h1 gets kingside castling, and so on for each corner. This is the field people most often omit or get wrong, and guessing from the board is almost always what was meant.
- En passant defaults to none, the clocks to zero and move one.
- Side to move comes from the FEN if present, and you can override it with the White/Black chips on the import screen — useful when you have set up a puzzle position and want to solve it from the other side.
One subtlety: if you override the side to move, any en-passant square is dropped. An en-passant capture is only available to the player who did not just push the pawn, so keeping it after flipping would describe a position that cannot occur.
When a FEN is rejected
Positions are validated before loading, and the messages say what is wrong rather than just failing:
- expected 8 ranks of pieces separated by "/" — a rank is missing, usually a truncated copy.
- each side needs exactly one king — the most common mistake when typing a position by hand.
- pawns cannot stand on the first or last rank — a pawn that should have been promoted.
- Black would be in check while White is to move — the side to move is wrong; flip it with the chips.
- the board is empty, piece placement is malformed, invalid side to move — malformed input.
Exporting back out
From the board you can copy the current position as a FEN, or copy the
moves you have played as a PGN, both straight to the clipboard. If the
session started from an imported position rather than the standard start,
the exported PGN carries the [SetUp] and [FEN]
headers that describe it — so the game reimports correctly here or anywhere
else, instead of silently replaying from the opening position.