Teheran na północy osłonięty jest górami Elburs, sięgającymi 4000 m n.p.m., zaś na południu sąsiaduje z pustynią. Sprawia to, że w granicach miasta zauważalne są różnice w klimacie.

Wiosny w Teheranie są łagodne, choć temperatury rosną szybko i w trakcie suchego i gorącego lata często przekraczają 35 °C. Zima zaczyna się zazwyczaj w grudniu i trwa około 4 miesięcy. Sporadycznie towarzyszą jej opady śniegu i lekkie mrozy, szczególnie w nocy.

W styczniu 2008 Teheran nawiedziły wyjątkowo obfite opady śniegu, powodując przerwy w ruchu samochodowym i lotniczym. Zamknięte tymczasowo były również szkoły i urzędy.

Najgorętszym miesiącem jest lipiec (średnio od 24 °C w nocy do 37 °C w dzień), najzimniejszym styczeń (średnio –0,5 °C w nocy do 8 °C w dzień).

Demografia Choć większość mieszkańców stanowią Persowie, potężny napływ ludności w XX wieku sprawił, że Teheran stał się miastem wielonarodowym. Najliczniejszą mniejszością są Azerowie. Inne mniejszości to Ormianie, Kurdowie, Beludżowie, Bachtiarowie, Asyryjczycy, Tałyszowie i Mazandaranie. Wojny w Iraku i Afganistanie spowodowały też znaczny wzrost liczby imigrantów arabskich i afgańskich.