동경 126°, 북위 34°37′에 위치하며, 목포에서 서남쪽으로 39.2㎞ 지점에 있다. 면적은 5.38㎢이고, 해안선 길이는 9.3㎞이다. 지명은 능산마을 뒷산이 능의 형태를 하고 있어 능매라고 부르던 것을 한자어로 바꾸면서 능산(陵山)이 되었다고 전해진다.
지질은 산성화산암류가 대부분이다. 최고 높이 89m인 완경사의 구릉성 산지가 파랑상으로 이루어져 있다. 해안선은 만(灣)과 곶(串)이 반복되어 드나듦이 심하다. 연평균기온은 14.2℃, 1월 평균기온은 0℃, 8월 평균기온은 26℃, 연강수량은 1,024㎜이다.
2009년 기준으로 인구는 50명(남 25명, 여 25명)이고 세대수는 27세대이다. 1670년경에 김해김씨가 들어와 살게 되었다고 전한다. 취락은 능산마을에 집중 분포한다. 토지이용 현황은 논 0.22㎢, 밭 0.22㎢, 임야 1.34㎢이다. 주요 농산물은 쌀과 보리이고, 서류·콩·마늘·참깨 등이 생산된다.
연안 일대는 산란기인 봄과 여름에 제주난류의 북상에 따라 많은 난류성 어족들이 모여들어 좋은 어장을 이룬다. 김과 톳을 양식하며, 동쪽 해안은 갯벌을 막아 염전으로 이용되고 있다. 교통은 하의도 웅곡에서 능산도까지 여객선이 운항되고 있다.