Freeport is a borough in Armstrong County in the U.S. state of Pennsylvania; it is situated along the Allegheny River in the southwest corner of the county. The population was 1,813 at the 2010 Census.
Freeport is located at 40°40′28″N 79°41′11″W (40.674337, -79.686320). According to the United States Census Bureau, the borough has a total area of 1.3 square miles (3.4 km2), of which 1.3 square miles (3.3 km2) is land and 0.039 square miles (0.1 km2), or 2.20%, is water.
The Kiskiminetas River joins the Allegheny River near Freeport; specifically on its eastern bank between Schenley and Kiskiminetas Junction, less than one mile northeast of Freeport.
Buffalo Creek enters the Allegheny River on its western bank at Freeport.
As of the census of 2000, there were 1,962 people, 878 households, and 532 families residing in the borough. The population density was 1,697.9 people per square mile (653.0/km²). There were 944 housing units at an average density of 816.9 per square mile (314.2/km²). The racial makeup of the borough was 98.42% White, 0.25% African American, 0.25% Asian, 0.05% Pacific Islander, 0.41% from other races, and 0.61% from two or more races. Hispanic or Latino of any race were 0.46% of the population.
There were 878 households, out of which 26.7% had children under the age of 18 living with them, 44.6% were married couples living together, 12.1% had a female householder with no husband present, and 39.4% were non-families. 36.4% of all households were made up of individuals, and 20.5% had someone living alone who was 65 years of age or older.