Asher is located at (34.988580, -96.926550), at the intersection of U.S. Highway 177 and State Highway 39 in Pottawatomie County. According to the United States Census Bureau, the town has a total area of , all of it land.