본관은 김해(金海). 자는 문백(文伯). 아버지는 첨정(僉正) 김희철(金希哲)이며, 광해군의 어머니인 공빈김씨(恭嬪金氏)의 동생이다.
1592년(선조 25) 임진왜란 때 평범한 선비로서 왕을 의주까지 호종하였다.
다음 해 무과에 급제, 1604년 평안도 용천군수를 거쳐 1610년(광해군 2) 첨지중추부사(僉知中樞府事)가 되고, 1616년 함경도병마절도사가 되었다. 탐학한 정치가 많아 삭직당하였다가 이어 포도대장을 거쳐 삼도수군통제사를 역임하였다.
광해군의 외숙으로 1618년 광해군이 인목대비를 폐위하려고 하자, 이를 극간하다가 파직되었으며, 임해군·영창대군의 옥사 때도 이의 부당함을 주장하다가 쫓겨났다.
1623년 인조반정으로 임금에게 죄를 청하였으나, 광해군 때에 대북파의 무고로 여러 차례 관직을 물러난 사실이 있었음을 가상히 여겨 오히려 상을 내렸다. 시호는 의헌(毅憲)이다.