본관은 연안(延安). 자는 계수(季受). 이제상(李濟相)의 증손으로, 할아버지는 이춘정(李春挺)이다. 아버지는 이조판서 이징대(李徵大)이며, 어머니는 이발형(李發馨)의 딸이다. 채제공(蔡濟恭)의 문인이다.
1774년(영조 50) 식년 문과에 을과로 급제해 1780년(정조 4) 정언(正言)이 되었다. 1782년 스승 채제공을 위해 원통함을 변론하다가 파직당하고, 1794년 역인(逆裀)의 죄를 논하다가 강화부(江華府)에 유배되었으나, 죄가 용서되어 다시 승지에 임명되었다.
그러나 경연석상에서 방자한 습성이 심하다는 벽파(僻派)의 논척(論斥)으로 다시 흑산도의 유배가 결정되었다가 특별히 사면되기도 하였다.
그 해 11월 정조가 영남 22읍에 견휼(蠲恤: 재해로 세금을 감면함)의 윤음을 내릴 때, 경상도위유사(慶尙道慰諭使)가 되어 여러 가지 시무책(時務策)을 건의하였다. 1801년(순조 1) 경기도관찰사 때 주문모(周文謨)와 관련된 천주교신자 18인을 잡아 심문한 뒤 그 중 3인을 참형(斬刑)에 처하였다.
그 뒤 스승 채제공의 관작이 추탈되던 때에 이윤행(李允行)·박명섭(朴命燮) 등의 모함을 받아 파직되었다가, 1805년 직첩(職牒)을 돌려 받고 판서에 임명되었으나 사양하였다. 2년 뒤 이시수(李時秀)의 추천으로 지중추부사에 임명되었으나 다시 사양하다가 1812년 반송사(伴送使)에 임명되었다.
1815년 대사헌 재직 때 성균관 유생들에 의해 당시 사학(邪學)을 비호한다는 탄핵을 받았고, 이듬 해에도 유생 양규(梁珪)·심의영(沈宜永)의 척사소(斥邪疏)에 걸려 문제가 되기도 하였다. 벼슬은 예조판서에 이르렀다. 1835년(헌종 2) 정숙(靖肅)이라는 시호를 받았다.