遼置信州武昌縣(治秦家屯鎮),后廢。
清同治五年(1866),屬昌圖廳。
光緒三年(1877),置懷德縣,屬奉天昌圖府。
1914年,屬奉天省洮南道。
1929年,直屬遼寧省。
1931年,治所遷公主嶺。
1945年10月,懷德縣劃歸吉合區行政委員會長春地區管轄;12月,直屬吉林省。
未久改歸遼北省懷德專區。
1946年2月,劃歸遼西省二專區。
1946年6月,劃歸遼吉區二專區。
1948年2月,劃歸遼北省后方辦事處;7月,劃歸遼吉區第二專區。
1948年10月,劃屬遼北省。
1949年3月,設立公主嶺市,為丙等城市;5月,變為縣轄市;懷德縣劃屬吉林省。
1952年9月,公主嶺市定為區級市,隸屬懷德縣;10月14日,撤銷長春縣,將長春縣的三區燒鍋、四區和氣、五區雙城堡劃給懷德縣。
1956年7月,設立懷德專區,行署駐公主嶺鎮。
設立公主嶺市,以原公主嶺鎮的行政區域為公主嶺市的行政區域;9月,公主嶺市改為區級鎮。
1956年10月,懷德專區更名為公主嶺專區;10月,公主嶺鎮從懷德縣析出,成立公主嶺市(縣級),為省轄市。
1958年10月,撤銷公主嶺專區,設立四平專區,懷德縣、公主嶺市等劃歸四平專區。
1960年1月,撤銷公主嶺市,恢復公主嶺鎮,隸屬懷德縣。
1983年,屬四平市。
1985年2月,撤銷懷德縣,設公主嶺市(地級),分設懷德、公主嶺2縣級區,并將四平市的伊通縣劃歸公主嶺市。
1986年1月,公主嶺市改為縣級市,撤公主嶺、懷德二區,伊通縣劃歸四平市。
公主嶺市由四平市代管,計劃由省單列。
2020年6月,公主嶺市由長春市代管。