Lyndon is a city in and the county seat of Osage County, Kansas, United States. As of the 2010 census, the city population was 1,052. It is part of the Topeka, Kansas Metropolitan Statistical Area.
Lyndon is located at 38°36′37″N 95°41′7″W / 38.61028°N 95.68528°W / 38.61028; -95.68528 (38.610233, -95.685352). According to the United States Census Bureau, the city has a total area of 0.8 square miles (1.9 km²), all of it land.
As of the census of 2000, there were 1,038 people, 419 households, and 297 families residing in the city. The population density was 1,387.5 people per square mile (534.4/km²). There were 453 housing units at an average density of 605.5 per square mile (233.2/km²). The racial makeup of the city was 97.98% White, 0.48% Native American, 0.19% Asian, 0.10% Pacific Islander, 0.77% from other races, and 0.48% from two or more races. Hispanic or Latino of any race were 0.77% of the population.