Richland Township is located in western Clarion County and is bordered to the west by the Allegheny River, which forms the Armstrong County line. A small portion of the river border touches Butler County. The township is bordered to the northwest by Venango County. The winding Clarion River forms southern boundary of the township. The borough of St. Petersburg is south of the center of the township, and the borough of Foxburg is along the western edge of the township at a crossing of the Allegheny. A small portion of the borough of Emlenton touches the northwest corner of the township. All of the boroughs are separate municipalities from the township.