Barnsdall is a city in Osage County, Oklahoma, United States. The population was 1,325 at the 2000 census.
Barnsdall is located at 36°33′34″N 96°09′40″W / 36.559344°N 96.161062°W / 36.559344; -96.161062.
According to the United States Census Bureau, the city has a total area of 0.6 square miles (1.6 km2), all of it land. The townside was founded in 1905 and originally named Bigheart, for the Osage Chief James Bigheart. It was renamed in 1922 in honor of oilman Theodore Newton Barnsdall.