Evans City is located in southwestern Butler County at (40.769310, -80.061409), in the valley of Breakneck Creek. It is bordered to the north, west, and south by Jackson Township, and to the north, east, and south by Forward Township.
