2012 m. Londono vasaros olimpinėse žaidynėse Halsall varžėsi penkiuose varžybose. Halsall pasiekė pusfinalių 100 m drugeliu, įrašydamas laiką 58.52, gerokai nuo jos sezono geriausio 57.56 laiko, nustatyto kovo mėnesį. Halsall įžengė į 100 metrų laisvu stiliumi finalą ir
50 metrų laisvuoju stiliumi, finišavo atitinkamai šeštoje ir penktosios. 4 × 100 metrų laisvosios stiliaus švaistoje Halsall plaukė antrą etapą 53,29 sekundėmis, padėdama britų komandai užimti 5 vietą. 4×100 m medley štafetės finalėje britų komanda baigė 8-ąją vietą, Halsall suteikė 54.08 ancūro koją.