Na Letnich Igrzyskach Olimpijskich 2012 w Londynie Halsall rywalizowała w pięciu zawodach. Halsall osiągnęła półfinał 100 m motyla, osiągając czas 58,52, znacznie powyżej jej sezonowego najlepszego wyniku 57,56 ustalonego w marcu. Halsall dostał się do finału na 100m swobodny i 50m swobodny.
, zajęli odpowiednio szóste i piąte miejsce. W sztafecie 4×100 m swobodny styl Halsall przepłynął drugi etap w podziale na 53,29, pomagając brytyjskiej drużynie w osiągnięciu 5. miejsca. W finale sztafety 4×100 m brytyjski zespół zajął 8. miejsce, a Halsall zapewnił nogę kotwicy 54,08.