Gilan ligger nord i Iran og grenser til provinsene Mazandaran i øst, Zanjan og Qazvin i sør og til Ardabil i vest. I nord har Gilan kystlinje mot Kaspihavet.