Офицеры, вызванные на совет, рекомендовали Густаву спасаться дальше, под стены Свеаборга, но король решил дать бой. Если прежде речь шла о мире с территориальными приобретениями, то после «прогона сквозь строй» под Выборгом Швеция рисковала потерять всю Финляндию. Такое унизительное окончание войны — личного предприятия короля — могло означать лишение Густава не только короны, но и жизни. Дворянская и офицерская оппозиция, показавшая себя в начале войны, могла снова поднять голову. Возвращаться в Стокгольм после выборгского разгрома король не мог. Ему нужна была победа или героическая смерть на поле боя. Мебель и другие ценности с «Амфиона» свезли на берег, чтобы сжечь их в случае поражения. Король готовился уйти из жизни как вождь викингов — с преданием огню самых дорогих ему предметов!
Русская атака началась раньше, чем ее ожидали — утром девятого июля. Принц Нассау-Зиген, уверенный в том, что шведы полностью деморализованы, решил преподнести императрице подарок к очередной годовщине дня ее коронации. Успех был почти предрешен: ведь даже место сражения должно было напоминать противнику о прошлогоднем разгроме!
Командующий, предвкушая триумф, не подумал, что главным союзником шведов может стать штормовая погода.
Сильный ветер, вздымавший высокую волну, нес русские суда на шведские позиции. При таком волнении моря галерам, обладавшим плохими мореходными качествами, трудно было придерживаться боевого порядка. Русские матросы, почти двое суток шедшие на веслах, смертельно устали и с трудом справлялись с волнами. Еще не начался бой, а галеры уже сталкивались, ломая весла. Некоторые суда волокло на торчащие из воды скалы. Сумятица была не только в море, но и в головах русских офицеров. Командиры кораблей не знали, как вести сражение. Принц Нассау-Зиген, стремясь поскорее добить противника, не посчитал нужным разработать даже приблизительного плана боя.
250 шведских кораблей встретили нападение плотным огнем. Крупные суда стояли на якоре и ветер был им не страшен. Для маневренных пушечных шлюпов ветер и волны тоже не являлись большой помехой. По атакующим били устроенные на островах береговые батареи. Король, разъезжая на шлюпке между судами флотилии, лично отдавал приказания и подавал пример мужества. В этом сражении шведам удалось воплотить тактические идеи Чапмана о принципах использования пушечных шлюпов. Дивизион шлюпов обошел правый фланг русских и ударил с тыла. Началась паника, противник пытался отступить, но сильный нагонный ветер не позволял громоздким галерам уйти с рейда. Корабли русской эскадры, атакуемые со всех сторон, все плотнее сбивались к центру. Вскоре нельзя было стрелять, не рискуя попасть в своих. Столь близкая победа за несколько часов боя обернулась ужасной катастрофой.
«Мачты и каюты полностью разбиты, повсюду видны убитые и раненые, везде кровь и куски тел. Те же, кто остался цел, заняты грабежом своих офицеров и раненых товарищей. Более ужасного и отвратительного зрелища я не видел», — писал один из шведских участников сражения Георг Поллет.
Панорама второго Роченсальмского сражения, изображенная Юханом Д. Шульцем, шведским участником битвы.
Трусость, мародерство и самопожертвование были рядом. Тот же Поллет так описывает поразившую его гибель русского шхерного фрегата «Святой Николай» под командованием 23-летнего англичанина Маршалла, лишь за год до сражения принятого на русскую службу: «Маршалл оказался слишком горд для того, чтобы спустить флаг перед такими маленькими судами. Он решил умереть, и когда сообщил об этом, весь его экипаж из 440 человек в едином порыве закричал, что последует за ним. Тогда Маршалл поднялся на носовую надстройку с флагом в руке и ушел под воду на наших глазах вместе со своим кораблем. Из всего экипажа удалось спасти лишь пятерых».
По рассказам спасшихся моряков, поднявшись на носовую надстройку с флагом, Маршалл крикнул команде: «Мне не пришлось подать вам пример, как должно побеждать, так я покажу, как следует погибать!»
«Святой Николай» тонул от пробоин и течи, открывшейся от яростного огня собственных пушек. Участники сражения стали свидетелями еще одного страшного зрелища. К стоявшему на палубе священнику, державшему серебряный крест в поднятой руке, стекались матросы. Они стремились получить последнее благословение перед скорой смертью. Флаг в руке командира и серебряный крест священника стали тем последним, что увидели зрители этого эпизода сражения.
Вместо победной реляции командующий принес императрице страшную весть о разгроме. Около шестидесяти судов — треть русского флота — было сожжено, отправлено на дно или захвачено. Несколько тысяч человек погибло. Шесть тысяч попало в плен. Шведские потери — триста человек убитых и шесть потопленных судов — в сравнении с этой катастрофой были ничтожны.