自秦到清屬錢塘縣(隋開皇九年改為杭州),民國初年屬杭縣,1927年為杭州市西湖區,1934年為第四區。1949年5月改西湖區。1952年11月10日設立古蕩區,1955年5月撤銷古蕩區并入西湖區。
1958年4月杭州市委決定,市園林管理局與西湖區人民委員會合署辦公。1961年3月,市委決定市園林管理局從西湖區(公社)劃出由市直接領導;并將錢塘聯社的上泗公社劃入西湖區。同年5月,余杭留下公社的九個生產大隊和留下鎮劃入西湖區管轄。
1969年3月,撤銷西湖區,建立杭州市郊區。1972年12月,以市園林管理局為基礎恢復西湖區(與市園林管理局兩塊牌子,一套班子)。1977年10月,西湖區與市園林管理局分開,郊區與西湖區合并為西湖區。
1987年末,西湖區面積228.38平方千米,占杭州市區總面積的53.11%。總人口301824人,其中農村人口114984人。轄北山、南山、靈隱、西溪、翠苑5個街道,祥符、古蕩、留下、轉塘4個鎮和西湖、龍塢、袁浦、周浦4個鄉。1995年袁浦鄉撤鄉建鎮。
1996年5月9日,經國務院批準,將蕭山市浦沿、長河、西興鎮和余杭市三墩鎮劃歸西湖區管轄。5月24日,經浙江省民政廳批準,將西湖區西興鎮的東湘、杜湖、湖頭陳3個行政村劃歸蕭山市城廂鎮管轄。7月24日,杭州市政府決定,將余杭市三墩經濟區蔣村辦事處隨區劃調整轉為杭州市西湖區蔣村辦事處,作為區政府派出機構。至此,西湖區轄北山、南山、西溪、靈隱、翠苑5個街道,蔣村辦事處,古蕩、留下、祥符、三墩、轉塘、袁浦、浦沿、長河、西興9個鎮和西湖、周浦、龍塢3個鄉,總面積403.2平方千米。
1996年12月12日,經國務院批準,將西湖區的祥符鎮劃歸拱墅區管轄;將浦沿、長河、西興三鎮劃歸濱江區管轄。12月30日,經浙江省民政廳批準,將蔣村辦事處改為鄉建制(1997年9月23日正式成立)。1997年12月28日,經省民政廳批準,將龍塢鄉改為鎮建制。全區轄5個街道、6個鎮、3個鄉,總面積312.91平方千米。
1998年8月19日,杭州市民政局批準同意將蔣村鄉的駱家莊、五聯村劃出設立文新街道。1998年末,全區總人口434793人,其中農業人口127034人。
2000年第五次人口普查,全區總人口593324人,其中:南山街道9395人、北山街道36810人、靈隱街道54551人、西溪街道91939人、翠苑街道79168人、文新街道43394人、古蕩鎮49545人、留下鎮34198人、轉塘鎮39155人、袁浦鎮28849人、龍塢鎮12589人、三墩鎮52046人、西湖鄉23292人、周浦鄉21707人、蔣村鄉15753人、之江度假區933人。
2000年末,全區人口47.06萬人。轄北山、南山、西溪、靈隱、翠苑、文6個街道,古蕩、留下、龍塢、轉塘、袁浦、三墩6個鎮和西湖、周浦、蔣村3個鄉,142個行政村、125個居民區。2001年末,全區共有55個社區、25個居民區、142個行政村。
2002年4月,《杭州市人民政府關于西湖區部分行政區劃調整的批復》同意西湖區進行區劃調整:撤銷古蕩鎮、西湖鄉、南山街道,設立古蕩街道、西湖街道(4月30日實施)。古蕩街道面積4.6平方千米,轄9個社區、9個股份制經濟合作社,人口3.3萬人;西湖街道面積44.53平方千米,轄5個社區、9個村,人口1.5萬人。9月19日,市委、市政府決定調整杭州西湖風景名勝區、西湖區和杭州之江國家旅游度假區管理體制,杭州西湖風景名勝區管委會與市園文局實行“一套班子、兩塊牌子”的管理體制,將西湖區的西湖街道(不包括珊瑚沙社區),靈隱街道的金沙港社區,以及北山街道的棲霞嶺社區沿北山路以南部分包括孤山、蘇堤、白堤,交由杭州西湖風景名勝區管委會托管。11月管理體制調整后,西湖區、之江國家旅游度假區實行統一管理,西湖街道(包括原南山街道)委托市園文局(市風景名勝區管委會)管理。
2002年末,全區總面積263平方千米,人口51.84萬人。轄7個街道、5個鎮、2個鄉:北山街道、靈隱街道、西湖街道、西溪街道、翠苑街道、文新街道、古蕩街道、留下鎮、轉塘鎮、三墩鎮、袁浦鎮、龍塢鎮、蔣村鄉、周浦鄉。共有83個行政村、93個居委會(另一數據:共有55個社區、18個居民區、140個行政村)。2003年末,全區共有110個社區、3個居民區、80個行政村。2004年末,全區共有122個社區、3個居民區、64個行政村。
2007年,根據《浙江省人民政府關于杭州市西湖區部分行政區劃調整的批復》(浙政函[2007]147號)和《杭州市人民政府關于西湖區部分行政區劃調整的批復》(杭政函[2007]188號)文件精神,西湖區行政區劃進行如下調整: 一、撤銷袁浦鎮、周浦鄉建制,合并設立雙浦鎮,并將轉塘鎮何家埠、回龍2個行政村劃歸雙浦鎮管轄。調整后,雙浦鎮轄2個社區、30個行政村,鎮政府暫駐袁浦街99號。 二、撤銷轉塘鎮、龍塢鎮建制,合并設立轉塘街道辦事處,并將靈隱街道辦事處珊瑚沙、五云2個社區劃歸轉塘街道辦事處管轄。調整后,轉塘街道辦事處轄25個社區、16個行政村,街道辦事處暫駐轉塘直街7號。 三、靈隱街道辦事處劃出珊瑚沙、五云2個社區,調整后,靈隱街道辦事處轄4個社區、9個行政村,街道辦事處駐地不變(靈隱路18-3號)。 四、蔣村鄉登云圩社區劃歸文新街道辦事處管轄。調整后,文新街道辦事處轄12個社區,街道辦事處駐地不變(文三西路428號)。 五、撤銷蔣村鄉建制,設立蔣村街道辦事處。調整后,蔣村街道辦事處下轄12個社區、1個行政村,街道辦事處駐地不變(文一西路788號)。 六、撤銷留下鎮建制,設立留下街道辦事處。調整后,留下街道辦事處下轄9個社區、2個行政村,街道辦事處駐地不變(留下街128號)。 調整后,西湖區由原先7個鄉鎮、6個街道調整為2個鎮、10個街道,分別是雙浦鎮、三墩鎮;轉塘街道、留下街道、蔣村街道、西湖街道、靈隱街道、西溪街道、翠苑街道、文新街道、古蕩街道、北山街道。西湖區原7個鄉鎮的轄區面積平均為32.92平方千米,人口3.18萬人。10月27日,雙浦鎮、轉塘街道正式掛牌成立。