I will assume you are driving.
St Etienne is not really an option: it is of questionable interest to the average tourist, it is not exactly on the way, and it is very close to Lyon.
Clermont-Ferrand is a good choice if you seek urban life.
If you want a smaller place, you could stay in Royat immediately above Clermont (thermal town with some good late 19th c. architecture), or in Châtel-Guyon (similar vibe).
If you want nature, the volcanic region to the west is beautiful and you could enjoy the good views even as an overnight stay, e.g. in le Mont Dore or la Bourboule (both have a lot of hotels) or in the smaller villages between there and Clermont (scattered accomodation).