Indian Shores, FL has a population of 1,498 and is the 12,690th largest city in the United States. The population density is 4,428 per sq mi which is 1408% higher than the Florida average and 4788% higher than the national average. The median age in Indian Shores is 62 which is approximately 48% higher than the Florida average of 42. In Indian Shores, 68% of the population over 15 years of age are married, 93% speak English and 2% speak Spanish. 19% of Indian Shores residents were born in Florida, 73% were born out of state, 1% were born outside of the United States and 7% were foreign born.