본관은 상주(尙州). 자는 자영(子永), 호는 소원(少原). 아버지는 증 좌찬성 황사간(黃士幹)이다.
1444년(세종 26) 식년 문과에 장원하여 예빈시주부가 되고, 예조좌랑·좌헌납·이조정랑을 역임하였다. 1453년(단종 1) 검상을 거쳐 사인에 승진되고, 1454년 사복시윤(司僕寺尹)에 제수되었다.
1455년(세조 1) 수양대군(首陽大君: 뒤의 세조)의 즉위에 협력한 공으로 좌익공신(佐翼功臣) 3등에 책록되고, 이듬해 이조참의에 승진되었다. 1457년 호조참판에 승진되고 상산군(商山君)에 봉하여졌다.
1458년 대사헌이 되고 이어 형조참판을 거쳐 충청도도관찰사(忠淸道都觀察使)로 나갔으며, 이듬해 예조참판이 되었다가 경기도관찰사로 나갔다. 1460년 한성부윤, 1467년 강원도관찰사가 되었다. 1470년(성종 1) 우참찬이 되었으며, 벼슬이 종1품에 이르렀다. 1471년 성종의 즉위를 보좌한 공으로 좌리공신(佐理功臣) 4등이 되었다.
『증보문헌비고(增補文獻備考)』·『청선고(淸選考)』·『전고대방(典故大方)』등에 조선시대 청백리로 기록되었다. 『성종실록』「황효원졸기」에서는 민첩하고 실무에 유능한 관리였다고 높게 평가되었다. 세조 때 보신각종(보물, 1963년 지정) 제작에 제조(提調)로서 참여하였다. 성종 때 가정 법도에 문제가 있고 재물 욕심이 강하여 당시 ‘화가옹(貨家翁)’이라고 불림으로써 대간들의 수차에 걸친 처벌 상소가 있었으나 윤허되지 않았다. 시호는 양평(襄平)이다.