본관은 강릉(江陵). 자는 회이(晦而), 호는 매곡(梅谷). 김선여(金善餘)의 증손으로, 할아버지는 김득원(金得元)이고, 아버지는 제용감봉사(濟用監奉事) 김홍주(金弘柱)이며, 어머니는 주서(注書) 남궁배(南宮培)의 딸이다. 아들이 영의정 김상철(金尙喆)이다.
1708년(숙종 34) 식년 문과에 을과로 급제, 1710년 시강원설서(侍講院說書)를 시작으로 정언(正言)·병조좌랑·지평·충청도사·고산찰방(高山察訪) 등을 거쳐, 영광군수(靈光郡守)로 나가서 큰 치적을 올렸다. 특히, 삼남지방 양전(量田: 토지 조사)의 부세를 배로 올려 국가에 이익이 되게 하였다.
1722년(경종 2)에 수찬(修撰)·교리(校理)를 거쳐 헌납(獻納)·사간·집의(執義)·필선(弼善)·보덕(輔德)·장악원정(掌樂院正)을 지냈다. 이 때 호서 지방의 안찰사(按察使)로 나가 사정을 살핀 뒤 군역(軍役)의 변통을 주장하면서, 당시 시행 중이던 군포감반지법(軍布減半之法: 군포의 부담을 절반으로 줄인 조치.)은 각 읍의 잡역미(雜役米)로써 충당한 후라야 가능하다고 상주하였다.
그 뒤 동지사(冬至使)의 서장관(書狀官)으로 청나라에 다녀왔다. 1724년(경종 4)에 수원부사로 나갔다가 영조 즉위 후 물러났으나 1727년(영조 3) 정미환국 이후 다시 기용되어 황해도관찰사로 나갔다. 1729년에 호조참의를 거쳐 대사간·동부승지·춘천부사를 지냈다.
1734년 함경도관찰사를 지낸 뒤 다시 대사간과 호조·예조·병조·형조·공조의 참의를 거쳐 호조참판 겸 부총관(戶曹參判兼副摠管) 및 비변사제조(備邊司提調)로 승진해 명사변무(明史辨誣)를 위해 다시 청나라에 다녀왔다. 그 뒤 한성부의 좌윤·우윤과 호조참판 겸 전설사제조(戶曹參判兼典說司提調)를 지냈다.
1741년 강화유수로 부임해 청나라에서 견문한 벽돌 굽는 법을 도입해 강화외성(江華外城)을 쌓는 데 공을 세웠다. 1744년에는 한성부판윤 겸 지의금부사(漢城府判尹兼知義禁府事)와 평시서제조(平市署提調)를 거친 뒤 대사헌이 되었고, 1745년 기로사(耆老社)에 들어갔다.
그 뒤에도 공조판서·대사헌·의정부좌참찬·지중추부사 겸 빙고제조(知中樞府事兼氷庫提調) 등과 숭정대부(崇政大夫)로 품계가 올라 판돈녕부사(判敦寧府事)까지 제수되었다.