본관은 광산(光山). 자는 정평(正平), 호는 사휴(思休)·취선(醉仙)·이호(梨湖). 형조참판 김장생(金長生)의 증손으로, 할아버지는 참판 김반(金槃)이고, 아버지는 이조판서 김익희(金益熙)이며, 어머니는 이덕수(李德洙)의 딸이다. 송시열(宋時烈)의 문인이다.
1654년(효종 5)에 춘당대 문과에 병과로 급제, 병조좌랑에 기용되었으나, 처음 벼슬로는 과분하다 하여 겸설서가 되었다. 그 뒤 정언·수찬·검토관·부교리·교리 등을 거쳐, 1662년(현종 3) 장령이 되어 사행(使行)에 따르는 서북연변 각 고을의 경비·사역부담의 과중함을 상소하고 그 시정을 건의하였다. 이어서 집의·필선·사인·보덕 등을 거쳐, 1672년에 승지를 역임하였다.