Born in Athens, Mavropanos began his career with the youth side at Apollon Smyrnis where he stayed for eight years. He then joined Super League side PAS Giannina in January 2016, signing a three-and-a-half-year contract. Mavropanos made his competitive debut for PAS Giannina in the Greek Cup on 29 November 2016. He started and played the full match as PAS Giannina won 1–0. Mavropanos made his league debut for PAS Giannina on 5 April 2017 against Veria. He started and played 57 minutes as PAS Giannina lost 3–0. He scored his first goal for the club on 19 August 2017 during the first league match of the season against Asteras Tripolis. His 19th-minute goal would be winner in a 2–1 victory. Mavropanos was then voted man of the match in PAS Giannina's draw against ΑΕΚ Athens a week later on 27 August. Mavropanos made 23 times in all competitions for PAS Giannina, scoring three goals.
Arsenal
On 4 January 2018, Mavropanos signed for Premier League side Arsenal. On 15 January, Mavropanos helped Arsenal U-23 beat Manchester United's reserves 4–0 at home, playing the entire 90 minutes. On 2 February, Mavropanos was added to the Europa League squad for the knockout phase. On 29 April, Mavropanos made his Premier League debut in a 2–1 defeat against Manchester United at Old Trafford. His performance were praised by both fans and pundits. He made his home debut in the club's next match against Burnley. That match was also the final home game under manager Arsène Wenger, with Mavropanos keeping his first clean sheet as the team won 5–0. He also played in the following game away against Leicester City, but was sent off after 15 minutes to conclude his first season at Arsenal. At the beginning of October 2018, Mavropanos suffered a groin injury and was ruled out until mid-December. On 15 January 2019, he returned to competitive action after nearly four months, playing 70 minutes of the U23s' 5–1 win over Manchester City. On 3 February 2019, he made his 2018–19 season debut as a substitute for Shkodran Mustafi in a 3–1 away loss against champions Manchester City. On 12 May 2019, on the last matchday of the season, Mavropanos was partnered with Shkodran Mustafi at centre-back, but was replaced by Laurent Koscielny after half an hour due to injury in a 3–1 away win against Burnley. On 13 January 2020, after struggling for match time at Arsenal, Mavropanos moved to 2. Bundesliga club 1. FC Nürnberg on loan for the remainder of the 2019–20 season, and the Greek international had been picking up momentum in the heart of the Nuremberg defence with three stellar performances in a row. He won consecutive Man of the Match awards in his second and third game for the club, before making a key goalline clearance in his fourth. On 25 February 2020, Mavropanos picked up an injury playing against Darmstadt 98, but the club didn't know the exact length of his absence. On 16 July 2020 Mavropanos signed a new deal with Arsenal and joined VfB Stuttgart on loan for the 2020-2021 season, reuniting with Sven Mislintat who had originally scouted and signed the player for Arsenal.