29 июля 1791 года российский Черноморский флот вновь вышел в море и взял курс на поиски противника к берегам Румелии. 31 июля турецкий флот был обнаружен стоящим на якоре под берегом у мыса Калиакрия, где для прикрытия его стоянки была сооружена береговая батарея.
В распоряжении капудан-паши находились 18 линейных кораблей (включая 9 флагманских). Имелось также 10 больших и 7 малых фрегатов и 43 малых корабля - бомбардирские суда, малые крейсерские корабли и плавучие батареи. Общее число орудий на кораблях турецкого флота превышало 2000, в том числе не менее 1240 пушек на линейных кораблях. Личный состав доходил до 20.000 человек, включая 4000 алжирских моряков. На флагманском корабле Хюсейна присутствовали три английских офицера-инструктора по артиллерийской части. Кроме них артиллеристы-иностранцы были и на некоторых других кораблях.
В составе российского флота насчитывалось 16 линейных кораблей (в том числе два 80-пушечных), 2 фрегата, 2 бомбардирских судна, 1 репетичное судно, 1 брандер и 17 малых крейсерских кораблей. Русские имели несколько более 1000 пушек (в том числе 920 на линейных кораблях) и 9500 человек личного состава. Таким образом, турки имели значительное общее превосходство в силах при соотношении огневой мощи линии баталии как 1,35:1.
Собираясь выиграть ветер, дувший с берега, а также в полной мере использовать внезапность своего появления, Ф.Ф. Ушаков в походном строю трех кильватерных колонн направился между берегом и флотом противника. Турецкие корабли поспешно рубили канаты, вступали под паруса и опускались под ветер. В суматохе несколько кораблей столкнулись, а на одном из них рухнула бизань-мачта. Другой корабль сломал себе бушприт и после этого скрылся в направлении Варны, ослабив турецкую линию. Не имея возможности дождаться части своих команд, отправленных на берег, капудан-паша пытался выстроить линию баталии и вскоре собрал несколько линейных кораблей на правом галсе. Однако более энергичный и умный Сейит-Али, не теряя надежды вновь выиграть ветер, лег на противоположный курс и повел за собой большую часть флота левым галсом. Вскоре ему последовал и капудан-паша.
Ф.Ф. Ушаков, пройдя под выстрелами береговой батареи и оказавшись на ветре, перестроил свой флот в линию баталии левого галса, приказав сигналами "прибавить парусов" и "нести все возможные паруса". Для ускорения маневра кордебаталия построилась в голове колонны, за ней, следуя своим эскадренным командирам, строились авангард и арьергард.
ЛИНИЯ БАТАЛИИ РОССИЙСКОГО ФЛОТА
80-пушечный (78) "Рождество Христово" (капитан 1-го ранга М.М. Елчанинов) Флаг командующего флотом контр-адмирала Ф.Ф. Ушакова
74-пушечный (82) "Иоанн Предтеча" (капитан 1-го ранга А.Г. Баранов)
46-пушечный (46) "Федор Стратилат" (капитан 1-го ранга И.А. Селивачев)
50-пушечный (50) "Святой Андрей Первозванный" (капитан 2-го ранга Е.П. Сарандинаки)
50-пушечный (48) "Святой Александр Невский" (капитан 1-го ранга Н.Л. Языков)
66-пушечный (68) "Мария Магдалина" (капитан 1-го ранга А. Ишин) Брейд-вымпел командира авангарда капитана генерал-майорского ранга Г.К. Голенкина
50-пушечный (50) "Георгий Победоносец" (капитан 1-го ранга М.И. Чефалиано)
46-пушечный (44) "Навархия Вознесение Господне" (генеральс-адъютант Д.Н. Сенявин)
46-пушечный (46) "Царь Константин" (капитан 2-го ранга И.И. Ознобишин)
50-пушечный (50) "Святой Николай" (генеральс-адъютант М.И. Львов)
46-пушечный (46) "Петр Апостол" (капитан 1-го ранга Ф.Я. Заостровский)
66-пушечный (70) "Святой Владимир" (брейд-вымпел капитана бригадирского ранга П.В. Пустошкина)
58-пушечный (58) "Святой Леонтий Мученик" (капитан 1-го ранга (пропуск
в тексте, прим. ВВС)
66-пушечный (68) "Преображение Господне" (капитан 1-го ранга Н.П. Кумани)
66-пушечный (70) "Святой Павел" (капитан 1-го ранга К.А. Шапилов)
46-пушечный (46) "Иоанн Богослов" (капитан 2-го ранга Ф.В. Шишмарев)
(В скобках показано фактическое количество пушек на кораблях)
Всего 16 линейных кораблей с 920 орудиями и более 7700 человек экипажа.
При сближении Ушаков заметил, что Сейит-Али с двумя следующими за ним кораблями "спешил отделить вперед, выигрывая ветер" (то есть, приводил круче к ветру, стремясь занять наветренное положение) Для предотвращения этого маневра российский командующий на корабле "Рождество Христово" вышел из линии в голову строя и с дистанции всего полкабельтова (около 90 метров) сам атаковал корабль Сейит-Али, "обойдя его несколько с носу".
По сигналам "сомкнуть дистанцию" и "спуститься на неприятеля" вся линия баталии российского флота сблизилась с противником и около 17 часов вступила в сражение. Под огнем корабля "Рождество Христово" флагман Сейит-Али вскоре потерял фор-стеньгу, грот-марсель и начал спускаться под ветер, уклоняясь за линию своего флота. С него полетели за борт приготовленные к использованию, но сбитые ядрами, абордажные лестницы и золоченные кормовые украшения. Ушаков, заставив отступить прикрывавшие своего флагмана вице-адмиральский корабль и два фрегата, преследовал корабль алжирского адмирала и некоторое время сражался на оба борта. Здесь командующего флотом поддержали командиры передовых кораблей кордебаталии капитаны 1-го ранга Н.Л. Языков ("Александр Невский"), А.Г. Баранов ("Иоанн Предтеча") и И.А. Селивачев ("Федор Стратилат"), которые "окружили передовых" в турецкой линии и поражали их огнем с короткой дистанции.