The two armies clashed at Kalavrye on the Halmyros River in what is now European Turkey. Alexios Komnenos, whose army was considerably smaller and far less experienced, tried to ambush Bryennios's army. The ambush failed, and the wings of his own army were driven back by the rebels. Alexios barely managed to break through with his personal retinue, but succeeded in regrouping his scattered men. At the same time, and despite having seemingly won the battle, Bryennios's army fell into disorder after its own Pecheneg allies attacked its camp. Reinforced by Turkish mercenaries, Alexios lured the troops of Bryennios into another ambush through a feigned retreat. The rebel army broke and Bryennios was captured.