Szanghaj leży na zachodnim brzegu Pacyfiku i we wschodniej części Azji. Ze strony zachodniej graniczy on z prowincjami Jiangsu i Zhejiang, ze strony wschodniej otoczony jest wodami Wschodniego Morza Chińskiego, a z południowej wodami Zatoki Hangzhou.
Wyjątkowe położenie geograficzne i łatwy dostęp do ogromnego lądu wewnątrz Chin sprawiło, że, Szanghaj stał się wyśmienitym i największym portem morskim i rzecznym Chin.
W Szanghaju posiadającym przyjemny północny, nadmorski, monsunowy klimat podzwrotnikowy można wyraźnie odróżnić 4 pory roku. Jest to miasto o dużym nasłonecznieniu i licznych opadach deszczu. Średnia temperatura w mieście wynosi 18,1 stopnia Celsjusza.