Gniezno leży we wschodniej części województwa wielkopolskiego, ok. 10 km od granicy z województwem kujawsko-pomorskim. W Polsce przedrozbiorowej Gniezno od 1314 leżało w województwie kaliskim, z północnej części którego w 1768 wydzielono województwo gnieźnieńskie, które istniało zaledwie przez 24 lata, do II rozbioru Polski (1792), choć jego większą część (ale bez Gniezna) Królestwo Prus zagarnęło już w I rozbiorze Polski (1772). Od 1919 do 1998 miasto nieprzerwanie znajdowało się w granicach województwa poznańskiego, czego nie zmieniły reformy w latach 1938, 1950, 1957 i 1975.
Geograficznie leży na Nizinie Wielkopolskiej, powstało na siedmiu wzgórzach (Lecha, św. Piotra, św. Wawrzyńca, św. Michała, Panieńskim, Krzyżackim i Żnińskim) wśród jezior – według regionalizacji fizycznogeograficznej mezoregionu charakteryzującego się wieloma polodowcowymi jeziorami otoczonymi lasami mieszanymi. Mezoregion ten należy do makroregionu Pojezierze Wielkopolskie – Pojezierza Gnieźnieńskiego.