John Coalter Bates was born in St. Charles County, Missouri on 26 August 1842 and attended Washington University in St. Louis. At the opening of the Civil War, Bates was commissioned a first lieutenant in the 11th Infantry. He fought with the 11th Infantry in the Army of the Potomac and saw action at Antietam, Fredericksburg, Chancellorsville, and Gettysburg. Later, he served as an aide to Major General George G. Meade. Bates was made a captain, and then brevetted major and lieutenant colonel.
In 1866, Bates was assigned to the 20th Infantry and for the next 30 years served on the Indian frontier. He was made a full major in 1882, a full lieutenant colonel in 1886 and a colonel in 1892.
At the outset of the Spanish-American War, Bates was made a brigadier general of volunteers and commanded the U.S. base at Siboney. He was soon made a major general of volunteers. Later he was transferred to the Philippines and negotiated a treaty of American sovereignty with the Sultan of Sulu in 1899. In 1900 and 1901, Bates led the 1st Division, VIII Corps against the Philippine insurgents in southern Luzon. Bates was made a brigadier general in the regular army in 1901 and the next year became a major general. From 15 January 1906 to 13 April 1906, he served as Army Chief of Staff. He received his third star in 1906. Bates died in San Diego, California, on 4 February 1919.