Der Stadtmühlbach verläuft komplett im Stadtgebiet von Weiden in der Oberpfalz. Im Stadtteil Hammerweg zweigt er von der Schweinenaab ab und fließt dann in künstlichem Flussbett in den Stadtteil Scheibe. Hier wird er von einem Weiher aufgestaut. Danach fließt er in den Max-Reger-Park – benannt nach dem Komponisten Max Reger – entlang der ehemaligen Stadtmauer.[1] Dort gibt es einen Zufluss des Weidingbachs, rechts der Flussrichtung des Stadtmühlbachs. In den Naabwiesen mündet er in die Waldnaab.[2]
Der größte Zufluss ist der Weidingbach. Er ist 6,71 Kilometer lang und hat ein Einzugsgebiet von 15,26 Quadratkilometern. Ein weiterer erwähnenswerter Zufluss ist der Rehmühlbach mit einem Einzugsgebiet von 5,10 km² und einer Länge von 1,65 km.[3]
In der Bayrischen Uraufnahme (1808–1864) ist der Verlauf des heutigen Stadtmühlbachs bereits in einigen Teilen erkennbar.
Es besteht bereits der Orthegelmühlbach, welcher von der Schweinenaab abzweigt und auf dem heutigen Verlauf bis zur Orthegelmühle fließt. Von dort aus fließt der damalige Orthegelmühlbach in zwei scharfen Kurven wieder in die Schweinenaab. Auf Höhe der Kirche Sankt Sebastian erhält dieser Bach dann den Namen Hahnenbach, welcher kurz darauf in die Waldnaab fließt.
Die Waldnaab floss damals etwas näher an der Stadt entlang, etwa auf der heutigen Trasse des Stadtmühlbachs. In der Nähe des Schlorplatz war ein Wehr. Dessen Wehrgraben lief parallel zur Stadtmauer entlang bis zu einer Mühle an der südwestlichen Ecke der Altstadt. Der Verlauf der Waldnaab gleicht also dem heutigen Verlauf des Stadtmühlbachs.
Erst mit dem Bau des Flutkanals um 1940 wird der Stadtmühlbach nahe dem Schlörplatz endgültig von der Waldnaab getrennt. Die Mühle blieb noch etwa bis 1990 erhalten.