Indian Harbour Beach, FL has a population of 8,381 and is the 4,531st largest city in the United States. The population density is 3,971 per sq mi which is 1253% higher than the Florida average and 4283% higher than the national average. The median age in Indian Harbour Beach is 50 which is approximately 20% higher than the Florida average of 42. In Indian Harbour Beach, 55% of the population over 15 years of age are married, 94% speak English and 4% speak Spanish. 29% of Indian Harbour Beach residents were born in Florida, 64% were born out of state, 2% were born outside of the United States and 5% were foreign born.