BALTIMORE — The chances (and there were many) were right there for the Vikings offense.
They were there in every quarter, at nearly every turn of the game, just waiting for Minnesota to snatch them and get a win.
It didn't happen. And now, after a 34-31 loss, the Vikings are flying home with a sour taste and a 3-5 record on their résumé.
Perhaps the most glaring missed opportunity came in overtime. Vikings linebacker Anthony Barr made an incredible interception — tipping a pass to himself — giving the offense the ball at its own 38-yard line.
All Minnesota needed was about 30 yards to get in position for a game-winning field goal.
Instead, the result was three plays for a single yard.
Was Vikings Head Coach Mike Zimmer disappointed in that combination of effort and execution?
"Yes," Zimmer said tersely at the conclusion of his postgame presser.
The frustration started before the first snap, as the Vikings burned a timeout to avoid a delay of game call.
Minnesota opened the drive with a 2-yard pass to Dalvin Cook. The running back then lost a yard on a second-and-8 run before Kirk Cousins threw incomplete deep to Adam Thielen with Baltimore bringing a heavy blitz.
Vikings quarterback Kirk Cousins explained the three-play sequence that no doubt infuriated Vikings fans.
"The first down, they played two deep [safeties] again. They said just check it down," Cousins said. "Second down, had a run that didn't get anything. And then we're in third-and-long.
"They brought pressure and had a free runner. We had longer-developing routes," Cousins added. "They brought one more than we could block, and we didn't have the ability to hang on for the longer developing routes. That led to the incompletion and punt."
Vikings running back Dalvin Cook summed up his own frustration.
"We had an overtime game … Barr made a play, an interception," Cook said. "So, we could have won the game right there, and we didn't. We have to take that lump, go watch film tomorrow and get better."
It was one of many missed chances for a Vikings offense that once again started hot.
Cousins hit Justin Jefferson for a 50-yard score on Minnesota's first offensive possession, marking the seventh straight game the Vikings scored points on their first drive.
The Vikings even scored on their next possession, too, an 11-play, 94-yard drive that ended with a Cousins' 1-yard run.
Yet after those two drives combined for 16 plays for 173 yards, Minnesota's offense went ice cold.
The Vikings next four possessions (including a kneel down to end the half) generated 32 yards on 14 plays.
And sandwiched in the middle was yet another missed chance for a dagger. Leading 14-3, rookie safety Camryn Bynum nabbed his first NFL interception in his first start.
But with the ball at the Ravens 16, the Vikings ran three plays and managed to lose a yard in total offense.
Instead of capitalizing and going up 21-3, Minnesota led by only 14 points. And that lead was cut to just seven when Baltimore scored a last-minute touchdown in the first half.
The missed chance to put the hammer down was glaring, said Cousins, who put the onus on himself there.
"I felt on that possession, that's on me," Cousins said. "I felt second down, you know, we need to hit Adam on his out route. And I felt third down, on third-and-11, we need to hit Justin on his out route.
"I felt that's an 11-point swing, because we kick a field goal instead of getting a touchdown and we don't run clock," Cousins continued on a possession that used up just 16 seconds. "So now, we give them a chance to get seven and we only get three.
"So, had we gotten seven and not allowed enough time on the clock for them to get points, that's an 11-point difference there," Cousins added. "That was a play or couple plays where I was very disappointed in myself for not making those plays and staying on the field."
The struggles continued throughout the game. Of Minnesota's 11 total possessions in the first half, six ended with the Vikings offense not picking up a single first down.
That included the drive in overtime, and the drive after Bynum's interception, plus four more chances where the Vikings offense could have helped put the game away against a Ravens team that struggled early and surged late.
Minnesota was even boosted by Kene Nwangwu's 98-yard kickoff return for a score. The Vikings offense scored as many points as special teams did in the final 40-plus minutes of the game.
Jefferson, who finished with three catches for 69 yards, was targeted just four times after his score. Thielen, whose fourth-quarter touchdown tied the game with just over a minute left, had two catches for six yards.
Zimmer said earlier this week that he wanted Cook to be the focal point of the offense. And he was with 17 carries and 20 touches overall on 52 Vikings offensive plays.
View game action photos of the Vikings battling the Ravens during the Week 9 matchup at M&T Bank Stadium.
But the Vikings said postgame that they should have gotten their top two wide receivers more involved.
"Yeah, we got away from it a little bit," Zimmer said. "We tried to get the ball to Dalvin some more, obviously, but they were loading up and bringing a lot of different pressures on us."
Cook had 110 yards on 17 rushes, but he had a 66-yard run and a 24-yard run on the day, meaning his other 15 carries netted just 20 yards.
The end result was yet another unsatisfying offensive performance that led players and coaches to give many of the same answers they've repeated for the past few weeks.
"I think we changed up quite a bit on the play-calling, especially early," Zimmer said. "After the [Bynum] turnover, I was disappointed in that series of drives."
Cousins said: "Had a poor third quarter and early fourth quarter, and that's something we have to change going forward."
Cook added: "We just have to win the football game."