과거형식을 흉내내어서 시관(試官)이 임석한 가운데 시제(試題)를 내걸고 즉석에서 시문을 짓도록 하여 그 성적이 뛰어난 사람에게 장원을 주어 표창하였다. 과거가 관에서 치러지며 관리임용의 기회가 주어지는 데 반하여, 백일장은 민간적 차원에서 주도되며 다만 문학적 명예만이 주어졌던 것이다. 그러나 참가자 자신의 재예(才藝)를 시험하고 널리 자랑하며 다른 사람의 기량과 견주어 볼 수 있는 좋은 기회가 되었기 때문에 지방에서 널리 시행되었다.
달밤에 주로 뜻이 맞는 사람들이 모여 친목을 도모하고 시재를 서로 견주어 보기도 하는 망월장(望月場)과 대조적인 의미로 대낮[白日]에 시재를 겨룬다 하여 백일장이라는 말이 생겨났을 듯하나 그 확실한 유래는 찾을 길이 없다.
다만, 『태종실록』을 보면 1414년(태종 14) 7월 17일에 “임금께서 성균관에 가셔서 옛 성인과 옛 스승에게 헌작례(獻爵禮)를 행하고 곧 명륜당(明倫堂)에 드셨다. 관원(館員)이 모든 유생 500여 인을 거느리고 들어와 예를 마치니, 친히 시무책(時務策)을 물으셨다.……(중략)…… 하륜(河崙) · 조용(趙庸) · 변계량(卞季良) · 탁신(卓愼)에게 명하여 시권(試券)을 감수하게 하였는데 유시(酉時) 중 첫째 시각으로 한정하였다. 진시(辰時)에 환궁하셨다. 대책자(對策者) 540여 인은 거자(擧子)이다. 백일장은 이로부터 시작되었다.”라는 기록이 있다.
즉, 이로 미루어보면 백일장은 관리의 임용과는 관계없이 대낮에 행해지던 문장시험임을 알 수 있다. 이후 주로 과거지망생이나 낙방생들의 학업 장려와 지방 유생들의 기량을 견주고 명예욕을 충족시키는 방편으로 매우 성행하였다. 그러나 조선 말기에 이르러서는 이러한 학풍이 많이 문란해져 정약용(丁若鏞)의 『목민심서(牧民心書)』에는 남의 글을 표절한다든지, 시험지 심사에 수령의 자제나 기생들이 관여한다든지 하는 잘못된 풍조가 지적되기도 하였다.
근대에 이르러 백일장 본래의 뜻을 기려 국가나 각종 단체에서 이를 시행하고 있는데, 전통적인 문학장르인 한시 · 시조의 백일장을 비롯하여, 시 · 산문의 백일장 등이 다양하게 개최되고 있다. 백일장은 대부분 문단에서 활동하지 않는 아마추어문인들의 문예활동을 장려하거나 문학인구의 저변을 확산하려는 목적에서 행하여지고 있다. 어린이 · 학생 · 주부백일장 등이 그러한 것들이다.
간혹 수상을 계기로 본격적인 문학활동을 시작할 수 있는 자극제 또는 촉진제로서의 구실을 하기도 하나 전문적인 작가로서의 등단기회와는 다소 거리가 있다.