Античність (VI ст. до н. е. – VII ст.)
У районі нинішнього Ахелоя фракійці селилися ще з VI ст. до н. е. Пізніше це місце було невеликою пристанню в орбіті грецьких колоній Аполлонія (Созополь) і Месамбрія (Несебир). Назва «Ахелой» походить від грецького «Ахелоос» — річкового божества, що означає «річка».
Битва при Ахелої (917 р.)
20 серпня 917 р. на Анхіальському полі — між фортецями Анхіало (нині Поморіє) і Месамбрія (Несебир), біля гирла річки Ахелой — відбулася одна з найбільших битв середньовічної Європи. Цар Симеон I Великий ударив з пагорба Біберна (біля нинішнього Каблешкова) в обхід і розбив візантійську армію магістра Лева Фоки. Візантійські втрати оцінюють у десятки тисяч убитих; за словами Лева Диякона, купи кісток біля Анхіало було видно ще через 75 років після битви. Перемога закріпила болгарське панування на Балканах і прискорила визнання імператорського титулу болгарського володаря.
Середньовіччя та Османська імперія (X–XIX ст.)
Після великої битви місце зберегло стратегічне значення — до XIV ст. тут проходив кордон між Болгарським царством і Візантією. За османської влади Ахелой був невеликим рибальським селом із грецьким і болгарським населенням, десь на 30 будинків. У XIX ст. сюди переселилися біженці зі Східної Фракії та Малої Азії.
Сучасний Ахелой (1878 — сьогодні)
Після Визволення 1878 р. Ахелой залишився у Східній Румелії, а після Воззʼєднання 6 вересня 1885 р. відійшов до обʼєднаного Князівства Болгарія. 1967 р. село оголосили кліматичним морським курортом місцевого значення. 10 січня 2009 р. Рішенням № 4 Ради міністрів (опубл. у «Державному віснику» № 6 від 23.01.2009 р.) Ахелой оголосили містом — одним із найновіших поселень з таким статусом у Бургаській області.