Rokytnice nad Jizerou leží v horské oblasti v západních Krkonoších. Rozkládá se v údolí potoka Rokytnice (rozdělena na Horní a Dolní Rokytnici) a na jeho přítocích Huťském a Černém potoce (Rokytno, Horní Domky). Částečně také v údolí Jizery (Dolní Rokytnice, Vilémov) a u pramenů Františkovského potoka (osada Františkov). Leží v Libereckém kraji, v okrese Semily mezi masivy hor Stráž, Studenov, Vlčí Hřeben, Lysá hora a podél levého břehu řeky Jizery.
Minimální nadmořská výška je 447 m n. m, maximální je 1417 m n. m.
Katastrální území je tvořeno katastrálními částmi Dolní Rokytnice nad Jizerou, Horní Rokytnice nad Jizerou, Františkov v Krkonoších, Rokytno v Krkonoších.
Katastrálním územím obce protéká Huťský potok. Pramení v nadmořské výšce cca 1140 m n. m pod chatou Dvoračky a stéká směrem na jihozápad, protéká Rokytnicí nad Jizerou, z pravé strany do něj přitéká Černý potok, který je dlouhý asi 3,5 km. V Rokytnici nad Jizerou se Huťský potok vlévá do Jizery.