MacGregor was selected to compete for Great Britain at the 2012 Summer Olympics in the newly created Elliott 6 metres match-racing event. She competed alongside her sister Kate MacGregor and Annie Lush. Together the three were nicknamed the "Match Race Girls". The event took place at the Weymouth and Portland National Sailing Academy with the round robin group stage being held from 29 July to 4 August 2012. The team finished in seventh place.