동경 127°26′, 북위 34°42′에 위치하며, 과역면 연등리 독대마을 해안에서 동쪽으로 약 0.15㎞ 지점에 있다. 내백일도·외백일도·소백일도로 되어 있었으나, 제방으로 모두 연도(連島)되어 백일도라 부르게 되었다. 1989년에 외백일도가 백일대교를 통해 고흥반도에 연륙되었다. 면적은 2.06㎢이고, 해안선 길이는 8.0㎞이다.
조선시대에 전라좌수영 밑의 여도진(呂島鎭)에 속하였다가, 진이 없어진 뒤에 돌산군 옥정면에 편입되었다. 1914년에 행정구역 개편으로 고흥군 남면에 속하게 되었으며, 1937년에 남면과 남양면의 일부를 합해 과역면이 신설되면서 현재의 과역면 백일리가 되었다. 지명은 섬 안에 일월명지가 있어 밝고 흰 것을 나타낸다는 의미로 ‘해나리’라고 부르던 것을 한자화하면서 백일도가 되었다.
지질은 주로 산성화산암류로 형성되어 있다. 경사가 완만한 구릉성산지(최고 높이 81m)로 이루어져 경지가 많은 편이다. 해안은 사질해안(沙質海岸)이 많으며, 섬 주위에는 간석지가 넓게 발달하여서 만입지(灣入地)는 방조제를 쌓아 농경지로 이용하고 있다. 1월 평균기온은 1.4℃, 8월 평균기온은 24.8℃, 연강수량은 1,286㎜이다.
2009년 기준으로 인구는 327명(남 150명, 여 177명)이 거주하고 있으며, 세대수는 154세대이다. 취락의 분포는 남쪽의 내백마을과 북쪽의 외백마을에 집중되어 있다. 토지이용 현황은 논 0.35㎢, 밭 0.58㎢, 임야 1.08㎢이다. 주민 대다수가 어업에 종사하고 있으며, 농어 겸업 가구도 많다.
농산물로는 쌀·고구마·콩·무·마늘·고추·배추 등이 생산된다. 근해에서 전어·숭어·낙지·꽃게 등이 주로 어획되며, 굴·고막·새조개 등의 양식도 행하여지고 있다. 매년 음력 정월 보름에 산당제를 지낸다. 과역동초등학교 백일분교장은 2007년 3월에 폐교되었다.