본관은 김해(金海). 자는 자진(子進). 김항(金伉)의 증손으로, 할아버지는 김서(金湑)이고, 아버지는 김극일(金克一)이며, 어머니는 한성부윤 이간(李暕)의 딸이다.
생원시를 거쳐, 1441년(세종 23) 식년 문과에 병과로 급제하고, 감찰·김천도찰방·예조좌랑이 되었다. 1451년(문종 1) 평안도도사를 거쳐 고령현감 등을 역임하였다. 1455년(세조 1) 좌랑으로서 좌익원종공신(佐翼原從功臣) 3등에 책록되고, 곧 의금부진무를 거쳐 오위도총부경력을 역임하였다. 성종 초에 집의에 올랐다가 퇴직하였다. 성품이 단아, 청렴하고 명예와 이익에 초연하였으며, 부자가 모두 문명을 떨쳤다.