Maryland football entered Saturday with dying postseason hopes. After three straight losses, it needed back-to-back wins to end the regular season to secure bowl eligibility.

But the Terps looked lifeless against Iowa from the start. The Hawkeyes’ offense was methodical while their defense was stifling. Once again this season, Maryland was outplayed on both sides of the ball en route to a 29-13 loss at home on Saturday.

“We didn’t end up executing how I hoped we would,” senior wide receiver Tai Felton said.

The Terps’ (4-7, 1-7 Big Ten) bowl chances ended. It was their sixth multi-score defeat this year.

Walk-on sophomore Jackson Stratton started at quarterback for Iowa (7-4, 5-3 Big Ten). The Hawkeyes’ top two options, Cade McNamara and Brendan Sullivan, were both inactive due to injuries.

Stratton, who entered Saturday with just six pass attempts this year, only threw for 76 yards on 14 attempts. Stratton displayed nice throws but also looked like a walk-on at moments.

Iowa’s offense didn’t need Stratton to do much, though. It instead relied on running back Kaleb Johnson, a Maxwell Award semifinalist.

Johnson notched his eighth 100-yard game of the season, reaching that mark midway through the second quarter before finishing with 164 yards. His two-yard score extended Iowa’s advantage to 10-0 in the second quarter.

[Tai Felton joins Maryland football’s greatest receivers atop the record books]

“[He] wasn’t tough to tackle, it was just about rallying around him,” senior edge rusher Donnell Brown said.

Johnson troubled Maryland’s defense from the opening kickoff. The 225-pound back powered through defenders with ease on a heavy workload — his 35 carries marked a career-high.

The Terps continuously struggled to bring down Johnson, often unable to rally. Johnson entered Saturday with the second-most missed tackles forced among Big Ten running backs this season, per Pro Football Focus.

While Johnson wore down Maryland’s defense, redshirt freshman Kamari Moulton gave the biggest blow. His 68-yard rush put Iowa up 26-13 in the fourth quarter after exploding untouched through an open hole.

“That long run kind of took the wind out of our sail,” coach Michael Locksley said.

Both Johnson and Moulton ran for more than 100 yards. The Terps allowed zero 100-yard rushers this season entering Saturday.

The Terps’ offense did their defense no favors. The unit endured its worst passing game of the year and only had one drive that lasted more than four minutes.

Redshirt junior Billy Edwards Jr. was listed as questionable entering the day and played with a glove on his throwing hand. He looked hindered, and split time at quarterback with MJ Morris.

[Maryland football isn’t getting the production it’s used to from Roman Hemby]

Edwards appeared on Maryland’s first two drives, left, and returned to start the second half.

His best possession came midway through the third quarter, when he equally used his legs and arm to lead the Terps near the goal-line. But he took a massive hit on a 13-yard scramble that sent him out for the rest of the day.

Morris led each of Maryland’s touchdown drives. His strongest throw was an eight-yard scoring toss to Felton, a Biletnikoff Award semifinalist, three plays after the blow to Edwards. The duo connected again for a 12-yard score that trimmed the Terps’ deficit to one-score early in the fourth quarter.

But Maryland didn’t score again after Moulton’s touchdown. Morris threw interceptions on Maryland’s next two drives, effectively sealing the result.

The loss officially secured the Terps’ worst season since 2019 — their first year with Locksley at the helm.

“We’re young,” Locksley said. “It’s tough now, but we’ll learn and be able to grow from some of the painful things we’ve had to go through.”