동경 127°13′, 북위 34°13′에 위치한다.충도수도(忠島水道)를 사이에 두고 평일도에서 북동쪽으로 1.2㎞ 지점에 있다. 면적은 1.20㎢이고, 해안선 길이는 9.0㎞이다.
각종 벌레가 많이 서식하여 ‘충(蟲)’ 혹은 ‘충(虫)’자를 지명에 사용하였으나 일제강점기 이후 섬 모습이 ‘충(忠)’자를 닮았다고 하여 충도(忠島)로 개칭되었다고 한다. 또는 충도에서 마주하고 있는 섬의 이름이 조도(鳥道, 현재의 신도)인 관계로, 이 섬에 잡아먹히는 형국이라 하여 ‘충(忠)’자로 바꾸었다는 이야기도 있다.
지질은 주로 산성화산암류와 화강암류로 형성되어 있다. 북쪽은 기복이 비교적 큰 산지(최고 높이 219m)로 이루어져 있으나 남쪽은 경사가 완만한 구릉성산지로 되어 있다. 해안은 암석해안을 이루는데, 북쪽을 제외한 해안에는 깊은 만입(灣入)이 형성되어 있다. 1월 평균기온은 1.9℃, 8월 평균기온은 25.1℃, 연강수량은 1,282㎜이다.
2009년 기준으로 인구는 135명(남 63명, 여 72명)이 거주하고 있으며, 세대수는 77세대이다. 취락은 남서쪽 해안 중앙의 만입부에 위치한 선착장 부근에 분포한다. 조선 효종 때 장수황씨(長水黃氏)가 처음으로 입도하였다고 전한다. 주민들은 어업에 주로 종사하고 있다.
토지이용 현황은 논 0.07㎢, 밭 0.40㎢, 임야 0.63㎢이다. 농산물로는 콩·마늘·무·배추·고추·참깨 등이 생산된다. 근해에서는 멸치·톳·해삼·게·새우·넙치 등이 어획된다. 섬 주변에서는 김·미역·다시마·전복 등의 양식이 활발하다. 1960∼70년대에는 일본으로 수출하는 김의 주요한 생산지였고, 현재는 다시마 건조장이 섬 곳곳에서 있다. 교통은 고흥군 녹동신항에서 정기여객선이 운항된다.