본관은 여산(礪山). 자는 사안(士安), 호는 행수(幸叟). 호조참판 송징은(宋徵殷)의 증손으로, 할아버지는 좌참찬 송성명(宋成明)이고, 아버지는 송익장(宋翼長)이며, 어머니는 박태규(朴泰奎)의 딸이다. 예조참의 송익보(宋翼輔)에게 입양되었다.
1746년(영조 22) 알성 문과에 병과로 급제하고 가주서(假注書)가 되었다. 이듬해 예문관검열을 거쳐 1751년 사간원정언(司諫院正言)에 이어 사헌부지평(司憲府持平)이 되고, 1754년 교리(校理)를 지냈다. 1757년 세자시강원보덕(世子侍講院輔德)으로 문과 중시에 병과로 급제하여 승지가 되었다.
1760년 대사간이 되었으나 1763년 공초(供招: 죄인의 진술 조서)의 문서를 잘못 기록한 죄로 대정(大靜)에 유배되었다. 곧 풀려나 대사간·승지 등을 거쳐, 이듬해 동래부사로 재임하던 중 다시 유배되었다가 이듬해 풀려났다.
1767년 다시 대사간이 되고, 1770년 좌승지를 거쳐 가선대부에 올랐다. 이듬해 함경도관찰사로 나갔다가 1772년 대사헌이 되고, 1779년(정조 3) 개성유수를 거쳐 뒤에 호조참판으로 은퇴하였다.