L’Oder prend sa source dans le district de Goslar, au cœur des montagnes du Harz. Sa source est située dans la partie sud du Brockenfeld, à environ 1,3 km (0,81 mi) au nord de l’Achtermannshöhe. La source de la rivière est appelée Odersprung ou « saut de l’Oder ».
Sur le Brockenfeld, qui est proche de l’Odersprung, les rivières Abbe, Große Bode, Ecker et Kalte Bode ont également leurs origines respectives. Sur son périmètre se trouve l’ancienne borne Dreieckiger Pfahl.
Après que l’Oder soit passée sous la route fédérale B 4 à Oderbrück dans le sens est-ouest, elle est mise en eau pour la première fois à l’ouest du village dans l’Oderteich, où elle fait un coude vers le sud. Quelques kilomètres plus loin en aval, la rivière est endiguée pour la deuxième fois non loin au sud-ouest de la scierie de la vallée de l’Oder (Odertaler Sägemühle) par le barrage de l’Oder. Par la suite, le fleuve traverse Bad Lauterberg et quitte le Harz.
À Bad Lauterberg, l’Oder s’oriente vers l’ouest, traverse Pöhlde et Hattorf am Harz, passe au nord de la crête du Rotenberg et atteint Wulften. A Hattorf, il recueille la rivière Sieber venant du nord-est, avant de se jeter dans la Rhume (un affluent de la Leine) à Katlenburg par l’est.
Entre Scharzfeld et Katlenburg, l’Oder traverse la réserve naturelle d’Oderaue.