The short answer
Across 4 independent positions, a knight on the rim never came out top of the candidates compared. The gap to the top candidate averaged 0.69 pawns and reached 1.10. Not losing, then — but consistently a little worse.
Those figures are measured against the highest-scoring move of this kind in each position. Played less well, the same idea costs more: the worst case in this run was Nh4 (After 1.e4 e5 2.Nf3 Nc6 (White to move)), at 4.50. (“Top” here means top of the candidates compared, not the best move among all legal moves — see how we tested it.)
What we are testing
"A knight on the rim is dim" is one of the best-known sayings in chess. A knight in the centre covers up to eight squares; on the edge it covers less than half that. But how much does the destination alone change the evaluation, when the move itself is the same "develop a knight"?
How we tested it
Testing a rule of thumb in one position cannot tell you whether you are seeing the rule or just that position. So we picked 4 positions of different character — open and closed, White to move and Black to move. In each one, every candidate is played and the resulting position is searched. All the numbers are real output, not estimates.
What is compared is a set of candidate moves relevant to the article, not every legal move: the move under test, and the moves a player would normally consider there. So the top row of a table is not "the best move in the position" but the highest-scoring move among those compared.
On top of that, each position is also searched once with no candidate list, and the move the engine itself picks is recorded (it is shown with each position below). This is there to catch a candidate list that quietly decides the answer: the generator aborts if that free choice beats the top candidate by 0.50 or more. Across the current data the largest such difference is 0.18.
Position by position
| Position | Top candidate | Move tested | Gap |
|---|---|---|---|
| After 1.e4 e5 2.Nf3 Nc6 (White to move) | Bb5 +0.42 | Na3 −0.68 | 1.10 |
| A knight on move one (White to move) | Nf3 +0.32 | Nh3 −0.46 | 0.78 |
| In the Queen’s Gambit (White to move) | Nc3 +0.29 | Na3 −0.35 | 0.64 |
| When the rim is right (Black to move) | Bb7 −0.29 | Na5 −0.53 | 0.24 |
Position 1|After 1.e4 e5 2.Nf3 Nc6 (White to move)
1.e4 e5 2.Nf3 Nc6
FENr1bqkbnr/pppp1ppp/2n5/4p3/4P3/5N2/PPPP1PPP/RNBQKB1R w KQkq - 2 3
The highest-scoring candidate was Bb5 (+0.42). Na3 scored −0.68, a gap of 1.10.
Searched with no candidate list imposed, at the same depth, the engine's own first choice was d4 — a move that is in the table above. That search is not the same procedure as playing each candidate first and searching the position that follows, so the order can differ.
Tap a candidate move to change the board
| Move | Evaluation | Diff vs top candidate |
|---|---|---|
| Bb5 | +0.42 | baseline |
| Bc4 | +0.28 | −0.14 |
| Nc3 | +0.24 | −0.18 |
| d4 | +0.18 | −0.24 |
| Na3 | −0.68 | −1.10 |
| Nh4 | −4.08 | −4.50 |
Position 2|A knight on move one (White to move)
The starting position
FENrnbqkbnr/pppppppp/8/8/8/8/PPPPPPPP/RNBQKBNR w KQkq - 0 1
The highest-scoring candidate was Nf3 (+0.32). Nh3 scored −0.46, a gap of 0.78.
Searched with no candidate list imposed, at the same depth, the engine's own first choice was e4, a move not in the table above. That search is not the same procedure as playing each candidate first and searching the position that follows, so the order can differ.
Tap a candidate move to change the board
| Move | Evaluation | Diff vs top candidate |
|---|---|---|
| Nf3 | +0.32 | baseline |
| Nc3 | +0.13 | −0.19 |
| Nh3 | −0.46 | −0.78 |
| Na3 | −0.57 | −0.89 |
Position 3|In the Queen’s Gambit (White to move)
1.d4 d5 2.c4 e6
FENrnbqkbnr/ppp2ppp/4p3/3p4/2PP4/8/PP2PPPP/RNBQKBNR w KQkq - 0 3
The highest-scoring candidate was Nc3 (+0.29). Na3 scored −0.35, a gap of 0.64.
Searched with no candidate list imposed, at the same depth, the engine also chose Nc3.
Tap a candidate move to change the board
| Move | Evaluation | Diff vs top candidate |
|---|---|---|
| Nc3 | +0.29 | baseline |
| Nf3 | +0.27 | −0.02 |
| cxd5 | +0.19 | −0.10 |
| Na3 | −0.35 | −0.64 |
| Nh3 | −0.35 | −0.64 |
Position 4|When the rim is right (Black to move)
1.e4 e5 2.Nf3 Nc6 3.Bb5 a6 4.Ba4 Nf6 5.O-O Be7 6.Re1 b5 7.Bb3 d6 8.c3 O-O 9.h3
FENr1bq1rk1/2p1bppp/p1np1n2/1p2p3/4P3/1BP2N1P/PP1P1PP1/RNBQR1K1 b - - 0 9
The highest-scoring candidate was Bb7 (−0.29). Na5 scored −0.53, a gap of 0.24.
Searched with no candidate list imposed, at the same depth, the engine's own first choice was Be6 — a move that is in the table above. That search is not the same procedure as playing each candidate first and searching the position that follows, so the order can differ.
Tap a candidate move to change the board
| Move | Evaluation | Diff vs top candidate |
|---|---|---|
| Bb7 | −0.29 | baseline |
| Re8 | −0.37 | −0.08 |
| Be6 | −0.43 | −0.14 |
| Na5 | −0.53 | −0.24 |
| Nb8 | −0.61 | −0.32 |
| h6 | −0.61 | −0.32 |
Where the difference comes from
Na3 is not weak only because it covers fewer squares. The engine line is 3...Bxa3 4.bxa3: Black trades a bishop for the knight and wrecks White’s pawn structure. The edge square happened to sit on a bishop’s diagonal — a concrete problem, not a vague one.
Nh4 is worse than any proverb: 3...Qxh4 simply wins the knight (the d8–h4 diagonal is open). The large drop is just material loss showing up in the number.
Exceptions
This does not mean an edge knight is always bad; it is the result in this position. In real games the rim can be a useful staging square on the way back to the centre.
A proverb tells you which moves to check first. It is not a ban. What matters is reading what the opponent can do right after the move.
What this does and does not show
- It shows: what the engine returned for these 4 positions, with the chosen candidates searched to depth 20. The numbers are the raw output; none of them were adjusted afterwards.
- It does not show: anything about "all positions" — a sample of 4 is a very small slice of chess.
- The assumption: an evaluation assumes best play from both sides. Over the board, an inaccurate reply changes everything.
- Reproducing it: every number here is built from chess-analysis.json, the raw output of the run — positions, candidates, scores and principal variations. Running the same engine with the settings above reproduces them exactly: the search is single-threaded, the hash is cleared before each position, and the depth is fixed. A different engine version or hash size will give different numbers.

What to remember at the board
- The same knight scores very differently depending on the square
- Na3 loses out to Bxa3, which ruins the pawn structure
- Nh4 simply drops a piece to Qxh4
- The rim is not always bad — it is bad here
Try it yourself
You can try the same idea in a real game. Every move is scored by the engine, so the difference between principled and careless moves shows up immediately.