Der Schwindelbach ist Zufluss vom Necker in der Ostschweiz. Seine Länge beträgt rund fünf Kilometer.

Der Bach entspringt auf St. Galler Kantonsgebiet am Fusse der Arnighöchi im Landscheidiwald auf einer Höhe von etwa 1020 Metern über Meer. Kurz nach seiner Entstehung bildet er die Granze zwischen den Kantonen St. Gallen und Appenzell Ausserrhoden. Als Grenzbach fliesst er nun westwärts hinunter zur Nothalde, wo er wieder ganz ins St. Gallische übertritt. Bald passiert er dann das Dorf Dicken und dreht dort gegen Südwesten ab. Zum Schluss geht es durch einen Graben ins Neckertal, wo der Schwindelbach dann nördlich von St. Peterzell auf 685m von rechts in den Necker mündet.

Der Schwindelbach fliesst unter der Gewässerlaufnummer 2248.