1435년(세종 17년) 서울 무반의 집안에서 태어났다. 어려서부터 신동으로 알려져 생후 8개월에 글뜻을 알았고, 3세 때 보리를 맷돌에 가는 것을 보고 “비는 아니 오는데 천둥소리 어디서 나는가, 누른 구름 조각조각 사방으로 흩어지네.”라는 시를 지었다는 일화가 유명하다.
15세 때 어머니가 별세하여 시골 외가에 가 삼년상을 치르고, 18세에 남효예의 딸과 혼인하고 서울로 올라와서 과거 공부를 시작했다. 삼각산 중흥사에서 공부하던 중 세조의 왕위 찬탈 소식을 듣고 통분하여, 책을 태워 버리고 중이 되어 방랑의 길을 떠났다.
관서, 관동, 호남 등지의 농촌, 어촌, 산촌을 두루 돌아다니며 백성들의 생활을 체험하다가 29세 때 효령대군의 추천으로 서울에 올라가 열흘 동안 궁중의 내불당에 머물면서 『묘법연화경』 언해 사업에 참여했다. 다시금 표연히 방랑의 길을 떠나 31세 때 경주 금오산에 집을 짓고 자리를 잡았다. 그때부터 7년간 금오산에서의 생활이 이어졌는데, 이때 『금오신화』를 창작한 것으로 추정된다.
38세 때 서울로 돌아와 새 조정에서 임금을 보필하고자 하는 포부를 가지고 경전을 다시 익히나 관직에 진출하고자 했던 꿈이 좌절되고 수락산에 새로운 터전을 마련했다. 47세 때 환속하여 안 씨의 딸과 혼인하나 이듬해 아내가 죽고, 조정에서 폐비 윤 씨 사건이 일어나자 다시 관동 지방으로 방랑길을 떠났다.
1493년(성종 24년) 부여 무량사에 머물면서 절에서 간행한 『묘법연화경』에 발문을 쓰고 며칠 후 59세의 나이로 세상을 떠났다.