The Vikings passing game is completely broken and there’s no reason to believe it will be fixed any time during the 2019 season.

Minnesota ranks 21st in passing DVOA. Kirk Cousins ranks 32nd in ESPN’s QBR. Star receivers Stefon Diggs and Adam Theilen have combined for just 287 yards on 26 receptions (that’s only two more receptions and 17 more yards than Austin Ekeler, who is a running back). Tight end Kyle Rudolph, who signed a $36 million extension in the offseason, has fewer targets than the team’s fullback. First-round center Garrett Bradbury has a PFF pass-blocking grade of 10 … out of 100.

Given the collection of talent on the roster, the Vikings really shouldn’t be this bad, but it’s not particularly surprising that they are. Most of the blame has been (justifiably) put on Cousins, who signed a fully guaranteed, $84-million contract last offseason, but head coach Mike Zimmer deserves his fair share for creating a “too many cooks” situation for the offensive coaching staff.

In August, the Ringer’s Robert Mays wrote a piece looking at the staff Minnesota had put together in order to get the most out of Cousins. It was intended to be a piece looking ahead toward a brighter future, but the signs that this could all go wrong were there.

After firing previous offensive coordinator John DeFilippo during the 2018 season for not running the ball enough, Zimmer picked long-time Vikings assistant Kevin Stefanski as his interim play-caller and ordered him to run the ball more. Stefanski obliged and ended up getting the job full-time in the offseason. But Stefanski would not be running this show alone. Zimmer also coaxed Gary Kubiak out of coaching retirement to help Stefanski build an offense similar to the ones he ran in Denver and Houston.

While Stefanski told Mays that he had always admired the Kubiak system — which is based on a zone-blocking running game and play-action passes off of those looks — he was not brought up in it. As Mays writes, “Cycling between different bosses and offensive systems meant that schematically, Stefanski was a man without a country.” Stefanski and his staff had to go through a nine-day installation period in January to learn the offense they’d soon be teaching to Minnesota’s players, Mays reported.

The decision to employ Kubiak’s system makes a ton of sense on paper. Kyle Shanahan coached under Kubiak in Houston and runs an identical scheme. Sean McVay’s system is based on the same principals. And Cousins played under both Shanahan and McVay in Washington. It sounds like a perfect match, but then there’s this from Mays:

“Some have said that his history with Shanahan and McVay in Washington means Cousins should be comfortable in this scheme, but he points out that he spent only two seasons as a backup under Shanahan, and the system in his final season in Washington was a combination of Shanahan’s scheme and Jay Gruden’s version of the West Coast offense.”

To summarize, Minnesota has Stefanski coordinating an offense that he’s not intimately familiar with in order to suit Cousins, who, by his own admission, isn’t all that comfortable in the offense. On top of that, you have Zimmer influencing the play-calling with his own (outdated) offensive philosophy.

As disjointed as all that sounds, the on-field product has been even more disjointed. The Kubiak/Shanahan system works because of the marriage of the run and pass games. Well, in Minnesota, those two aren’t even sleeping in the same bed, and we’re only a month into this union.

There are a lot of misconceptions about play-action passing, and many of them have been debunked by the analytics community. For instance, NFL teams do not need to run the ball effectively to produce a good play-action passing game. The Vikings are proof of this. Despite their woeful running game, the Vikings were one of the best play-action passing teams in 2018. In 2019, the roles have been reversed. Dalvin Cook has been the NFL’s best running back, but Cousins play-action numbers have plummeted. He’s averaging -0.14 Expected Points Added per attempt in 2019 after averaging 0.27 EPA/attempt a season ago.

The key to a good play-action passing game seems to be a good offensive line capable of convincing the defense it is blocking for a run. That’s easier to do when your play-action fakes look a lot like your runs. The problem in Minnesota is that Cousins has never really been good throwing off of the boot action you typically have coupled to an outside zone run, which is a requirement in the Kubiak system. Since 2015, Cousins has averaged 0.03 EPA/attempt on boot action passes, per Sports Info Solutions. That’s well below the league-average of 0.09 EPA/attempt over that time. His numbers on those plays are even worse in 2019, with Cousins averaging -0.19 EPA on such attempts.

The run-pass cohesion isn’t there, and the defense isn’t having any trouble discerning run from pass on those play fakes. Take this play from the Week 2 loss in Green Bay. The Vikings are in an I-formation and run a play fake designed to look like a fullback lead. The Packers defense doesn’t bite…

Here’s the problem with the call: Outside of short-yardage situations — and this play came on second-and-10 — Minnesota hasn’t run a single fullback lead play from I-formation this season, according to Sports Info Solutions. Green Bay’s linebackers had no reason to vacate the middle of the field.

The Vikings are having a hard time displacing second-level defenders and Cousins hasn’t been willing to throw into tight windows. As a result, Minnesota’s intermediate passing game has been non-existent.

Cousins has attempted only 14 passes that have traveled between 10 and 20 yards downfield. That ranks dead last in the league by a wide margin. The Vikings are even behind the Jets (21 attempts) and 49ers (20), two teams that didn’t even play in Week 4. They’re also behind the Steelers (20), who are currently treating Mason Rudolph like a college freshman.

The numbers are striking. Cousins currently owns the league’s highest average time to throw in the league (3.06 seconds), per Next Gen Stats. At the same time, he also has the seventh LOWEST average depth of target. Cousins is inviting the risk of holding onto the ball longer (sacks, fumbles, etc.) but not seeking any of the reward (explosive plays) that is typically associated with that approach. Diggs and Theilen are the only Vikings with an average depth of target higher than 6.2 yards. So, essentially, the strategy has been to send those two downfield, and if they can’t get open, throw a check down. Too often, Cousins has taken the second option — even when the first option is there for the taking.

This was a major point of frustration for Vikings fans following the 16-6 loss in Chicago on Sunday. Diggs and Thielen were nonplussed, too: the former left the locker room in full pads without speaking to the media (after appearing heated on the sideline late in the game), and the latter basically called out team’s passing philosophy and quarterback.

A review of the all-22 shows they had every right to be frustrated. Cousins consistently turned down opportunities to take shots downfield.

Sure, these are difficult throws but these are also throws one of the highest-paid quarterbacks in the league should be able to make. The truth is, Cousins was never a quarterback capable of consistently making them. And that’s evident when he does try. Here, he doesn’t have the arm strength or accuracy to hit Theilen on a tight-window throw.

On these two plays from the Packers game, his lack of arm talent is glaring.

Along with Cousins, the offensive line has been a scapegoat for frustrated fans in Minnesota. But even when Cousins has been kept clean, he’s played poorly. Per Sports Info Solutions, only 33.8% of the Vikings’ passes from a clean pocket have resulted in a positive EPA. That’s 31st in the league behind only the Dolphins — so it might as well be last in the league. The line has allowed a ton of pressure, but Cousins holding the ball for more than three seconds hasn’t helped.

When the Vikings running game can’t get going, the play-making onus falls on Cousins, and Minnesota’s coaching staff hasn’t helped to make things easier on its quarterback. No team has run more or passed less than the Vikings have in second-and-long situations, leading to far too many third-and-longs that Cousins just isn’t equipped to convert and the offensive line can’t protect. The scheme isn’t helping either.

You can blame Cousins; you can blame Zimmer and Stefanski. But Cousins would have been foolish to turn down that money, and Zimmer and Stefanski are stuck with a QB incapable of elevating the offense. If you want to put the blame on anyone for this mess of an offense, don’t look on the field. Look up at the front office that gave an average quarterback an $84 million contract.