South Haven is a census-designated place in Portage Township, Porter County, in the U.S. state of Indiana. The population was 5,282 at the 2010 census.