Stad kommune ligger på nordsiden av Nordfjorden. Store deler av kommunen består av kupert fjellterreng, og de høyeste fjellene ligger øst i kommunen. Stads høyeste fjell er Glitregga på grensa mot Stryn, som ligger 1297,4 meter over havet. I den nordvestlige delen av kommunen ligger halvøya Stadlandet som strekker seg ut i Stadhavet. Det meste av innsjøen Hornindalsvatnet ligger i den østlige delen av Stad kommune. Innsjøen er Vestlandets største og Norges og Europas dypeste.