동경 127°46′, 북위 34°37′에 위치하며, 돌산읍에서 남서쪽으로 0.3㎞ 지점에 있다. 면적은 0.91㎢이고, 해안선 길이는 5.8㎞이다. 부속도서로 북쪽에는 상증도(上甑島)와 하증도(下甑島), 남쪽에는 장구섬 등이 있으며, 화태도(禾太島)·자봉도(自峯島) 등이 인접하여 있다.
조선 후기에 진주 강씨(晋州姜氏)가 섬에 들어와 강씨 마을을 이루었는데, 당시 섬에 소나무가 무성하였기 때문에 송도로 불렀다고 한다. 지금은 소나무가 거의 없고 모두 밭으로 개간되었다. 송도는 토질이 비옥해서 ‘식도(食島)’라고도 불렸다고 한다.
지질은 대부분 화강암류로 이루어져 있다. 동서 방향의 섬으로 완만한 경사의 구릉지(최고 높이 89m)를 형성하고 있다. 서쪽에는 지구대의 형상을 한 저지대가 있고, 그 앞에 남동쪽으로 향한 만(灣)이 있다. 1월 평균기온은 2.1℃, 8월 평균기온은 24.7℃, 연강수량은 1,247mm이다.
2009년 기준으로 인구는 297명(남 158명, 여 139명)이 거주하고 있으며, 세대수는 98세대이다. 섬의 서쪽에 형성된 저지대를 따라 취락이 집중해 있다.토지이용 현황은 논은 없고 밭 0.35㎢, 임야 0.55㎢이다.
주산업은 농업과 어업이다. 주요 농산물은 서류를 비롯하여 마늘·맥류·시금치·무 등이 있다. 주요 수산물은 감숭어·낙지·톳·바지락 등이 있고, 남쪽 해안에서 굴과 홍합 등의 양식이 행해지고 있다. 교통은 돌산도에서 도선이 운항된다.