Die Werre beginnt ihren Lauf in bei Wehren in der Nähe von Bad Meinberg. Der Quellort ist eher unauffällig, die Quelle entspringt fast im Sumpf. Schnell nimmt das Gewässer an Stärke zu und fließt als ansehnliches Gewässer durch den Kurpark von Horn Bad Meinberg.
Im weiteren Verlauf passiert der Fluss die Städte Detmold und Lage. In Bad Salzuflen trifft die Werre auf die Bega. Als bedeutendster Fluss des Kreises Lippe fließt dieser weiter Richtung Herford und mündet nach 69km bei Bad Oeynhausen in die Weser. Bei 245 über NN entspringt die Werre und mündet in 42m über NN in die Weser. Das ergibt eine Höhendifferenz von 203m. Die mittlere Fließgeschwindigkeit liegt bei ca. 0,3m/sec. Von Wehren bis zur Weser benötigt das Wasser im Schnitt ca. 57 Stunden. Die bedeutendsten Nebengewässer sind die Bega, die Aa und die Else.