Nelson was born on 10 December 1999 in Elephant and Castle, London to a Zimbabwean father and English mother. He grew up in the city's Aylesbury Estate and attended the London Nautical School. He became friends with fellow aspiring footballer Jadon Sancho, who lived nearby, after they played together in youth tournaments.
Club career
Arsenal
Nelson joined the Arsenal academy when he was nine years old and made a great impression on youth coaches, subsequently being regularly moved up to squads above his age group. He played 35 games for the Arsenal youth teams, including nine games in the U-21 team, in the 2016–17 campaign. Following several impressive performances in the youth teams, he signed his first professional contract with Arsenal on 10 December 2016, his 17th birthday. Arsène Wenger included Nelson in the squad for 2017–18 pre-season tour. On 19 July 2017, Nelson made his first senior appearance against Bayern Munich in a 2017 International Champions Cup pre-season match. He made his first competitive appearance for Arsenal's first team in the Community Shield, coming on as a substitute against Chelsea – Arsenal went on to win 4–1 on penalties. On 14 September 2017, Nelson made his European debut as he came on as a substitute for Theo Walcott at the 82nd-minute mark in the Europa League match against FC Köln. He made his first start for the club against Doncaster Rovers in the League Cup on 20 September 2017. On 20 January 2018, Nelson made his Premier League debut in a 4–1 win against Crystal Palace, coming on as a substitute in the 72nd minute. On 8 April 2018, he made his first Premier League start in a 3–2 win over Southampton, being substituted off in the 64th minute for Jack Wilshere. On 17 May 2018, Nelson won the PL2 Player of the Year award.
On 31 August 2018, Nelson signed a long-term contract with Arsenal, then went on loan to German club 1899 Hoffenheim. On 15 September 2018, he made his debut as a 72nd-minute substitute away to Fortuna Düsseldorf. Within 14 minutes of entering the field of play, Nelson scored for Hoffenheim, scoring a consolation goal for the club in a 2–1 loss.
After a successful season on loan, Nelson returned to Arsenal ahead of the 2019–20 Premier League season. He was promoted to the first team by manager Unai Emery and given the number 24. Nelson was handed his first two starts of the season in Arsenal's opening games against Newcastle United and Burnley. On 24 September 2019, Nelson started and played the full 90-minute of Arsenal's 5–0 EFL Cup victory against Nottingham Forest. He scored his first goal for the club in this match, adding a fourth for Arsenal in the 84th minute. Nelson scored his second goal of the season on 6 January, in Arsenal's 1–0 home win over Leeds United in the FA Cup. On 15 July 2020, Nelson scored his first Premier League goal, in a 2–1 win against Liverpool.