Если верить Полибию, сражение протекало в два отчетливо различимых этапа. После взаимных предварительных кавалерийских наскоков на противника двинулись слоны Ганнибала, однако ожидаемого успеха эта операция не принесла: часть животных сразу же повернула вправо, а остальные устремились в коридоры, оставленные Сципионом в своем войске, практически не причинив римским солдатам никакого вреда. Схватка пехотинцев также развивалась совсем не так, как на это рассчитывал карфагенский полководец, надеявшийся, что первой линии его бойцов удастся смять передовую римскую пехоту. На самом же деле под натиском копейщиков Сципиона дрогнули именно карфагенские ряды, так что вторая их линия вступила в схватку в обстановке начавшейся сумятицы. Они откатились на пустое пространство, оставленное Ганнибалом перед строем ветеранов, и тогда, стремясь избежать всеобщего смешения, полководец приказал своей гвардии разделиться надвое и сгруппироваться по флангам бывшей линии фронта. После этого битва вступила в свою вторую фазу. Сципион собрал копейщиков в центре, а по бокам от них выставил принципов и триариев. Теперь обе армии стояли друг против друга, каждая вытянувшись в единую линию равной протяженности. У ветеранов Ганнибала в этих условиях сохранялись неплохие шансы на победу, однако в тот момент, когда битва была в самом разгаре, на помощь своим подоспели всадники Лелия и Масиниссы, бросившие преследовать карфагенскую конницу и вернувшиеся на поле сражения. Напав с тыла на лучшие части армии Ганнибала, они не оставили от них камня на камне. К концу дня выяснилось, что потери римлян составляют от силы две тысячи бойцов, тогда как у карфагенян полегло около двадцати тысяч солдат, да еще почти столько же оказалось захвачено в плен. Ганнибал с небольшим отрядом всадников покинул место битвы и укрылся в Гадрумете.
Мирный договор 201 года. Смех Ганнибала
Нет ничего удивительного в том, что, потерпев поражение, Ганнибал вернулся в Гадрумет. Он не мог не думать о печальной судьбе некоторых из своих предшественников, карфагенских военачальников, на которых после проигранных ими сражений Совет старейшин обрушивал свой гнев, доходивший до смертных приговоров через позорную казнь на кресте. Явиться в метрополию назавтра после разгрома, не позаботившись о надежной охране, означало угодить прямо в руки врагов. И хотя наши источники не упоминают об этом ни слова, легко догадаться, что Ганнибал сделал крюк в сторону Гадрумета с единственной целью — обеспечить собственную безопасность и подготовиться к визиту в Карфаген.