무안반도 남단에 위치하며, 동쪽에 입암산(笠巖山, 121m),
서쪽에 유달산(儒達山, 228m), 북쪽에 양을산(陽乙山, 156m)·
대박산(大朴山, 156m)·지적봉(芝積峰, 189m) 등으로 둘러 있고
남쪽은 영산강 하구에 면해 있다.
또한, 그 주위에 13개의 도서가 넓게 펼쳐져 있어 경치가
아름다울 뿐만 아니라 자연적으로 방파제
구실을 하여 천연적인 양항의 조건을 보인다.
시가지의 서남쪽에 병풍을 둘러놓은 듯 기암절벽이 펼쳐진
유달산은 고려시대인 1351년(충정왕 3)에 봉수대가 설치된 곳이기도 하다.
임진왜란 때 군량미가 쌓여 있는 것처럼 위장했다는 일명 노적봉(露積峰)이 있으며,
영산강·삼학도(三鶴島)와 함께 이곳 사람들의 시정(詩情)을 돋우는 아름다운 경관을 갖추고 있다.
삼학도는 1968년 이후 목포와 연결되면서 자연이 크게 파괴되어 과거의 정취를 잃고 말았다.
노령산맥에서 시작되는 영산강은 나주평야를 지나 목포에 이르러 바다로 들어간다.
시가지 주변의 영산강 하구에는 연변·북항·대반동·백련동·갓바위해안 등의 간석지가 있다.
이들 간석지는 육상으로부터의 계속적인 퇴적과 바닷물의 유입횟수가 줄면서
정착하게 된 염생식물 덕분에 퇴적물의 집적과 간척이 용이해져
농경지·주택지·공장부지 등으로 이용되고 있다.
영산강 유역은 강수의 편의율(偏倚率: 치우치는 정도)이 대단히 커서 매년
상습적인 한해(旱害)·홍수 등의 피해가 빈번했다.
이를 극복하기 위한 개발계획의 일환으로 영암군 삼호반도(三湖半島)와의 사이에
하구둑이 축조되어 영산강은 영산호로 변하였다.
해안선 길이는 66.9㎞이다.
도서로는 고하도(高下島)·눌도(訥島)·달리도(達里島) 등
6개의 유인도와 5개의 무인도를 포함하고 있다.
연평균기온은 14℃이고, 1월 평균기온 1.0℃,
8월 평균기온 26.1℃이며, 연강수량은 1,483㎜이다.