본관은 김해(金海). 자는 계운(季雲), 호는 탁영(濯纓) 또는 소미산인(少微山人). 대대로 청도에서 살았다. 할아버지는 김극일(金克一)이고, 아버지는 집의(執義) 김맹(金孟)이며, 어머니는 이씨이다.
1486년(성종 17) 생원에 수석으로 합격하고, 이 해 진사시에 2등으로 합격하였다. 이어 같은 해에 식년 문과 갑과 제2인으로 급제하였다. 처음 승문원에 들어가 권지부정자(權知副正字)로 관직 생활을 시작해, 곧 정자(正字)로서 춘추관기사관(春秋館記事官)을 겸하였다.
그 뒤 진주의 교수(敎授)로 나갔다가 곧 사직하고, 고향에 돌아가 운계정사(雲溪精舍)를 열고 학문 연구에 몰두하였다. 이 시기에 김종직(金宗直)의 문하에 들어가 정여창(鄭汝昌)·강혼(姜渾) 등과 깊이 교유하였다.
다시 벼슬길에 들어서서 승정원의 주서(注書), 홍문관의 박사·부수찬(副修撰), 전적(典籍)·장령(掌令)·정언(正言)을 지냈으며, 다시 홍문관의 수찬을 거쳐 병조좌랑·이조좌랑이 되었다. 그 뒤 홍문관의 부교리(副校理)·교리 및 헌납(獻納)·이조정랑 등을 지냈다.
관료 생활 동안 여러 차례에 걸쳐 사가독서(賜暇讀書: 재능이 있는 문신들에게 문흥을 위해 휴가를 주어 독서에 전념하게 한 제도)를 하여 학문과 문장의 깊이를 다졌다. 그리고 주로 언관(言官)에 재직하면서 문종의 비인 현덕왕후(顯德王后)의 소릉(昭陵)을 복위하라는 과감한 주장을 하였다.
뿐만 아니라 훈구파의 불의·부패 및 ‘권귀화(權貴化: 권세가 있는 귀족으로 됨)’를 공격하고 사림파의 중앙 정계 진출을 적극적으로 도왔다.
그 결과 1498년(연산군 4) 유자광(柳子光)·이극돈(李克墩) 등 훈구파가 일으킨 무오사화에서 조의제문(弔義帝文)의 사초화(史草化) 및 소릉 복위 상소 등 일련의 사실 때문에 능지처참을 당했다. 그 뒤 중종반정으로 복관되고, 중종 때 직제학(直提學), 현종 때 도승지, 순조 때 이조판서로 각각 추증되었다.
17세 때까지는 할아버지 김극일(金克一)로부터 『소학(小學)』·사서(四書)·『통감강목(通鑑綱目)』 등을 배웠으며, 이후 김종직의 문하에 들어가 평생 사사하였다.
김종직의 문인 중에는 김굉필(金宏弼)·정여창 등과 같이 ‘수기(修己: 자기 자신을 닦으면서 수양함)’를 지향하는 계열과, 사장(詞章)을 중시하면서 ‘치인(治人: 남을 다스리는 정치)’을 지향하는 계열이 있었는데, 후자의 대표적 인물이었다.
한편, 현실 대응 자세는 매우 과감하고 진취적이었다. 예컨데 소릉 복위 상소나 조의제문을 사초에 수록한 사실 등에서 정치적 성향을 엿볼 수 있다.
이는 세조의 즉위 사실 자체와 그로 인해 배출된 공신의 존재 명분을 간접적으로 부정한 것으로서, 당시로서는 극히 모험적인 일이었다. 이같은 일련의 일들이 사림파의 잠정적인 세력을 잃게 한 표면적인 원인이 되었다.
저서로는 『탁영집(濯纓集)』이 있으며, 「회로당기(會老堂記)」·「속두류록(續頭流錄」 등 26편이 『속동문선(續東文選)』에 수록되어 있다. 자계서원(紫溪書院)과 도동서원(道東書院) 등에 제향되었다. 시호는 문민(文愍)이다.