Ohio Gov. John Kasich just announced that he suspending his campaign for president. That Kasich isn’t going to be president of the United States should shock no one, but that he managed to keep some semblance of a competitive campaign going into May 2016 is a little shocking. The Kasich campaign’s longevity, however, should not distract us from the obvious: Kasich’s performance was relatively weak, and he couldn’t take advantage of obvious breaks.

From the start, the most surreal thing about Kasich’s strategy was that he ran as a moderate despite having a solidly conservative record. When Kasich first entered the race, I said that he seemed to be running as “a Jeb Bush In Jon Huntsman clothing.” I didn’t mean it as a compliment. Huntsman, a presidential candidate in 2012, spoke down to the Republican base, and it backfired. Kasich was never quite as condescending as Huntsman, but it’s clear that he didn’t have much appeal beyond moderate and liberal Republicans (and even his support among those groups was limited). In the recent Northeast primaries, in which Kasich mostly outperformed Ted Cruz, Kasich ran about even with Cruz among conservative voters, winning no more than 20 percent of self-described conservatives in Connecticut, Maryland, New York and Pennsylvania.

But let’s step back for a second: Kasich made it to May. That’s amazing given that he won more than 20 percent of the vote exactly once in the first 20 contests. Most candidates would have seen the writing on the wall and gone home. Kasich didn’t see the wall or the writing, or he didn’t care. There’s no national primary, but the national polls summarize Kasich’s lack of appeal well:

Kasich continued campaigning until he won Ohio, on March 15. Normally, winning your home state isn’t that impressive, but Kasich used his Buckeye win as justification to go on. In doing so, Kasich became the last mainstream Republican standing. This should have given Kasich a clear opening to consolidate the mainstream Republican vote. His opponents were the very conservative Cruz and the heterodox Donald Trump. Instead, Kasich earned an average of just 19 percent of the vote in the 10 caucuses and primaries after Marco Rubio left the race. Even among moderate and liberal Republicans, which aren’t a huge slice of the GOP pie, Kasich couldn’t win majorities, or even pluralities most of the time.

STATE MODERATE/LIBERAL SHARE OF GOP PRIMARY VOTE KASICH’S SHARE OF MODERATE/LIBERAL Iowa 15% 7% New Hampshire 29 28 South Carolina 19 20 Nevada 16 8 Alabama 22 8 Arkansas 18 10 Georgia 21 11 Massachusetts 38 31 Oklahoma 19 10 Tennessee 18 11 Texas 18 8 Vermont 33 41 Virginia 28 21 Michigan 25 34 Mississippi 16 15 Florida 30 13 Illinois 28 34 Missouri 22 21 North Carolina 21 27 Ohio 28 59 Wisconsin 26 26 New York 29 41 Connecticut 30 47 Maryland 25 33 Pennsylvania 27 28 Indiana 23 14 How Kasich performed with moderate and liberal Republicans Source: Edison Research Exit Polls

It wasn’t just voters, though, who decided to pass on Kasich. Kasich, a longtime member of Congress and sitting governor, did relatively poorly in the endorsement primary. He ended his campaign with roughly the same number of endorsement points in the FiveThirtyEight endorsement tracker as Trump, who basically wants to do to the Republican Party what Anthony Anderson’s character wanted to do in “Harold and Kumar Go to White Castle.” How did Kasich not line up more elite party support?

Donors too decided to take a pass on Kasich. According to The New York Times, Kasich and groups supporting him raised a total of $42.1 million. That’s about equal to the money raised by Scott Walker and his allies, and Walker dropped out of the race in September. Kasich raised less money than the following candidates and their allies: Jeb Bush, Ben Carson, Cruz, Rubio and Trump. That’s right — the famously bargain basement Trump campaign, which relied mostly on free media, raised and spent more money than Kasich. There was simply no way Kasich could compete with the media magnet Trump while raising less money than him.

So Kasich didn’t win. He did, however, bring a mostly positive message to the campaign, serving almost as an anti-Trump. Of course, that might be the ultimate irony: Kasich helped Trump win. How? Well, he took up some time in the debates (remember those?) and refused to attack Trump. Kasich shared a coalition with Rubio, who likely would have had a better chance of unifying the anti-Trump vote, and probably cost the Florida senator delegates in states like Alabama, South Carolina and Texas. Kasich also almost certainly kept Rubio from winning Virginia. And while Kasich and Cruz had different bases of support, the idea to coordinate the anti-Trump vote strategy turned out to be a disaster. Cruz and Rubio were stronger candidates than Kasich, and Kasich lowered their chances of winning.

When you put it all together, political observers have to ask themselves: What did we just witness with Kasich? Kasich had a great résumé, caught a lot of breaks and did very little with those assets. He stayed in the race nearly two months longer than Rubio and still earned fewer delegates. I will miss Kasich’s eating habits, however. I was looking forward to watching him eat some California food.

UPDATE (5:23 p.m., May 4): This article was updated to include Kasich’s announcement that he is suspending his campaign.