1 Compétitions officielles nationales et internationales senior, incluant le parcours amateur et en équipe réserve. 2 Matchs officiels. Dernière mise à jour : 17 juin 2022
Natif de Paisley en Écosse, Kyle McAllister est formé par le club de sa ville natale, le Saint Mirren FC. Il joue son premier match en professionnel alors que le club évolue en deuxième division écossaise, lors d'une rencontre de championnat face au Queen of the South, le . Il entre en jeu lors de ce match perdu par son équipe sur le score de un but à zéro[1]. Il inscrit son premier but en professionnel le de la même année, lors d'une rencontre de Coupe d'Écosse face à The Spartans FC. Ce jour-là, il délivre également deux passes décisives, contribuant grandement à la victoire de son équipe (5-1)[2].
Alors que ses prestations attisent l'intérêt de plusieurs clubs anglais[3], McAllister rejoint Derby County[4], club évoluant alors en Championship.
En il est prêté au Saint Mirren FC jusqu'à la fin de saison, sans avoir pu s'imposer à Derby County, où il a notamment été freiné par des blessures[5]. Le club étant monté en première division en son absence, il fait alors ses débuts en Scottish Premiership, jouant son premier match le 23 janvier 2019 face au Celtic Glasgow. Son équipe s'incline lourdement par quatre buts à zéro ce jour-là[6].
Le , McAllister retourne définitivement au Saint Mirren FC, sans avoir joué le moindre match avec Derby County[7]. Il inscrit son premier but depuis son retour le 31 août suivant face au Livingstone FC, en championnat. Ce n'est toutefois pas suffisant pour son équipe, qui s'incline (2-1)[8].
Kyle McAllister est sélectionné avec l'équipe d'Écosse des moins de 17 ans pour participer au championnat d'Europe des moins de 17 ans en 2016. Lors de ce tournoi organisé en Azerbaïdjan, il joue trois matchs en tant que titulaire. Son équipe, défaite sur chacune de ces rencontres, termine dernière de son groupe, et se voit donc éliminée dès le premier tour de la compétition[9].
Le , il joue son premier match avec les espoirs, lors d'une rencontre amicale face au Mexique (score : 0-0)[10].