明洪武十四年(1381)建城。
明洪武十五年(1382)置烏撒衛(wèi),為衛(wèi)治。
清康熙四年(1665)后歷為府、州、縣治所。
1949年為忠義鎮(zhèn)。
1952年更名城關(guān)鎮(zhèn),并置葡萄、新關(guān)、小山、火龍、三臺、保家等鄉(xiāng)。
1958年撤鎮(zhèn)鄉(xiāng)建東方紅公社。
1962年析置城關(guān)鎮(zhèn)及草海、六洞、保家公社。
1980年更城關(guān)鎮(zhèn)為草海鎮(zhèn)。
1992年白馬鄉(xiāng)、東山鄉(xiāng)、小山鄉(xiāng)、北鎮(zhèn)鄉(xiāng)等鄉(xiāng)并入置草海鎮(zhèn)。
2013年析置出五里崗街道、六橋街道、陜橋街道、海邊街道。