Шведская эскадра под командованием генерал-адмирала герцога К. Зюдерманланского (16 линейных кораблей, 12 фрегатов, 6 судов, 1336 пушек) намеревалась разбить русский флот в Финском заливе, остатки его блокировать в Кронштадте и высадить десант (20 тыс. солдат) в районе Ораниенбаума (Ломоносов) или Красной Горки для захвата Санкт-Петербурга. Обнаружив утром 6.7 западнее о.Тгогланд шведские корабли, русская эскадра под командованием адмирала С. К. Грейга (17 линейных кораблей, 8 фрегатов, 7 мелких судов, 1236 пушек), находясь в наветренном положении, пошла на сближение.
6 июля в 17 ч русский авангард под командованием контр-адмирала Т. Г Козлянникова сблизился с противником и открыл огонь. В сражении приняли участие всо линейные корабли и 7 шведских фрегатов. Сражение эскадр происходило по правилам линейной тактики. Флагманский корабль С.К. Грейга "Ростислав" нанеся тяжелые повреждения 74-пушечному кораблю вице-адмирала Вахтмейстейа "Принс Густав", захватил его. Остальные шведские корабли, не выдержав интенсивного и меткого огня русских, стали выходить из боя. С наступлением темноты сражение прекратилось. Обе стороны понесли значительные потери. Шведская эскадра ушла в Свеаборг, где была блокирована русским флотом.
Гогландское сражение было крупным успехом Российского флота. Планы шведов завоевать господство на Балтике и захватить Петербург были сорваны.