Heading into Election Day, I quietly predicted that Brandi Gabbard was finding her inside lane and looked poised to slip into the No. 2 spot, which would have secured her a spot in the runoff election and delivered a resounding upset to a history-making incumbent.

I saw some internal polling that showed Gabbard surging, and it strongly suggested she would narrowly pull off a second-place berth. It made sense too, with a late surge of support from the Suncoast Tampa Association of REALTORS (STAR) and a big base of leftist supporters pushing Gabbard as the only “Dump Duke” candidate.

But she didn’t surge. In fact, she didn’t even land in third place, finishing just a fraction of a percentage point behind former Fire Chief Jim Large.

So what the heck happened?

No one can ever really say for sure why politics politick the way they do. Sometimes things just happen. But in this case, there were clues.

The biggest one came late in the game and was largely self-inflicted. Gabbard, the day before a City Council vote aimed at raising utility rates, posted a five-minute-plus video to her campaign Facebook page explaining why she planned to vote “yes.”

In it, Gabbard admitted “this proposal does not add any new staff positions or even expand our current capital improvements budget.”

Almost immediately, opponents pounced. Kevin Batdorf, who finished last in the race and has already endorsed Charlie Crist, called Gabbard’s rationale “arrogant nonsense.” He went on to blast her for doing “NOTHING but increase fees” over her time on the Council.

Crist, who was the first-place finisher, also plucked the low-hanging fruit, pointing out that it amounts to: “You pay more. You get the same.” The committee supporting him, St. Pete Shines, sent a text blast capitalizing, asking why Gabbard “wants to raise rates when local families can’t afford to make ends meet.”

Gabbard tried to explain that inflation has made the business of delivering utilities more expensive, and it most certainly is. But it’s hard to justify as much as a 9.75% rate increase when inflation is at 3.4%.

And from there, the hits just kept coming. I counted at least two mailers and one text blast slamming her position on utility rates and painting Gabbard as an unaffordability candidate — a kiss of death in this environment.

There was also plenty of media coverage of it, including in this publication.

While that’s a biggie, it also came as early voting was well underway, so it might not fully explain how she went from surging to stagnating so quickly.

I hesitate to talk about this too much because I genuinely don’t like when women are judged by things like their voice or how they look. Seldom do you hear a man critiqued for having a shrill voice, yet ask people why they couldn’t vote for Hillary Clinton and you’ll get some version of that or a rant about her “cackle.”

Still, perception influences votes. And Gabbard, to many people I’ve spoken with, gave off Tracy Flick vibes, an overly ambitious candidate whose talking points often sound more like lectures than pep talks.

Voters want to be talked to, not at. And know-it-alls rarely are able to overcome negative perceptions. I believe that was in play here.

There’s also fundraising, an area where Gabbard consistently struggled.

As of Aug. 13, the most recent date for which reports are public, Gabbard had raised about $85,000 between her campaign and affiliated political committee. For perspective, Crist raised more than $2 million, and even Ken Welch’s underfunded operation did better, with just under a half-million raised.

And speaking of fundraising, if I were doing up and down arrows in this race right now, the Star PAC would be big losers on my list. The political arm of STAR, the committee dumped $48,000 on pro-Gabbard fliers. Star PAC is stocked with GOP ties, allowing one final ding on Gabbard in the waning days of the election as she attempted to claim the left lane in the race.

And let’s get back to Large, who was very narrowly the third-place finisher Tuesday night. Where Gabbard underperformed, Large overperformed.

While he ran a competent campaign with professional consultants, and had a solid grassroots strategy and an excellent sign game, his overperformance may instead be attributable to St. Pete municipal elections moving to even-numbered years.

By appearing on the ballot alongside candidates for Governor, U.S. Senate and Congress, Large likely benefited from higher Republican participation. As Republicans cast their ballots for Byron Donalds, Jay Collins or, God forbid, James Fishback, it’s not illogical that they might also bubble in a name for Mayor they recognize as one of their own.

One has to wonder, though, if Large might have done even better had he quietly resigned from his position as Fire Chief rather than allowing negative headlines to land permanently on the internet.

___

Ed. note: Michelle Todd Schorsch is the Chair of St. Pete Shines, a political committee backing Crist for St. Petersburg Mayor. Todd Schorsch is married to Peter Schorsch, the publisher of Florida Politics.