Cannon Rocks, Eastern Cape

Cannon Rocks is a small seaside town on the Indian Ocean in the Eastern Cape Province of South Africa, situated between Boknesstrand and the boundary of the Greater Addo Elephant Park.

The town is located approximately 15 km south-west of Kenton-on-Sea, 41 km south-east of Port Alfred, 135 km east of Gqeberha (formerly known as Port Elizabeth), and 180 km west of East London.

Cannon Rocks falls within the Ndlambe Local Municipality and the Sarah Baartman District Municipality.

The town is named after two cannons of historical importance and is close to the Diaz cross, erected five centuries ago by Bartolomeu Dias, the first Portuguese ocean explorer to sail along the eastern coast of South Africa.

Cannon Rocks is a major marker for weather forecasts for the coastal belt. It divides two coastal sections: Plettenberg Bay to Cannon Rocks, and Cannon Rocks to Kei Mouth.