본관은 경주(慶州). 자는 자유(子有)·숙기(叔起), 호는 급류정(急流亭). 서산 출생. 황해도관찰사 김홍욱(金弘郁)의 증손으로, 할아버지는 김세진(金世珍)이고, 아버지는 김두성(金斗星)이며, 어머니는 김영후(金榮後)의 딸이다.
1699년(숙종 25) 정시 문과에 병과로 급제, 검열·주서·정언·부교리·집의·승지·대사간 등을 두루 역임하였다. 경종 때 한성부우윤으로 신임사화에 관련되어 파직되었다가, 1724년 영조의 즉위로 도승지가 되었고, 이듬해 우참찬으로 동지사(冬至使)가 되어 청나라에 다녀왔다.
1727년(영조 3) 정미환국으로 한성부판윤에서 쫓겨났다가 이듬해 우참찬으로 복직되었으나, 영조의 탕평책(蕩平策)에 반대하여 다시 파직되었다. 1730년 좌참찬에 복직되고 이조판서를 거쳐 우의정·영의정에 이르러 기로소에 들어가고, 판중추부사로 치사하여 봉조하(奉朝賀)가 되었다. 시호는 정헌(靖獻)이다.