“This is the worst return on investment in the history of American politics,” Lindsey Graham quipped in his upbeat victory speech overnight. Graham meant the hundreds of millions of dollars that “all the liberals in California and New York” spent on Senate races in South Carolina, Kentucky, and North Carolina, among others.

The same can be said about all of the effort and money poured into polling this cycle. Graham also took a shot at pollsters in the same breath, telling them, “You have no idea what you’re doing.” Fact check: mostly true.

Count Washington Post columnist Gary Abernathy among the unimpressed. If you were surprised by last night’s outcome, you paid too much attention to pollsters, Abernathy argued:

To be surprised by how the night unfolded is to have believed, without evidence, that pollsters had corrected their 2016 errors and that former vice president Joe Biden’s victory was assured. Regardless of the final outcome, polling itself was possibly Tuesday’s biggest loser.

Nationally, so many questions were awaiting answers. Would the aggressive get-out-the-vote ground game of the Trump campaign and Republican National Committee — touted as superior to the Democrats’ — overcome being vastly outspent on traditional television advertising? Were “shy” Trump voters a real phenomenon that pollsters failed to measure? Did the enthusiastic multitudes who turned out for Trump’s final swing-state barnstorming tour reflect growing momentum? Tuesday’s returns seemed to answer each question: Yes. …

The president’s apparent ability to hang on to the Buckeye State on Tuesday didn’t signal nationwide victory, but it did mean a Biden landslide was unlikely. Would Trump’s Ohio success mean the state would find itself on the wrong side of a presidential race for the first time since 1960, or would it foreshadow an upset electoral win? That answer wasn’t clear as of this writing, but Trump helped his cause by apparently retaining Florida, Georgia, North Carolina and Texas.

Just how far off were the polls? Let’s take a look at the RCP averages for the battleground states:

  • Florida: RCP Biden +0.9, election Trump +3.4
  • PA: RCP Biden +1.2, election Trump +10.9 (still counting)
  • WI: RCP Biden +6.7, election Biden +0.66
  • NC: RCP Trump +0.2, election Trump +1.4
  • MI: RCP Biden +4.2, election Biden +0.5 (still counting)
  • OH: RCP Trump +1.0, election Trump +8.2
  • IA: RCP Trump +2.0, election Trump +8.3
  • TX: RCP Trump +1.3, election Trump +5.9

And so on. In every contested state, Trump beat the polling averages, sometimes by a wide margin. No one ever claimed polling is perfect, but it’s supposed to be predictive in the aggregate. For the second straight presidential election — at least — it has failed to accomplish that mission.

Bear in mind that these aggregate averages include a couple of pollsters who did predict different turnout models, notably Trafalgar. Trafalgar and Robert Cahaly proved prophetic in 2016, but their competitors shrugged it off as a fluke. They spent the last couple of years insisting that they had adjusted their modeling to account for the reshaping of the electorate, and openly scoffed at the idea that their models didn’t account for “shy” voters and a superior ground game.

Cahaly has some bragging rights today, especially after considering what happened in House and Senate races. Trump’s strength may or may not have been enough to give him a second term, but it was no mirage, either. Pollsters, especially media pollsters, missed it entirely, again. They have a lot more explaining to do … and perhaps some learning to do from Cahaly.