Bath is located in Sagadahoc County
, of which it is the county seat, northeast of Portland
between Brunswick and Wiscasset
along US Highway 1 on the banks of the Kennebec River
near the Atlantic seacoast.
The population estimate for July 1, 1998 was 9,661, a decrease of 138 since 1990.