Большую полемику среди ученых вот уже на протяжении многих лет вызывает вопрос локализации самой битвы, а именно на каком берегу реки Ауфид она происходила. С этим также связана и проблема расположения лагерей как пунийской, так и римской армии. Из имеющихся в нашем распоряжении источников больше топографических подробностей содержится в труде Полибия, которому, очевидно, и следует уделить основное внимание. Первым ориентиром при этом должно стать течение Ауфида. Хотя известно, что современное русло реки не соответствует тому, каким оно было две с лишним тысячи лет назад, его общее направление измениться не могло и шло с юго-запада на северо-восток. Проходя к северу от Канн, примерно через шесть километров Ауфид двумя рукавами впадал в Адриатическое море. Вторым важным моментом является расположение лагерей армий Ганнибала и консулов. Поскольку пунийская армия, уйдя из-под Гереония, захватила акрополь Канн, очевидно, что первоначально ее лагерь находился на правом, южном, берегу Ауфида. Когда в долину Ауфида пришли римляне, они устроили два лагеря, из них больший, в котором находилось, по крайней мере, две трети от общего количества воинов, располагался на одном берегу с карфагенянами, а меньший – «по другую сторону реки, к востоку от места переправы, стадиях в десяти от собственной стоянки и немного дальше от неприятельской» (Полибий, III, 110, 10). Получается, что малый лагерь римлян находился на южном (или восточном, что в данном случае практически равноправно) берегу Ауфида, а лагерь карфагенян соответственно на северном, противоположном от Канн берегу реки. Возникает определенное противоречие, поскольку раньше ни у Полибия, ни у Ливия не упоминается о том, чтобы Ганнибал переносил свой лагерь из Канн через реку. Однако уже буквально в следующей главке Полибий рассказывает, как после неудачного нападения на входящую в долину Ауфида колонну римлян Ганнибал обратился к своим воинам с ободряющей речью, после чего «возвел частокол и расположился лагерем на том самом берегу реки, где находилась и стоянка неприятелей» (Полибий, III, 111, 11). Очевидно, для того чтобы согласовать между собой вышесказанное, необходимо допустить, что переход пунийцев на северный берег Ауфида состоялся все же до того, как к Каннам подошла основная римская армия. Причиной перемены места могло стать как желание Ганнибала избежать риска быть осажденным в акрополе, так и стремление настроить солдат только на решающий полевой бой. Ни раньше, ни тем более теперь Пуниец не был заинтересован в пассивной оборонительной позиции.
Теперь о том, что известно о месте самой битвы. Когда в день сражения римская армия построилась в общий боевой порядок, то ее части, занимавшей больший лагерь, чтобы объединиться с остальными силами (Полибий, III, 113, 2), пришлось переправиться через реку. Армия Ганнибала тоже форсировала Ауфид (Полибий, III, 113, 6), и таким образом противники оказались лицом к лицу друг с другом. Описывая боевые порядки сторон, Полибий однозначно говорит, что к реке примыкал левый фланг карфагенян (Полибий, III, 113, 7) и правый фланг римлян (Полибий, III, 113, 3), а также дважды упоминает, что фронтом римская армия была обращена на юг (Полибий, III, 113, 2; 114, 8), а пунийская соответственно на север (Полибий, III, 114, 8). Подтверждает это и Ливий (Ливий, XXII, 46, 8), который, кроме этого, в рассказе о боевом построении карфагенян говорит, что они стояли спиной к юго-восточному ветру волтурну (Ливий, XXII, 43, 11). Все это свидетельствует о том, что битва происходила на правом, южном, берегу Ауфида.