Neptune Beach was part of Jacksonville Beach until 1931 when residents voted to secede and incorporate as their own town. The name "Neptune Beach" was first applied to the area in 1922 when one of the few residents built his own train station, "Neptune", requiring the train to stop and take him to Mayport each day.
Neptune Beach is part of the Jacksonville Beaches community.
Neptune Beach is located at (30.316641, -81.403081).
There were 3,282 households out of which 24.2% had children under the age of 18 living with them, 44.9% were married couples living together, 8.2% had a female householder with no husband present, and 43.4% were non-families. 31.3% of all households were made up of individuals and 7.7% had someone living alone who was 65 years of age or older. The average household size was 2.22 and the average family size was 2.85.
In the city the population was spread out with 19.3% under the age of 18, 8.4% from 18 to 24, 33.3% from 25 to 44, 26.9% from 45 to 64, and 12.1% who were 65 years of age or older. The median age was 39 years. For every 100 females there were 103.8 males. For every 100 females age 18 and over, there were 99.7 males.
The median income for a household in the city was $53,576, and the median income for a family was $65,684. Males had a median income of $43,431 versus $30,264 for females. The per capita income for the city was $30,525. About 1.9% of families and 2.5% of the population were below the poverty line, including 1.8% of those under age 18 and 2.9% of those age 65 or over.