본관은 개성(開城). 자는 영수(永受), 호는 복헌(復軒), 담졸당(擔拙堂). 의원(醫員) 김진경(金振景)의 아들이다. 화원이었던 노태현(盧泰鉉)의 외손서(外孫壻)이고, 이명기(李命基)와 장한종(張漢宗)의 장인이며, 김득신(金得臣)과 김양신(金良臣)의 큰아버지이다. 후사가 없어 동생 김응리(金應履)의 아들 김석신(金碩臣)을 양자로 삼았다.
도화서(圖畵署)의 화원이었으며, 소촌찰방(召村察訪), 상의원별제(尙衣院別提)를 지냈다. 조선 후기 도화서 화원을 다수 배출한 화원가문을 이루었던 개성 김씨 집안에서도 핵심적 위치를 차지하는 인물로서 이후 이 집안 출신 화원들에게 미친 영향이 상당히 컸다.
1759년 영조정순후(英祖貞純后) 『가례도감의궤(嘉禮都監儀軌)』와 1762년 정조효의후(正祖孝懿后) 『가례도감의궤』 제작에 참여하였다. 1787년에는 익선관본(翼善冠本) 정조 어진(正祖御眞) 도사(圖寫)에 수종화사(隨從畵師)로 활약하였다. 1788년에는 정조의 명으로 김홍도(金弘道)와 함께 영동 9군과 금강산을 유력(遊歷)하며 실경을 그렸다. 이때 강세황(姜世晃)이 동행하였다.
그는 김홍도의 스승으로 전해지기도 하지만, 두 사람의 나이 차는 세 살밖에 되지 않아 와전된 기록으로 보인다. 안동 김씨 가문의 서외손(庶外孫)으로 시서화에 조예가 깊었던 성대중(成大中)과 친밀히 교유했다. 성대중으로부터 「복헌기(復軒記)」를 지어 받기도 하였다.
그는 남종화법(南宗畵法)의 산수와 진경산수(眞景山水)에 모두 능했다. 남종산수화는 주로 전기 작품의 주종을 이루며 진경산수화는 주로 후기 작품이다. 그의 남종산수화에는 강세황의 영향이 두드러지게 나타난다. 진경산수화의 대부분은 금강산을 그린 작품으로 정선(鄭敾)의 화풍을 계승하고 있다. 특히 그가 30세 되던 해인 1772년김홍도에게 그려준 「금강전도」에 정선 화풍의 영향이 두드러지게 나타나 있다.
16년 뒤인 1788년 왕명으로 그렸던 「금강산도」에는 꽉 채운 구도라든가 갈필의 터치 그리고 부드러운 먹의 농담(濃淡) 변화와 담채(淡彩)의 효율적인 사용 등으로 독특한 화면을 이룩하였다. 그리고 남종산수에서는 강세황과 심사정(沈師正)의 영향을 강하게 드러낸다. 미법산수(米法山水) 계통의 발묵법(潑墨法: 글씨나 그림에서 먹물이 번져 퍼지게 하는 기법)을 구사하여 짙고 흐린 대비 효과와 미묘하게 변하는 먹빛의 변화를 잘 살렸다.
그는 정선의 영향을 발판으로 성장했던 대표적 화가로서 진경산수의 발전 및 남종산수의 전개에 기여한 바가 크다. 대표작으로 개인 소장 「금강산화첩」, 「금강전도」, 국립중앙박물관 소장의 「강안청적도(江岸聽笛圖)」, 개인소장 『복헌백화시화합벽첩(復軒白華詩畵合壁帖)』 등이 있다.