Ryan is a town in Jefferson County, Oklahoma, United States, located just north of the Texas state line. The population was 667 at the 2020 census. Ryan is 2 miles north of the Red River, 11 miles south of Waurika and 115 miles south-southwest of Oklahoma City.