The Teinach rises in the forest north of Neuweiler at about 660 m above sea level and initially flows south across the surrounding plateau, first crossing the Falchenwiesen nature reserve and then the municipality's main town. At the village's sewage treatment plant, it cuts into a valley, where it then continues east; from here to its mouth, the small town of Neubulach is on the right bank. The first left tributary, the Eitelbach, from the plateau is soon followed by the Weikenmühle in the municipality of Neuweiler on the left bank. A little later, from the Glasmühle, it flows north and then, after the Dachshof, at the Lautenbacherhof, it takes in the Lautenbach from the left, which forms the municipal border with the small spa town of Bad Teinach-Zavelstein. Before the Teinach passes the main town on the left bank, its course turns east; in the small town, it flows into the Rötenbach, again from the left. It then turns southeast and is joined by its last major right-hand tributary, the Dürrbach, from the Neubulach municipal area. After a 15.4 km course, it flows into the Nagold from the left near the houses of Teinachtal, which belong to Bad Teinach, and finally flows westward at 342.5 m above sea level. It is 15.4 km long.