Die Ortschaften Krummenau, Neu St. Johann, Nesslau und Stein liegen im oberen Thurtal und Ennetbühl und Rietbad im Luterental an der Schwägalp-Passstrasse.
Zur Gemeinde gehört ein Teil des höchsten Nagelfluh-Bergs Europas, des Speers (1950 m ü. M.), sowie ein Teil des Alpsteins. Das Gemeindegebiet erstreckt sich östlich bis zur Passhöhe der Schwägalp, die die Grenze zum Kanton Appenzell Ausserrhoden bildet. Höchster Berg ganz auf Gemeindegebiet ist mit 2158 Meter die Silberplatten im Alpstein nahe dem Säntis. Durch das Gemeindegebiet fliessen die Thur und die Luteren. Die beiden Flüsse sind im Wappen als zwei silberne Wellenbalken dargestellt. Durch das ehemalige Gemeindegebiet von Stein fliesst ausserdem die Wissthur.