There is an old saying in the music business: you spend your whole life preparing to make your first album, and six months preparing to make your second.

Kevin O'Connell spent six months preparing for his first game as an NFL head coach. He spent a handful of days preparing for each of the next three. The results are telling.

His debut was a tour de force, 23-7 victory over Green Bay.

Since the first half of that game, the Vikings have been outscored 80-69, despite playing their last two games against the Lions at home and at a neutral site against a Saints team lacking its starting quarterback, star running back and best receiver.

Sunday in London, the Vikings survived the Saints, winning 28-25 after Wil Lutz's last-second, 61-yard field goal hit the upright and crossbar before bouncing away.

To put it another way, facing Andy Dalton, Latavius Murray, Mark Ingram and Jarvis Landry, the Vikings almost lost to a last-place fantasy football team from 2014.

Being 3-1 after four games, including two against NFC powerhouses Green Bay and Philadelphia, is optimal. What has been missing is what the Vikings promised when they replaced Rick Spielman and Mike Zimmer with Kwesi Adofo-Mensah and O'Connell: offensive wizardry and situational savvy.

O'Connell botched his clock management at the end of the first half, allowing most of the last minute to expire despite having three timeouts, then settling for a field goal.

He had impressive moments, like the goal-line reverse to Justin Jefferson that allowed him to score untouched, and a couple of plays during which his offensive scheme sprang Jefferson into the open field for easy receptions.

Other than Jefferson against the Packers and Saints, the offense has not been much better or different than it was under Zimmer and his odd array of offensive coordinators.

Dalvin Cook unleashed? Hardly.

He's averaging 4.38 yards per carry, the lowest rate of his career. After averaging 12 touchdowns the previous three seasons, he has one score this year. The popular notion that Cook would become a bigger part of the passing game also has been false, to date. Cook has nine catches for 47 yards after four games, less than 12 receiving yards per game.

Adam Thielen, rejuvenated? Not yet.

He has 21 catches for 221 yards and one touchdown. He's averaging a career-low 10.5 yards per catch. After producing 24 touchdowns over the last two seasons, he has one this year.

K.J. Osborn, unveiled? Nope.

He has 11 catches for 118 yards and one touchdown through four games, for a career-worst 10.7 yards per catch. His touchdown beat the Lions; that is his only notable moment of the season.

Irv Smith, cut loose? Not.

He has 10 catches for 91 yards and one touchdown through four games. He may be showing the effects of the knee injury that cost him the 2021 season, and a thumb injury that slowed him this August.

Kirk Cousins, made more efficient? Remains to be seen.

He's completing 63% of his passes, which would be the lowest mark of his career as a full-time starter. He's thrown four interceptions, putting him on pace to throw 16 or more on the season. His career-worst is 13 in 2017 and 2020.

"There's a lot to clean up, which is a good thing," Thielen said. "When you're able to go back and clean things up after winning, that's good. We break up our season in sections of four games, and to be 3-1 is a good thing.

"We're a long ways away … It's a long season, but we've got to have a sense of urgency to go correct them and not make the same mistakes that keep hurting us."

If this is O'Connell's offense learning on the fly and building toward a future eruption, then going 3-1 while bumbling along will indeed prove to be valuable.

If this is just O'Connell's offense, then in a few months he's going to begin earnestly searching for a quarterback who can make it look good.

The Star Tribune did not send the writer of this article to the game in London. This was written using a broadcast, news conference videos and other material.