Alien: Earth as CJ (1 episode)
2023
The Velveteen Rabbit as Velveteen Rabbit (voice)
2022
The Lost Patient as Bastien
2022
Star Wars: Andor as Karis Nemik (4 episodes)
2022
Lloyd of the Flies as Abacus Woodlouse (voice) (52 episodes)
2022
Andor: A Disney+ Day Special Look as Karis Nemik (archive footage) (uncredited)
2021
The French Dispatch as Morisot
2021
The Last Duel as King Charles VI
2021
The Cleaner as Shaman (1 episode)
2021
Miss Fortunate as Jack
2019
The Translators as Alex Goodman
2018
Alex's Dream as Alex Morin
2018
Summer Camp Island as Mildred's Friend (voice) (1 episode)
2018
Summer Camp Island as Mildred's Friend / Additional Voices (voice) (2 episodes)
2018
Old Boys as Amberson
2018
Ghost Stories as Simon Rifkind
2017
Howards End as Tibby Schlegel (4 episodes)
2017
The End of the F***ing World as James (16 episodes)
2017
Goodbye Christopher Robin as Older Christopher Robin Milne
2017
Carnage: Swallowing the Past as Volunteer: Joey
2016
Narrated By as Sam Sipowitz
2015
Yussef is Complicated as Rory
2014
The Imitation Game as Young Alan Turing
2013
Benjamin Britten: Peace and Conflict as Benjamin Britten
2011
Black Mirror as Kenny (1 episode)
1999
Holby City as Fred Bamber (1 episode)