祇園信仰
平安時代に成立した御霊信仰を背景に、行疫神を慰め和ませることで疫病を防ごうとしたのが祇園信仰の原形である。その祭礼を「祇園御霊会（御霊会）」といい、10世紀後半に京の市民によって祇園社（現在の八坂神社）で行われるようになった。祇園御霊会は祇園社の6月の例祭として定着し、天延3年には朝廷の奉幣を受ける祭となった。この祭が後の祇園祭となる。山車や山鉾は行疫神を楽しませるための出し物であり、また、行疫神の厄を分散させるという意味もある。中世までには祇園信仰が全国に広まり、牛頭天王を祀る祇園社あるいは牛頭天王社が作られ、祭列として御霊会（あるいは天王祭）が行われるようになった。
牛頭天王
これらによれば、牛頭天王は、天竺では祇園精舎の守護神であったが、日本では、最初は播磨国明石浦（兵庫県明石市）に垂迹、ついで広峰（兵庫県姫路市）に移り、その後、京都東山の北白川東光寺へ、陽成天皇の貞観18年（876年）に東山山麓に垂迹したため堂宇を建立、あるいは元慶年間（877年-885年）東山の感神院に移ったとされるのが祇園社（現在の八坂神社）である。
広峯社が祇園社の元宮であるという上記の伝承は室町時代に吉田神道が採用したことから大いに広まり，江戸時代には祇園社も時にこの説を受け入れるようになるなど完全に通説化した。しかし，現代的な歴史学的観点から八坂神社の創祀について先駆的研究を行った久保田収は，平安時代の文献には広峯社は一切あらわれないことや，伝播ルートの重要な拠点である東光寺の設立以前にすでに祇園の名称が遣われていることなどを詳細に検討した結果，広峯遷座説を否定している。また，祇園社の祭神は平安時代の記録では「天神」または「祇園天神」とされていることから，最初は牛頭天王ではなかった可能性が指摘されている。祇園社の祭神が明確に牛頭天王と記録されるのは鎌倉時代以降の文献である。さらに，牛頭天王は祇園精舎のあるインドで信仰された形跡はなく，その伝播経路とされる中国や朝鮮においても「牛頭天王」やそれに相当する神仏が信仰された痕跡がない。そのため，牛頭天王は現在の学説では日本における独自の神であると考えられている。