该歌曲的歌词、曲谱由碧昂丝·吉赛尔·诺斯、瑞安·泰德、E·基德·博加特合作编写,音乐出版由瑞安·泰德、碧昂丝·吉赛尔·诺斯担任。2009年11月,该歌曲获得由MTV欧洲音乐奖授予的“最佳单曲”奖项。《Halo》是美国摇滚乐队“共和时代”主唱瑞安·泰德为碧昂丝·吉赛尔·诺斯创作的一首歌曲,在写作期间,E·基德·博加特建议瑞安·泰德将雷·拉蒙塔涅的歌曲《Shelter》作为创作灵感,去写一首这种类型的歌曲,瑞安·泰德采纳了他的建议。在此之前,瑞安·泰德并没有和碧昂丝·吉赛尔·诺斯沟通,因为他不知道碧昂丝·吉赛尔·诺斯是否要录唱这首歌曲。所以,瑞安·泰德试着将歌曲推荐给丽安娜·刘易斯的制作团队,但是丽安娜·刘易斯本人并没有多余的时间来唱这首歌曲,这件事也就不了了之了。最后,瑞安·泰德不愿再等下了,他还是选择把《Halo》交给碧昂丝·吉赛尔·诺斯录唱。碧昂丝·吉赛尔·诺斯与丈夫JAY-Z在听完该歌曲的和弦旋律后,将歌曲取名为“Halo”,并花了三个小时将歌词写完。