757년(경덕왕 16) 금산(金山)으로 고쳐서 개령군(開寧郡)의 영현으로 삼았고, 1018년(현종 9) 경산부(京山府)에 이속되었으며, 1390년(공양왕 2) 감무를 설치하였다. 조선 정종 때 임금의 태(胎)를 묻은 곳이라 하여 군(郡)으로 승격시켰다.
1914년 금산군(金山郡)ㆍ지례군(知禮郡)ㆍ개령군의 3개 군이 통합되어 김천군(金泉郡)이 되었다. 1931년 읍면제 실시에 따라 김천면이 읍으로 승격되었고, 1949년 시로 승격됨에 따라 금릉군으로 개편되었으며, 1995년 금릉군과 김천시가 통합되어 새로운 시로 되었다.
647년(진덕여왕 1) 백제군이 무산(茂山)ㆍ감물(甘勿)ㆍ동잠의 3성을 침입하여 김유신(金庾信)이 이를 막았다는 기록으로 보아 소백산맥 동쪽 사면의 신라 국경의 요충지였던 곳이었다. 당시에는 서쪽으로 괘방령(掛榜嶺)을 지나 백제의 무주(茂朱)와 연결되었고 북쪽은 추풍령을 통해 황간(黃澗)에 이어져 신라가 통일되기 전에 이곳에 많은 산성을 쌓았다. 고성산(高城山)에는 조선 말기까지 산성의 유적이 남아 있었다.