본관은 순천(順天). 자는 용재(龍在), 호는 서강(西岡). 좌의정 김승와(金承窪)의 후손이며, 아버지는 김순정(金順挺)이다. 일찍 아버지를 여의고 외가에서 자라면서 학문을 좋아하여 승지 이복(李馥) 등 여러 사람을 찾아다니며 배웠다.
1684년(숙종 10) 진사가 되고, 1687년 식년 문과에 병과로 급제하였다. 1689년부터 성균관의 학유(學諭)·학록(學錄)·학정(學正)·박사를 지내고, 1691년에는 전적(典籍)에 올랐다가 병조좌랑·예조좌랑을 역임하였다.
1693년에는 어머니의 봉양을 위해 고령현감으로 나갔다. 이듬해 갑술환국으로 남인이 몰락하자 벼슬을 단념하고, 경사(經史)에 심취하여 만년을 보냈다. 인품이 중후하여 사소한 일에 마음을 두지 않았으며, 자신에 엄격하고 남에게 관대하여 관후장자(寬厚長者)로 일컬어졌다.
또 사치를 경계하고 궁핍한 사람을 돕는 데 힘썼다. 일찍이 이현일(李玄逸)과 『중용(中庸)』·『대학(大學)』을 강론하여 칭송을 받았고, 서법이 훌륭하여 명성이 있었다.