동경 127°06′, 북위 34°19′에 위치하며, 완도읍에서 동쪽으로 21㎞ 지점에 있다. 면적은 1.00㎢이고, 해안선 길이는 5.0㎞이다. 평일도(平日島) 남쪽의 사동리 해안에서 0.4㎞ 떨어져 있다. 남동쪽에 다랑도(多浪島), 남서쪽에 우도(牛島)가 있다. 소랑대교를 통해 금일읍의 주도인 평일도와 연결된다.
바다의 물결이 항상 잔잔하고 세찬 폭풍우에도 큰 물결이 일지 않는다 하여 소랑도라 부르게 되었다고 한다. 또는 섬의 모양이 소라와 비슷하게 생겨 비롯된 지명이라고도 한다.
지질은 대부분 화강암류로 이루어져 있다. 경사가 비교적 완만한 구릉성산지(최고 고도 106m)를 이룬다. 해안은 대부분 암석해안으로 남쪽의 일부 해안에는 해식애가 발달하였다. 1월 평균기온은 1.9℃, 8월 평균기온은 25.1℃, 연강수량은 1,282㎜이다.
2009년 기준으로 인구는 112명(남 56명, 여 56명)이 거주하고 있으며, 세대수는 50세대이다. 취락은 북쪽 해안의 만입지(灣入地)에 집중되어 있다. 토지이용 현황은 논 0.06㎢, 밭 0.26㎢, 임야 0.25㎢이다.
주산업은 어업이며, 농산물로는 보리·감자·마늘·무·콩 등이 조금 생산된다. 근해에서 멸치와 장어, 게, 새우 등이 주로 어획되며 미역·다시마·전복 등의 양식업도 활발하다. 다시마가 주요 특산물이다. 금일동초등학교 소랑분교장은 2006년에 폐교되었다.