본관은 광양(光陽). 자는 천민(天民). 일찍이 문과에 급제하여 예부시랑(禮部侍郎)·한림학사(翰林學士) 등을 지냈다. 학문에 힘써 고시(古詩)로 이름을 떨쳐 해동 제일이라는 일컬음을 받았다고 하며, 청직하여 권세에 아부하지 않았다.
김황원이 한림원에 있을 때에 요나라의 사신을 시로써 맞아 존경을 받았다. 그는 문명 때문에 재상 이자위(李子威)의 시기를 받아 한때 파직을 당하였다. 후에 선종에게 이름이 알려져 좌습유(左拾遺)·지제고(知制誥)에 기용되었다. 이어서 경산부(京山府: 지금의 星州)를 다스려 치적을 쌓았다.
김황원은 예종 때에는 중서사인(中書舍人)으로 요나라에 가는 길에 대기근이 있는 북부지방에서 주군(州郡)의 창고를 열어 백성을 구했다. 귀국 후에 예부시랑·국자좨주(國子祭酒)·한림학사·첨서추밀원사(簽書樞密院事)를 역임하고 나서 치사(致仕: 나이가 많아 관직을 내놓고 물러남)하였다.
김황원은 평양 부벽루에 올라가서 그곳에 걸린 평양의 산천을 읊은 시구들이 한결같이 신통하지 못하다고 모두 태워버렸다. 그리고, 스스로 시를 지어 걸기로 작정하였다. 그러다가 해가 질 무렵에야 겨우 “긴 성벽 한편으로는 넘쳐넘쳐 흐르는 물이요, 넓은 들 동쪽에는 한점한점 산이로다(長城一面溶溶水 大野東頭點點山)”라는 시 한 구를 얻었다. 그러나 끝내 그 짝을 채우지 못하고 통곡을 하며 내려왔다는 일화가 전한다. 한편 『고려사』 권97 「김황원열전」에 의하면, 김황원은 힘써 古文을 배워 해동제일(海東第一)이라는 칭호를 얻었으며, 이궤(李軌)와 함께 한림직에 있으면서 문장으로 이름이 났다고 하였다.
김황원은 영달을 하려고 남의 말이나 본뜨며, 행세하려고 짓는 시는 구역질이 난다고 크게 반발할 정도였다. 그는 문학이 영달을 위한 수단이 되는 것에 반대하였다. 그는 임금이 책을 보다가 의심나는 것이 있어 물으면 대답할 정도로 신임을 받고 있었으나, 청직한 성격 때문에 평탄한 삶을 영위하지는 못하였다. 그의 작품이 온전하게 전하는 것은 거의 없어 부분적으로 그의 시세계를 엿볼 수 있을 뿐이다. 시호는 문절(文節)이다.