Svētku izcelšanās un svinēšanas tradīciju vēsture Ziemassvētku izcelsme meklējama reliģijās, kas Romas Impērijā dominēja pirms kristietības. Romieši 25. decembrī svinēja Neuzvaramās saules dzimšanas dienu (Dies Natalis Solis Invicti), kurā godināja vairākas saules kulta dievības (ieskaitot indoirāņu dievību Mitru, kura kults bija īpaši populārs karavīru vidū). Romā bija vairāki šim kultam veltīti tempļi. Pēdējo (ceturto) iesvētīja imperators Aurēlijs (Aurelianus) 274. gadā. Tieši viņa laikā uzplauka saules kults. Uz paralēlēm starp Natalis Solis Invicti un Ziemassvētkiem norādīts darbā “Lieldienu aprēķināšana” (De paschæ computus, 243), kura autorība kļūdaini piedēvēta Kipriānam (Cyprianus), – “Ak, cik brīnišķīgi darbojas Providence, ka tajā dienā, kad piedzima Saule, bija jāpiedzimst Kristum”. Natalis Solis Invicti hronoloģiski sekoja populārajiem romiešu saturnāliju svētkiem, kuru laikā cilvēki baudīja kopīgus mielastus un apmainījās ar dāvanām. Svētki bija veltīti vienam no senākajiem romiešu dieviem – Saturnam. Sākotnēji tos svinēja 17. decembrī, bet vēlāk pagarināja līdz trijām, tad septiņām dienām.
Ziemassvētki nav starp pirmajiem kristiešu svinētajiem svētkiem. Irenejs (Εἰρηναῖος) un Tertuliāns (Tertullianus) tos savā svētku uzskaitījumā nepiemin. Origens (Ὠριγένης) rakstīja, ka Svētajos Rakstos vienīgi grēcinieki (un nevis svētie) svin dzimšanas dienas. Pirmā norāde uz kristiešu Ziemassvētkiem atrodama Ēģiptē, kur ap 200. gadu Aleksandrijas Klements (Κλήμης ὁ Ἀλεξανδρεύς) rakstīja, ka daži Kristus dzimšanas dienu svin 20. maijā, citi – 19. vai 20. aprīlī. Viņš arī rakstīja, ka Aleksandrijas gnostiķa Basilīda (Βασιλείδης) sekotāji svinēja Epifāniju (un vienlaikus ar to, iespējams, Ziemassvētkus) 6. vai 10. janvārī. Iepriekš minētajā darbā “Lieldienu aprēķināšana” kā Kristus dzimšanas diena minēts 28. marts. Bīskapa Paula (Παῦλος) no Emesas sprediķi rāda, ka Ziemassvētki Ēģiptē viņa laikā jau bija iesakņojušies. 4. gs. kristiešu svētceļnieci Egēriju (Egeria) ļoti iespaidoja krāšņās Jēzus dzimšanas svinības Jeruzalemē. Svētku laikā bīskaps katru vakaru devās uz Betlēmi, atgriežoties Jeruzalemē uz svinībām pa dienu. Taču kā galvenos svētkus Egērija piemin Lieldienas un Epifāniju (6. janvārī). Jāņem vērā, ka Austrumos Jēzus dzimšanu saistīja ar Epifāniju – dienu, kurā galvenokārt piemin Jēzus kristīšanu. 4. gs. Jeruzalemes Kirils (Κύριλλος Α΄ Ἱεροσολύμων) lūdza pāvestu Jūliju I (Julius I) noteikt Ziemassvētku datumu. Jūlijs I par tādu uzskatīja 25. decembri, tomēr viņa laikā svētki Jeruzalemē vēl nebija nostiprinājušies. Iespējams, vēl 6. gs. abi notikumi – Jēzus dzimšana un kristīšana – tika svinēti kopā. Tas, ka šajā reģionā kā svētku datums nebija iegājies 25. decembris, varētu būt saistīts ar to, ka, ka šajā dienā bija jūdu ķēniņa Dāvida un apustuļa Jēkaba piemiņas diena. Jeruzalemē šī diena sakrita ar Hebronas ebreju 25. vai 26. decembrī svinēto Vecajā Derībā minētā jūdu sentēva Jēkaba dienu.
Austrumu kristietībā Ziemassvētku svinēšana īpaši uzplauka pēc ariāņus atbalstošā Bizantijas imperatora Valēna (Ουάλης) nāves 378. gadā. Par ortodoksāliem (pareizo mācību sludinošiem) uzskatītie kristieši šos svētkus uztvēra kā iespēju akcentēt viņu uzskatiem atbilstošu teoloģiju. 379. gadā Ziemassvētkus oficiāli sāka svinēt Konstantinopolē.
Rietumos Ziemassvētku svinēšana pieminēta par Filokāla kalendāru dēvētā dokumentā (saukts arī par 354. gada hronogrāfu), kas sastādīts 4. gs. kāda bagāta Romas kristieša vajadzībām. 4. gs. uz šo svētku svinēšanu norādīja arī Augustīns (Augustinus), Jānis Zeltamute (Ἰωάννης ὁ Χρυσόστομος) un Hieronīms (Hieronymus). Viduslaikos sākotnēji Zvaigznes diena bija nozīmīgāka nekā Ziemassvētki. Tomēr ap Ziemassvētkiem pamazām veidojās svinību cikls. 40 dienas pirms Ziemassvētkiem bija pazīstamas kā svētā Mārtiņa dienas, kas sākās ar šim svētajam, Tūras bīskapam (Martinus Turonensis) veltītu dienu 11. novembrī. Mūsdienās šis laiks pazīstams kā Advente. 567. gadā Tūras koncils noteica, ka mūkiem decembrī līdz Ziemassvētkiem jāgavē. Daudzviet šī prakse tika attiecināta uz visiem. Koncils arī noteica kā svinamas 12 dienas pēc Ziemassvētkiem (līdz 5. janvārim).
Ziemassvētku nozīme pamazām pieauga – Karolingu imperators Kārlis Lielais (Carolus Magnus) kronēts tieši šajā dienā 800. gadā, Anglijas karalis Viljams I (William I) – 1066. gadā. Viduslaiku Ziemassvētku svinību sastāvdaļa bija pārģērbšanās un dzimtes lomu apvēršana. Daudzas šīs tradīcijas bija pārmantotas no laikmeta pirms kristietības. Piemēram, viduslaiku Anglijas ciematos bija populāra ietērpšanās dzīvnieku maskās vai vīriešu pārģērbšanās par sievietēm, kad cilvēki staigāja no mājas uz māju un dziedāja tautasdziesmas, stāstīja jokus.
Pēc reformācijas vairums protestantu turpināja svinēt šos svētkus, lai gan ne visi. Šveices reformators Žans Kalvins (Jean Calvin), lai uzsvērtu idejisko un liturģisko pārrāvumu ar katolicismu, pārcēla tos uz tuvāko svētdienu. Svētku svinīgums gan tika saglabāts, jo šajā svētdienā visās Ženēvas baznīcās dievkalpojumos pasniedza svēto vakarēdienu. Vēlāk vairums reformātu kontinentālajā Eiropā atgriezās pie Ziemassvētku svinēšanas ierastajā dienā.
Līdzīgi procesi notika arī Anglijā, kur puritāņi 17. gs. bija pret šo svētku svinēšanu. Kā likumīga brīvdiena tie tika atjaunoti līdz ar karaļa Čārlza II (Charles II) atgriešanos amatā 1660. gadā, kad puritāņu valdīšanas laikā pieņemtie tiesību akti tika pasludināti par spēkā neesošiem. Skotijā, ņemot vērā reformātu tradīcijas dominanci, pretestība Ziemassvētku svinēšanai bija lielāka. Lai gan Skotijas un Anglijas karalis Džeimss VI (James VI) bija pavēlējis svinēt Ziemassvētkus 1618. gadā, tie nebija populāri. Skotijas parlaments oficiāli atcēla Ziemassvētku svinēšanu 1640. gadā, pasludinot, ka baznīca ir “attīrīta no jebkādu māņticības dienu ievērošanas”. Ja Anglijā, Velsā un Īrijā Ziemassvētki kļuva par vispārpieņemtiem svētkiem, Skotijā tikai 1871. gadā tos oficiāli noteica par tādiem.
Tāpat kā Anglijā, puritāņi arī koloniālajā Ziemeļamerikā stingri iebilda pret Ziemassvētku svinēšanu. Pēc Amerikas revolūcijas, kad to kādu laiku uzskatīja par angļu paražu, Amerikas Savienotajās Valstīs (ASV) Ziemassvētku svinēšana kļuva populāra tikai 19. gs. vidū. Tas gan atkarīgs no reģiona. Pensilvānijā, kur dzīvoja daudzi no Eiropas izceļojuši brāļu draudzes (hernhūtiešu) locekļi, Ziemassvētki tika svinēti arī agrāk. 19. gs. Alabamas, Luiziānas un Ārkanzasas pavalstis, kas bija verdzību atbalstošas ASV teritorijas, kļuva par pirmajām ASV, kas pasludināja Ziemassvētkus par valsts svētkiem. Tieši šajās dienvidu pavalstīs ASV kultūrā nostiprinājās Ziemassvētku tradīcijas: apdāvināšana, dziesmu dziedāšana, māju dekorēšana. Daudzi vergi saņēma gada garāko atvaļinājumu – parasti dažas dienas –, un dažiem tika dota iespēja ceļot, lai satiktu ģimeni vai apprecētos.