Барнаул расположен в лесостепной природной зоне Западно-Сибирской равнины, на северо-востоке Приобского плато, в верхнем течении Оби на её левом берегу, в месте впадения реки Барнаулки в Обь. С севера и востока Барнаул огибает русло Оби, на юго-западе — ленточный бор