In Montague County, Saint Jo is located north of Fort Worth between Wichita Falls and Gainesville on US 82 and Hwy 59.
It was originally known as Head of Elm when established in 1856 near springs which were the headwaters of the Elm Fork of the Trinity River. Renamed for Joe Howell who laid out the townsite. Howell allegedly opposed the sale of liquor in town, thus giving both himself and his town the nickname of "Saint Jo".
In 1926 oil was discovered just across the county line in Cooke County, and local hay and asphalt production prospered. By the late 1940s St. Jo had 1,010 persons and forty-eight businesses. Its population increased to 1,147 ten years later, and then declined somewhat, reaching 1,067 during the late 1960s. The number of businesses in 1957 was thirty-nine. In the mid-1970s the town had a population of 1,105 and twenty-seven businesses. In 1989 it had 1,717 people and twenty-four businesses.
In 1990 the population was 1,048.