본관은 광산(光山). 자는 자적(子迪). 형조참판 김장생(金長生)의 증손으로, 할아버지는 참판 김반(金槃)이고, 아버지는 승문원 부정자 김익후(金益煦)이며, 어머니는 심정화(沈廷和)의 딸이다.
1682년(숙종 8) 주부로서 춘당대 문과(春塘臺文科)에 을과로 급제하여 지평이 된 뒤 정언·부교리·부수찬·교리·수찬을 지냈고, 1688년 강원도관찰사가 되었다. 1689년 3월 숙부 김익훈(金益勳)의 신원을 위해 사판(仕板) 삭제를 청하다가 변방으로 귀양갔다. 1694년 갑술환국으로 다시 등용되어 동부승지가 되고 부제학·전라도관찰사를 거쳐 1697년 이조참의가 되었다.