The short answer

Across 3 independent positions, moving the same piece twice was never the best move. The gap to the best move averaged 0.51 pawns and never exceeded 0.88. Not losing, then — but consistently a little worse.

What we are testing

The opening is about getting pieces to useful squares quickly. Moving a piece that is already out delays bringing out a new one, which is why beginners are told not to move the same piece twice.

Plenty of established openings break that rule, though. So how much does the repeat move actually cost, and does it cost anything at all in the lines where theory allows it? Three positions, every candidate searched.

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 3 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.

Engine
Stockfish 18 Lite WASM
Search depth
depth 20
Positions tested
3
Candidate moves analysed
15
Units
Pawns (1.00 = one pawn). From the point of view of the side that moved.

Position by position

PositionBest moveMove testedGap
Moving the same knight again in a 1.d4 opening (White to move)c4 +0.29Ne5 −0.220.51
The same knight twice in the Italian (White to move)d3 +0.23Ng5 +0.080.15
Black moving the same knight twice (Black to move)Be7 −0.35Nd4 −1.230.88

Position 1|Moving the same knight again in a 1.d4 opening (White to move)

1.d4 d5 2.Nf3 Nf6

The best move was c4 (+0.29). Ne5 scored −0.22, a gap of 0.51.

Tap a candidate move to change the board

MoveEvaluationDiff vs best
c4+0.29best
Bf4+0.17−0.12
e3+0.16−0.13
g3+0.09−0.20
Ne5−0.22−0.51

Position 2|The same knight twice in the Italian (White to move)

1.e4 e5 2.Nf3 Nc6 3.Bc4 Nf6

The best move was d3 (+0.23). Ng5 scored +0.08, a gap of 0.15.

Tap a candidate move to change the board

MoveEvaluationDiff vs best
d3+0.23best
d4+0.17−0.06
Ng5+0.08−0.15
Nc3−0.11−0.34
O-O−0.26−0.49

Position 3|Black moving the same knight twice (Black to move)

1.e4 e5 2.Nf3 Nc6 3.Bb5 a6 4.Ba4 Nf6 5.O-O

The best move was Be7 (−0.35). Nd4 scored −1.23, a gap of 0.88.

Tap a candidate move to change the board

MoveEvaluationDiff vs best
Be7−0.35best
Nxe4−0.36−0.01
b5−0.44−0.09
d6−0.46−0.11
Nd4−1.23−0.88

Where the difference comes from

In all three positions the repeat move came out below the best one, by 0.51 on average. In the engine’s lines the pattern repeats: while one side moves the same piece around, the other finishes developing, and the wandering piece ends up driven back to where it started.

But the spread is wide. Black’s Nd4 drops 0.88, while Ng5 in the Italian costs only 0.15 — and Ng5 is the entry to the Fried Liver Attack, played countless times. Breaking the rule is fine when what you get for it is large enough, and the numbers show exactly that.

Exceptions

What this measures is the cost of the repeat move by itself. A move like Ng5, which spends the tempo to aim directly at a weakness (f7), earns almost all of it back.

Put the other way round: do not move a piece again unless you can say what the move is for. "Never move the same piece twice" is a worse fit for the data than "if you move it again, be able to explain why".

What this does and does not show

  • It shows: what the engine returned for these 3 positions, with every candidate 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 3 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: the positions and candidates live in tools/generate-chess-analysis.mjs, the results in assets/chess-analysis.json. The same settings give the same numbers.

What to remember at the board

  • In all three positions, moving the same piece again was not the best move
  • The gap averaged 0.51 and reached 0.88
  • Ng5 in the Italian costs only 0.15 — enough compensation to be theory
  • Move a piece twice only when you can name what it attacks

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.

Check it in the Chess Dojo

Free, no account. Play straight from the browser.

♟ Play Chess

Related guides