Í sumarólympíuleikunum í London árið 2012 keppti Halsall í fimm greinum. Halsall komst í undanúrslit í 100m fiðrildi, með tímanum 58.52, langt frá tímabilinu 57.56 sem hún setti í mars. Halsall komst í úrslit í 100m frjálsum og 50m frjálsum
, enda á 6. og 5. sæti. Í 4×100 m frjálsliðshlaupi synti Halsall í seinni hluta í 53.29 og hjálpaði breska liðinu að ljúka í 5. sæti. Í úrslitakeppni 4×100 m samkeppni endaði breska liðið í 8. sæti, með Halsall sem veitir ankrastiga á 54,08.