Tyler Adams, Weston McKennie, Gio Reyna, Zack Steffen and Josh Sargent (l-r.) and are among those flying the stars and stripes for German clubs in 2019/20. - © DFL
Tyler Adams, Weston McKennie, Gio Reyna, Zack Steffen and Josh Sargent (l-r.) and are among those flying the stars and stripes for German clubs in 2019/20. - © DFL

American Soccer Players in Germany: The season in review

Upwards of 30 American nationals are currently on the books of soccer teams in Germany, but how did the likes of Weston McKennie, Tyler Adams, Josh Sargent and Gio Reyna fare?

bundesliga.com brings you up to date on their performances this term.

Watch: The top 10 USA goals of the past decade!

Weston McKennie

Club: Schalke
Position: Midfielder
Age: 21
Bundesliga games this season: 28
Starts: 24

Now in his third full season as a professional, McKennie is very much a first-team regular at Schalke. Head coach David Wagner was full of praise for the Texan at the start of the campaign, calling him "an outstanding talent", and saying he "can be one of the Bundesliga's best midfielders".

McKennie has certainly lived up to those words, starting 24 of the Royal Blues' 34 league games - the only times he hasn't played have been due to injury or suspension. The USA international has won over 60 per cent of all aerial challenges this term and completed 84.9 per cent of his passes, while he has scored three of Schalke's seven goals since March.

Able to play in defensive midfield, attacking midfield, as a defender or even as an auxiliary striker, McKennie's versatility is a prized asset, although the player himself prefers being given license to roam as a box-to-box dynamo.

Watch: Weston McKennie's Roots

Gio Reyna

Club: Borussia Dortmund
Position: Midfielder
Age: 17
Bundesliga games this season: 15
Starts: 2

Reyna, the son of former USA international Claudio, arrived in Dortmund in summer 2019. After dazzling in the club's U19 side in the first half of the season he was promoted to the BVB first team on a permanent basis during the winter break.

The teenager's star has continued to rise since then and he has featured in 15 games of the Rückrunde. Furthermore, he scored his first senior goal in the DFB Cup against Werder Bremen and grabbed an assist on his Champions League debut against Paris Saint-Germain.

Reyna was rewarded with a place in the Dortmund starting line-up for the Revierderby against Schalke on Matchday 26, only to suffer an injury in the warm-up. He was, however, fit enough for an 11-minute cameo in the 2-0 win over Wolfsburg a week later, before playing 18 minutes against Bayern on Matchday 28 and 10 against Paderborn on Matchday 29.

He replaced Julian Brandt in the 68th minute of Dortmund's 1-0 win over Hertha Berlin and replaced Thorgan Hazard for the closing stages of BVB's last-gasp win over Fortuna Düsseldorf. A first start came in the 2-0 win over Leipzig on the penultimate matchday of the season with Reyna on the pitch for 81 minutes, providing an assist for Erling Haaland's opener. He started again on Matchday 34, playing 65 minutes in a 4-0 defeat to Hoffenheim.

Watch: Reyna living the dream!

Tyler Adams

Club: RB Leipzig
Position: Midfielder
Age: 21
Bundesliga games this season: 14
Starts: 10

Adams missed much of the campaign through injury. He was absent for almost the entire first half of the campaign with a persistent groin problem, but made a surprise comeback on Matchday 17 just before the winter break, starting in Leipzig's 3-1 win over Augsburg.

The New York native began each of the team's next four Bundesliga outings in early 2020 as Julian Nagelsmann's side kept up their title challenge, but a calf injury in training sent him to the sidelines once again. He returned to the starting line-up in the 1-1 draw with Freiburg on Matchday 26, and has made a further eight appearances, including four starts - including one at right-back.

Watch: Adams remaining focused during self-isolation

Zack Steffen

Club: Fortuna Düsseldorf (on loan from Manchester City)
Position: Goalkeeper
Age: 25
Bundesliga games this season: 17
Starts: 17

It was something of a roller coaster season for Steffen at Düsseldorf. Handed the No.1 spot following his arrival on loan from Manchester City last summer, the goalkeeper immediately showed why the club brought him in, making a league-high 10 saves on his debut against Werder Bremen on Matchday 1.

It was no one-off. His assured displays between the posts and in his penalty area in general garnered compliments from Düsseldorf's sporting director Lutz Pfannenstiel: "Zack is the perfect example of a modern goalkeeper: very good with both feet, very good in the air, well-developed technically and a very good communicator."

Steffen played the full 90 minutes in each of Düsseldorf's 17 league games in the first half of the season, even making the second-most saves (67) in the entire league during that time, but a serious knee injury kept him out of action since. After working his way back to fitness during the coronavirus hiatus, the Pennsylvania native suffered another injury setback, again to his knee, and he looks to be sidelined for the foreseeable future.

Zack Steffen (r.) played every Bundesliga game in the first half of the season, but did not featured again after December. - Lukas Schulze/Bundesliga/Bundesliga Collection via Getty Images

Josh Sargent

Club: Werder Bremen
Position: Striker
Age: 20
Bundesliga games this season: 28
Starts: 15

After scoring two goals in 10 games in his debut senior campaign in 2018/19, Sargent was handed greater responsibility this term following the departure of Max Kruse and early season injuries to fellow strikers Milot Rashica, Fin Bartels and Yuya Osako.

The 20-year-old has repaid coach Florian Kohfeldt's faith in him with four goals and two assists in 28 outings this season. He started six times before the winter break, and registered those pair of assists in draws against Borussia Dortmund and Bayer Leverkusen, no less, but he slipped down the pecking order somewhat following the winter arrival of Davie Selke.

Nevertheless, the 12-time USA international has featured in every league game in 2020. He started his side's 1-0 win at Freiburg - which snapped their winless run of seven games - played 74 minutes of Werder's impressive 0-0 draw against high-flying Gladbach on Matchday 28, and faced US compatriot McKennie for the first time in the Bundesliga in the 1-0 win at Schalke on Matchday 29. He also started on Matchday 30, and helped Bremen to a crucial 5-1 win at Paderborn with one assist. Sargent also came off the bench in the 1-0 reverse to Bayern on Matchday 32 and was restored to the starting XI a week later but couldn't prevent Werder from a 3-1 defeat to Mainz. The forward netted his fourth goal of the season in the thumping 6-1 defeat of Cologne on Matchday 34.

Watch: Josh Sargent's MD3 Move of the Matchday

John Brooks

Club: Wolfsburg
Position: Centre-back
Age: 27
Bundesliga games this season: 25
Starts: 25

Brooks began the season as Wolfsburg's go-to defender once again and he helped the side earn seven points from their first three games before a hamstring injury kept him out of action for six weeks in September and October.

Jeffrey Bruma and Marcel Tisserand had deputised well in his stead alongside Robin Knoche, but the Berlin-born hulk still managed to regain his spot in the side by Matchday 9.

Brooks helped his side to two clean sheets and a run of five matches unbeaten with the American in their side prior to the 2-0 defeat at the hands of Dortmund on Matchday 27. He also aided an impressive 4-1 win away to Bayer Leverkusen on Matchday 28, and made several key interventions as they edged Josh Sargent's Werder Bremen on Matchday 30. The defender also played from start to finish in the subsequent 2-2 draw with Freiburg, 3-0 defeat to Gladbach, the 4-1 win at Schalke and the final-day defeat to Bayern Munich.

Wolfsburg bedrock John Brooks was imperious at the back for the Wolves again this season. - Boris Streubel/Bundesliga/Bundesliga Collection via Getty Images

Fabian Johnson

Club: Borussia Mönchengladbach
Position: Winger
Age: 32
Bundesliga games this season: 6
Starts: 3

It was a tough season for Johnson. He started two of the team's first three Bundesliga matches and looked on course to establish his place in the team under new coach Marco Rose, but was subsequently forced to the sidelines for several weeks with a groin injury.

The 32-year-old recovered fitness in mid-November but with Gladbach in-form and top of the table at the time, Rose was understandably reluctant to change a winning team, meaning Johnson had to be patient with a bit-part role.

Not helped by muscular problems, he only made one start since the winter break - the team's 3-1 win over Mainz on Matchday 19 - whilst picking up just a handful of minutes as a substitute. The last time he was included in a Bundesliga squad was on Matchday 21, while the club have now also confirmed that his contract will not be extended at the end of the season.

Fabian Johnson got back fit for Borussia Mönchengladbach after missing a large chunk of the season through injury. - imago

Timothy Chandler

Club: Eintracht Frankfurt
Position: Full-back
Age: 30
Bundesliga games this season: 22
Starts: 12

Chandler had a difficult time of things last year and missed the majority of 2018/19 with a serious knee injury - only playing 16 minutes all season - and he started the current campaign on the bench as his former back-up on the right, Danny da Costa, retained his place following consistently top-class performances in Chandler’s absence.

However, Frankfurt went on a length winless run towards the end of 2019, forcing head coach Adi Hütter into a tactical rethink. They switched from a three-man backline to a four-man defence - opening up space for Chandler on the right side of midfield.

He started six games in a row - scoring goals against Hoffenheim, Düsseldorf and Augsburg - before dropping to the bench against Bayer Leverkusen in Frankfurt's final game before the Covid-19 enforced break. Since the league's resumption, he has scored once in eight games, making two starts. The last of which came in the Matchday 33 draw at Cologne that means Frankfurt miss out on European football next season.

Timothy Chandler was in blistering form in 2020, scoring a personal best five Bundesliga goals. - Jan Huebner/Vogler via www.imago-images.de/imago images/Jan Huebner

Alfredo Morales

Club: Fortuna Düsseldorf
Position: Midfielder
Age: 29
Bundesliga games this season: 27
Starts: 18

Düsseldorf may have been relegated, but so impressive were Morales' biting, aggressive displays in defensive midfield that he earned a recall to the US national team in September 2019 after a three-year absence.

Although primarily charged with being a defensive shield, Morales still registered a goal and two assists in the Bundesliga this season. He made his 26th league outing of the season - and 18th start - as Fortuna came from behind to draw 2-2 with Leipzig on Matchday 32, and was given his last run-out of 2019/20 as a substitute on Matchday 34.

Alfredo Morales' (r.) performances in the Fortuna Düsseldorf midfield - against the likes of Josh Sargent (l.) - earned him a USMNT recall. - DFL

Chris Richards

Club: Bayern Munich
Position: Right-back
Age: 19
Bundesliga games this season: 1
Starts: 0

Chris Richards has made 29 appearances for the Bayern Munich reserve team in Germany's 3. Liga in 2019/20, scoring four times to contribute to the team sitting top of the standings and on course for the title.

He was included in a Bundesliga squad for the first time as Bayern sealed the title away to Werder Bremen on Matchday 32, but he was an unused substitute throughout. A week later he went one better and made his senior debut for the record reigning Bundesliga champions as an 84th minute substitute for Javi Martinez in the 3-1 win over Freiburg.

Ulysses Llanez

Club: Wolfsburg
Position: Midfielder
Age: 19

After signing from the LA Galaxy academy in 2019, Llanez made waves in Wolfsburg's U19 side and was promoted to the first team in April 2020. He was named in the matchday squad for the first time on Matchday 28 as the Wolves thrashed Bayer Leverkusen, but was an unused substitute throughout. He was on the bench again on Matchday 34 for the game against Bayern, but did not take to the pitch.

Ulysses Llanez has impressed the powers that be at Wolfsburg and looks in line to make his Bundesliga debut sooner rather than later. - imago images / regios24

Brady Scott

Club: Cologne
Position: Goalkeeper
Age: 20

Brady Scott conceded 15 goals and kept two clean sheets in his 11 appearances for the Cologne reserves in the Regionalliga West this term, helping the side to fifth in the standings.

Young American goalkeeper Brady Scott is still waiting in the wings at Cologne. - imago

Malik Tillman

Club: Bayern Munich
Position: Striker
Age: 18

Despite being only 18, Tillman has broken into Bayern's reserve team alongside Richards and made a fantastic start to his professional career.

He scored his first two goals in a 3-2 win over Waldhof Mannheim in just his second appearance, and added another brace with both goals in the 2-1 win at Carl Zeiss Jena on Matchday 36 to help the team close in on the title.

In total, Tillman has five goals in six games for the reserves, to go with his 13 goals and seven assists in 17 appearances for the U19 team.

Younger brother of Timothy, Malik Tillman is progressing through the youth ranks at Bayern Munich with flying colours. - imago

Bundesliga 2

Bobby Wood

Club: Hamburg
Position: Striker
Age: 26

It was a tough season for Bobby Wood, who last played for Hamburg at the end of November 2019. He managed just six Bundesliga 2 appearances and was left out of HSV's matchday squads for the last nine games of the season as they missed out on promotion.

Bobby Wood spent the majority of the 2019/20 season on the Hamburg bench. - imago images / Philipp Szyza

Julian Green

Club: Greuther Fürth
Position: Winger
Age: 25

Former Bayern Munich, Hamburg and VfB Stuttgart forward Julian Green started the season brightly, scoring three goals in his first six games. He then struggled with injuries since early November, but the coronavirus outbreak gave him an opportunity to recover.

He ended the campaign with 23 appearances under his belt, as well as four goals and an assist as his side finished exactly halfway up the table in ninth.

Julian Green (c.) was among Greuther Fürth's top four scorers in 2019/20, with four goals. - imago images / Zink

Sebastian Soto

Club: Hannover
Position: Striker
Age: 19

After making his Bundesliga debut for Hannover in 2018/19, Soto could have been forgiven for hoping his big breakthrough might arrive this term, with the team in the second tier.

However, personnel changes - both on the pitch and among the coaching staff - made for a trying situation for the youngster, who finished with just two Bundesliga 2 appearances and 16 minutes of first-team football to his name.

Prolific at youth level for club and country, Sebastian Soto made his competitive Hannover debut in April 2019. - imago images / Christian Schroedter

Timothy Tillman

Club: Greuther Fürth
Position: Winger
Age: 21

Tillman left Bayern for Greuther Fürth in January and made his Bundesliga 2 debut in the 4-2 defeat at home to eventual champions Arminia Bielefeld on Matchday 22, a game in which he laid on both goals for his teammates.

He eventually ended the season having made 11 appearances, five of which were starts. Tillman didn't, however, manage to add to his assist tally or get on the scoresheet himself in the process.

Timothy Tillman (r.) impressed on his debut for Greuther Fürth with two assists in less than half an hour on the field. - Sportfoto Zink / Wolfgang Zink via www.imago-images.de/imago images/Zink

Look out for

Lennard Maloney - Union Berlin (on loan at Chemnitz)
Maurice Malone - Augsburg
Giona Leibold - Wehen Wiesbaden
Matthew Hoppe - Schalke
Justin Butler - Bayern
Nick Taitague - Schalke
Isaiah Young – Bremen
Max Rugova - Nuremberg
Taylor Booth - Bayern
Michael Edwards – Wolfsburg
Mason Judge – Frankfurt
Maximilian Göggel – Stuttgart
Michael Wentzel – Gladbach
Joon-mo Kang – Dresden
Noah Jones – Leipzig