Professionnel depuis 2012, O'Donnell compte une victoire sur le grand circuit lors de l'Open d'Italie en 2017, un tournoi de catégorie pro-am, c'est-à-dire regroupant à la fois des joueurs professionnels et amateurs. Sur les tournois dit classés, c'est-à-dire comptant pour le classement mondial, il a pour meilleur résultat une demi-finale, atteinte lors du Snooker Shoot-Out en 2018. Au cours de la seule saison 2018-2019, O'Donnell dispute trois quarts de finale lors de tournois classés, de loin sa meilleure performance en carrière. En février 2020, l'Anglais obtient son meilleur classement en se positionnant à la place.