По мнению Н. М. Гальковского, «в купальском празднике соединилось два элемента: языческий и христианский»[13]. Общепринятую точку зрения о дохристианских истоках праздника критикует современный историк В. Я. Петрухин[14].
Дохристианское название праздника неизвестно. Название Иван Купала имеетнародно-христианско происхождение и является славянским вариантом имени Иоанн Креститель, поскольку эпитет Иоанна переводится с греческого как «купатель, погружатель» (греч. βαπτιστής). Выбор именно глагола купать для перевода эпитета «креститель» был обусловлен и собственно славянскими представлениями: праслав. kǫpatiобозначало ритуальное омовение, очищение, которое осуществлялось в открытых водоёмах.
Божество «Купала» впервые упоминается в поздней Густынской летописи (XVII век), и является плодом недоразумения: летописец, зная о «бесовских игрищах» на Ивана Купалу, принял название праздника за имя языческого бога. Впоследствии это недоразумение было повторено переписчиками, а затем и ранними исследователями славянской мифологии, в результате чего в славянском пантеоне появилось новое «божество». «Бесовские» имена начали тиражироваться в русской позднесредневековой книжности как имена «богов» под влиянием польской историографии. На деле же Купала божеством никогда не являлся и мог появиться в народных представлениях лишь как фольклорная персонификация праздника, отразившаяся, к примеру, в песнях.