Elmo started about one mile from its current location, but the source of the name is unknown. When the Missouri Pacific Railroad was built through the area, the railroad didn't like the Elmo location because it was sloping ground, so it built a station at nearby Banner City (current location of Elmo). The old Elmo post office was moved to Banner City around 1887. The name Banner City already existed in Jackson and Trego counties, so eventually the Elmo name replaced it. The post office was opened in Elmo on December 16, 1884, and remained in operation until it was discontinued on May 6, 1966. The railroad was removed in the 1990s.