During the Spring and Autumn Period (770-476 BC), Guiyang was originally under the jurisdiction of Zangke county. In the Warring States Period (475 – 221 BC), it was subordinate to Yelang state and then to Zangke prefecture in the period of the Western Han (206 BC – AD 24) and Eastern Han (AD 25 – 220) dynasties. During the period of the Tang Dynasty (AD 618 – 907), the central government set up Jimi prefecture south of the Wujiang River. At that time, Guiyang was subordinate to Ju prefecture. In the period of the Song Dynasty (AD 420 – 479), Guiyang was called Guizhou. In the first year of the reign of Xuanhe (1119), Ju prefecture was renamed Guizhou. In the 17th year of the reign of Zhiyuan of the Yuan Dynasty (1280), a prefecture office named Shunyuanlu Xuanfusi (meaning "consoling protocol department") was set up. The name was changed to Xuanweisi (meaning "comforting protocol department") in the next year. In the 20th year (1283), a commanding department called Zhangguansi was set up to administrate Shunyuanlu, which was originally subordinate to Sichuan province and then to Huguang province. In the 29th year (1292), the departments of Shunyuan and Bafan were combined as one. A Bafan-Shunyuan department was set up with its marshal mansion house in Shunyuan city (or present-day Guiyang city).
In the fourth year of the reign of Hongwu of the Ming Dynasty (1371), Xuanweisi department was set up to administer Guizhou (presently Guiyang). In the sixth year of the reign of Hongwu of the Ming Dynasty (1373), Weizhihui office (meaning "guards commanding office") was set up. In the 15th year of the reign of Hongwu (1383), Duzhihui office (meaning "military governor's commanding office") was set up to administrate 18 guard stations in Guizhou. In the 26th year, Guizhou Forward Guard Station was set up. In the 11th year of the reign of Yongle of the Ming Dynasty (1413), a protocol department of political deputy was set up. Guizhou was set up as a province and Guiyang became the center of policy, military, economy and culture. In March of the third year of the reign of Longqing of the Ming Dynasty (1569), the Chengfan prefecture government was renamed Guiyang prefecture. In the 14th year of the reign of Wanli of the Ming Dynasty (1586), Xingui county was set up, subordinate to Guiyang prefecture. In the 29th year (1601), Guiyang prefecture was enlarged as Guiyang Forces and People prefecture. In the 36th year (1618), Guiding county was separated from Xingui county, which was still subordinate to Guiyang Forces and People prefecture. In the fourth year of the reign of Chongzhen (1631), Guizhou Xuanweisi department was abolished and its administrative Shuidong area was separated and subordinated to Kai prefecture. At the end of the Ming Dynasty, Guiyang Forces and People prefecture had jurisdiction over Xingui county, Guiding county, Kai prefecture (presently Kaiyang county), Guangshun prefecture (presently Changshun county) and Dingfan prefecture (presently Huishui county). It also administered four protocol departments of commanding officials.
In the 16th year of the reign of Shunzhi of the Qing Dynasty (1659), the Guizhou provincial governor was stationed at Guiyang Forces and People prefecture. In the fifth year of the reign of Kangxi (1666), the governor of Yungui was also stationed at Guiyang. In the 26th year (1687), Guizhou guard station and Guizhou forward guard station were abolished. Guizhou county was also set up in the same city of Xingui county. The Guiyang Forces and People prefecture was altered as Guiyang prefecture. In the 34th year (1695), Xingui county was merged into Guizhu county. In the 14th year of the reign of Qianlong (1749), Guiyang prefecture administered Guiding county, Longli county, Xiuwen county, Kai prefecture, Guangshun prefecture and Changzhaiting (presently Changshun county). In the seventh year of the reign of Guangxu (1881), Luohuting (presently Luodian county) was also subordinate to Guiyang prefecture.
In the third year of the Republic of China (1914), Guiyang prefecture was abolished and Guiyang county was set up. At that time, Guizhou was divided into three routes, where Guiyang county was subordinated to Qianzhong route (an administrative area). In order to make administration convenient, the Guizhu county office was stationed at Zhazuo, then transferred to Xifeng and named Xifeng county. In the ninth year (1920), the Qianzhong route was abolished and Guiyang county was directly subordinated to Guizhou provincial prefecture. In the 25th year (1936), there were eight administrative supervising districts subordinated to Guizhou province, where Guiyang county was the first administrative supervising district. In the next year, Guiyang county was directly subordinated to the provincial government. On July 1, the 30th year (1941), Guiyang county was abolished and Guiyang city was set up. In addition, Guizhu county was stationed at Huaxi. From that time on, there were no alterations until liberation.
Guiyang city was liberated on November 15, 1949. The Guiyang Municipal People's Government was established on November 23. At the same time, Guiyang Special Zone was also set up, administering Guizhu, Xiuwen, Kaiyang, Xifeng, Huishui and Longli counties. The administrative office was located at Guizhu county (Huaxi). In 1952, Guiyang Special Zone was abolished and Guiding Special Zone was set up.
In 1954, Guizhu county was put under the administration of Guiyang city. In 1958, Guizhu county was abolished. In the suburb of Guiyang city, Huaxi and Wudang districts were set up. Approved by the State Council, Qingzhen, Xiuwen and Kaiyang counties of Anshun Special Zone as well as Huishui county of the Qiannan autonomous prefecture were put under the administration of Guiyang city. In 1959, Baiyun town was established equivalent to an administrative unit directly subordinate to Guiyang city. In 1963, Kaiyang county was put under the Zunyi prefectural administrative commissioner's office, Xiuwen and Qingzhen counties under the Anshun prefectural commissioner's office, and Huishui county under the Qiannan autonomous prefecture. In 1973, Baiyun district was re-established. In 1992, Qingzhen county was renamed Qingzhen city. Approved by the State Council, since January 1, 1996, Qingzhen city and the counties of Xiuwen, Xifeng and Kaiyang (that is, one city and three counties) were all put under the administration of Guiyang municipality. In January 2000, Xiaohe district of Guiyang municipality was established as approved by the State Council. In 2012, the State Council approved Guiyang's bid to combine the former Huaxi and Xiaohe districts to create Huaxi district. It also gave the nod to combine the Jinyang sub-district of Wudang district, Jinhua town, Zhuchang town and Qingzhen city's Baihuahu township to make Guanshanhu district.