James Solomon’s first round lead in the November 4th Jersey City mayoral election came as a surprise to pollsters and pundits alike. There are obvious historical analogues – Jersey City mayoral races are rife with victories of upstart political candidates – Paul Jordan, Bret Schundler, Glenn Cunningham, and Steve Fulop were all able to win as outsiders. Will Solomon ultimately join their ranks? Time will tell in the run-off election being held on December 2nd, but read on for more of a data-driven look at how the mayoral and other races played out in the first round.
Stark socio-economic divides that prevail in Jersey City. On the one hand, there is a wealthy, downtown area with an appetite for anti-establishment politics and progressivism. For years, the perception has been that the heavily white, educated, gentrified brownstone neighborhoods – with very high voter turnout rates – helped fuel the rise of ambitious downtown council members Steve Fulop and James Solomon. This has led to the rise of the “tale of two cities” narrative, with wealthy homeowners in historic districts helping to displace Hispanic and Black renters, as their multi-family rentals are converted into single family, owner-occupied homes.
Within downtown, this base stands in contrast with the growing high-rise districts along the waterfront. These buildings skew much more heavily towards renters, and are plurality East and South Asian. The long-time perception has been that these renters have low voter turnout rates. That’s still true to an extent, but the ongoing regional housing crisis has helped to pour gasoline on these tensions. New residents are increasingly moving into Jersey City, following the PATH and Hudson-Bergen Light Rail into neighborhoods like Journal Square, the lower Heights along Palisade Avenue, and eastern Communipaw.
That’s a decent top line summary, but using Hudson County’s unofficial election results, there are a lot of interesting views we can put together of the mayoral, city council, and Board of Education races. (Note: most analyses are using data pulled on November 5th – results have shown minor changes since then, but remain directionally accurate.)
With district-level data, we’ve been able to put together a summary table of Jersey City’s election results by ward. In contrast to 2021, where downtown was even more proportionately dominant, the South Side came roaring back with much healthier turnout this year, fueling the campaigns of McGreevey and O’Dea.
| Candidate | A | B | C | D | E | F | Downtown | South Side | Total |
| O’Dea | 29% | 32% | 18% | 17% | 12% | 20% | 12% | 28% | 22% |
| Solomon | 17% | 16% | 22% | 29% | 56% | 34% | 54% | 17% | 29% |
| McGreevey | 29% | 24% | 29% | 29% | 18% | 23% | 19% | 28% | 25% |
| Ali | 17% | 22% | 26% | 20% | 11% | 15% | 11% | 17% | 18% |
| Total | 18% | 17% | 15% | 16% | 17% | 17% | 26% | 27% |
At a district level, the mayoral race is helpfully illustrated here by social media election mapper SageOfTime1 in the below graphic.

Let’s supplement that by looking at the one-on-one comparisons of the top three mayoral candidates, because that’ll be most pertinent in a runoff. In most of the maps below, James Solomon is coded blue, Jim McGreevey green, Bill O’Dea purple, and Mussab Ali orange. (Our sincere apologies for not including legends; a lot of these have some tweaks for legibility and contrast.) These help illustrate the relative geographic and demographic bases for each candidate.
Any map you look at shows dominant James Solomon support in his home base of brownstone neighborhoods downtown (which is split between multiple wards) – his incredible margins in The Village, Hamilton Park, Harsimus Cove, Van Vorst, and Paulus Hook there powered his victory.

The Jim McGreevey candidacy, despite his electoral history, was premised on a coalition of white working-class voters outside of downtown (in neighborhoods like Port Liberte, Country Village, Society Hill, and parts of The Heights), which were all areas of relative strength for Jack Ciattarelli; African American voters on the South Side, and South Asian/Hispanic voters focused on crime–a rainbow coalition to revolt against anti-establishment progressivism.

On paper, Bill O’Dea’s base has similarities to McGreevey’s, but much more of a geographic concentration on the West Side.

Mussab Ali cut his teeth as a political protege of Bill O’Dea, and shows similar strength on the West Side of the city. He clearly has very strong support in Egyptian (West Side Ave) and Pakistani (Montgomery St) enclaves in Ward C, but that isn’t his whole story. On a personal level, he clearly outworked the other candidates, and was able to silence naysayers who didn’t expect him to get very far this cycle.

Here’s the Solomon vs. McGreevey comparison, which helps illustrate that McGreevey placed second in a lot of districts that O’Dea won. With a candidate or two dropped out, the runoff might have been a much tighter race.

O’Dea and McGreevey both hold lots of support outside downtown, especially in the heavily African American south side. The main difference, which ended up dooming O’Dea, was much weaker support downtown, which the Solomon/O’Dea comparison map below shows.

Mussab Ali definitely may have bled some O’Dea support outside of downtown, but anecdotally, Ali’s downtown support probably had Solomon as their second choice. If so, Ali in the race was likely not enough to spoil his mentor O’Dea from the mayoral runoff, when you look at O’Dea’s performance one on one with Solomon.

Here’s a look at vote counts for every precinct, which is a good way of summing up how dominant Solomon was downtown.The districts with the most votes cast were actually East Communipaw (which still has a lot of land even not counting Liberty State Park) and Society Hill, although the big blue Solomon spike is mostly high turnout parts of Hamilton Park.

That’s a roundabout way of saying that turnout wasn’t uniform. Here’s the % of vote in each district (the slight gaps in A and F are mostly Watterman/Freeman.)

Ward Council Races
Ward A: Two-term incumbent Denise Ridley won comfortably on Steve Fulop’s ticket in 2021 against Kristin Zadroga-Hart. Things were a little dicier this time around owing to a few factors. First, redistricting moved a chunk of her base in Greenville into Ward B, replacing it with most of the Communipaw/Lafayette neighborhood. Her primary challenger was Brandi Warren, hailing from Pacific Avenue, a traditional heart of the city’s Black middle class that has faced increasing gentrification and displacement over the past decade. (A conflict central to moving this area from Frank Gilmore’s Ward F.)
Furthermore, Ridley faced multiple challengers from her Greenville backyard, primarily Pam Johnson, which served to further split the vote. Redistricting both helped and hurt Ridley in different ways, and on net was probably a positive when you look at her map.

James Solomon and Ridley won a plurality in the new, (mostly low-rise) developments in the Johnston Ave corridor approaching Liberty State Park, solidifying this area’s reputation as essentially an extension of downtown. She also did well in Port Liberte (SE corner), Society Hill (NW), neighboring Country Village, although those were also strong areas for McGreevey/Warren. What stands out from the map though is a mixed performance in the heart of Eastern Greenville (east of JFK Blvd), owing to the presence of candidates like Johnson.

With the Brandi Warren map, she basically trades downtown-fascimile Johnston Ave for the Pacific Ave corridor, and eats into the margin a bit in parts of Eastern Greenville. She finished a hair behind, but keep in mind that she had the top ballot spot, and there are some signs that Solomon voters are more motivated to both vote in the runoff, and fill out their entire ballots (more on this later.)

Pam Johnson wasn’t the only vote splitter, as some Tracy Sims votes near Pacific Ave could go to Warren, Ridley undeniably has a longer relationship to the voters in Greenville who went with Johnson than Warren does. But when you add up the mayoral tickets, the Pam Johnson endorsement, and the as of yet unknown ballot draw, Ridley has to be a slight favorite – with some risk, as McGreevey still does have legitimate support in this ward.
Ward B:
Two-term incumbent Mira Prinz-Arey left for a city job months ago, with her caretaker replacement not running for a full term. Prinz-Arey (an O’Dea protege) was almost caught sleeping by the DSA’s Joel Brooks in 2021.
Lorena Loayza from Team Solomon leads off a closely divided Ward B race, with her strongest areas in parts of McGinley Square dominated by St. Peter’s student housing (incidentally Solomon was an adjunct instructor at St. Peter’s and did well here also), and in The Beacon apartment/condo complex. The latter is the former Jersey City Medical Center (before it moved downtown), which is notorious for having very poor management, and now some of the condo owners are in a bitter fight to stop a new complex that they argue would block their views.

Efrain Orleans from Team McGreevey, like much of that ticket, was a big question mark in terms of policy – he didn’t talk much about it, and skipped a lot of the debates and candidate forums. McGreevey picked many relative unknowns, but institutional strength and a divided field in a close race got him into the runoff. FYI, his best precinct is the area that contains the NJCU campus, but most of the voters there are likely from the College Towers complex – which was also one of Jack Ciattarelli’s strongest districts in the city.

Four years ago, while Joel Brooks had an army of DSA canvassers at his back, he was swimming upstream against the institutional incumbency of Bill O’Dea, who has represented this area on the city council and then county government for decades. It’s not inherently socialist-friendly territory (nor is Ward D), but the race four years ago was close enough that O’Dea decided to ally with Brooks and take this across the finish line. Between Jake Ephros running in Ward D, a much more competitive mayor’s race in New York, and more of a split field, the race was actually pretty close; but Brooks’s organizational advantages carried the day.

Like Brooks, Idriss Zahidi also did well around the Lincoln Park area. It’s not far from the Egyptian-heavy community centered around the mosque on West Side Ave – these districts, as well as ones immediately to the north, tended to be among the better areas for Mussab Ali.

Given that Brooks has aligned with James Solomon, and Mussab Ali has endorsed the latter, and the Brooks/Loayza/Zahidi maps all skew north towards Lincoln Park, this definitely points to Brooks having a leg up in the runoff. Orleans has been notably not publicly campaigning as of late, with the Hudson County Democratic Organization deprioritizing his candidacy, and is not seen as likely to be strong in the runoff.
Ward C:
Incumbent Rich Boggiano has won multiple cycles by sneaking by in low-turnout runoffs, and looks to continue his streak while notably cutting back his campaigning and public appearances.
If you would have said before the election that Team Solomon’s Dawn Giambalvo would win her home district of Canco Lofts, and some Lower Heights districts that were very friendly to Kevin Bing four years ago (some were lost a few to D though), that would have sounded about right.

Boggiano is not as dominant in Hilltop as his reputation would suggest–he had a strong showing in the western part of Hilltop where he lives, but did not do as well in the eastern portion of Hilltop. He did well in the Lower Heights (especially areas west and south of the reservoir), around the Brunswick Towers condo building, around Bergen Square/lower Garrison Ave, as well as in more Italian- and South Asian-dominated pockets of Marion, though. The important question is, are the remaining audiences friendly to him? You wonder how the Egyptian and Pakistani enclaves vote–do they stay with Shahab Khan, who’s thrown in with Boggiano and McGreevey, or was he just a stand-in for Mussab Ali?

Tom Zuppa’s stronger areas were in the St John’s condo towers and the Marion Gardens public housing project, with secondary strength the Hudson Gardens public housing project and in a few blocks between Sip and Garrison Aves where some very civically engaged Zuppa surrogates live. If Giambalvo voters go Zuppa, can he peel off enough Khan voters to win? Maybe, but the concern for him is that Boggiano’s supporters have a track record of showing up in runoffs.

As for Khan’s map, well, it basically looks like a worse Ali map, with very little crossover support elsewhere. It’s easy to be skeptical that many Khan voters will show up in the runoff, but the same can be said for everyone.

Ward D:
Incumbent Yousef Saleh was a strong performer here in his electoral career – winning handily in a runoff to fill Michael Yun’s vacant term, and following up with another convincing win for a full term. Steve Fulop asked Saleh to run for assembly to drive votes on his ticket, and while he placed fourth of six candidates in that race, he still performed well in the areas that he’s represented in council. Saleh did not run for re-election to the city council, and appears to be at least taking off the cycle to recharge.
Veronica Akaezuwa’s map in D understandably looks a lot like a Solomon coalition map, showing strength in Newport (the northern half of which is in this ward), which she split with Healy, and along the gentrification belt on Palisade Ave, which was otherwise Jake Ephros territory.

D is really the ward where you can see the different coalitions loud and clear. Catherine Healy had a presence in Newport too, but her strength really was owing to the conservative precincts in the Western Slope area.

The Elvin Dominici map is similar to the Healy map, which makes sense given their similar rhetorical positioning in the race. He didn’t do well on Palisade Ave (which has been gentrifying–the traditional Latino middle class fading here definitely was a factor), and what really hurt him was a poor performance downtown.

However, a factor that probably led to a poor Dominici performance was a surprisingly good one from Patrick Ambrossi. Ambrossi was the only moderate in the race, yet was able to do surprisingly well in conservative districts in the western part of the ward due to relentless campaigning and strong personal relationships. And he did ok in the SoHo Lofts area. What a shame that he missed the runoff perhaps because he didn’t spend enough time in Newport.

Jake Ephros finished second, but this map doesn’t actually portend a lot of potential future growth. He’ll get the Akaezuwa voters along Palisade Ave, but based on the map, you’d think Healy will get Dominici and Ambrossi voters.A big question is who is better positioned to win Newport.

Ward E:
Given James Solomon’s convincing win in 2021, it was expected that Eleana Little running on his ticket, known for a few long shot challenges at the county level, would finally break through to elected office.
The Eleana Little map is basically a James Solomon map of brownstone districts with high turnout, but it’s briefly worth looking at the other candidates to see where their areas of relative strength were.

Ryan Baylock and Team McGreevey did ok in high rises, but couldn’t connect in brownstones.

Daniel Israel did relatively better in high rises, which is also something you can say about

Stacey Lawrence, which speaks to them both competing for the progressives not voting for Little lane. Some thought she might do better in Hamilton Park, but she did not owing to

Alexander Hamilton, and the good people at LeFrak.

Ward F:
Frank Gilmore first won office riding a wave of anti-development sentiment in 2021 and controversies surrounding Fireman’s attempt to commercialize Liberty State Park. The previous incumbent, Jermaine Robinson, had multiple attempts at trying to use housing to cross subsidize recreational facilities.
Gilmore indeed doesn’t look beatable on The Hill, but there are definitely pockets of weakness downtown. He won the NIMBYier parts of Van Vorst and Paulus Hook, but not by Hill margins. Gilmore won Portside Towers and Bates, but lost big in Vantage/18 Park, and in the district with Liberty Towers and Liberty Terrace, which Gloria Walton both won. Obviously he would have campaigned more if this was competitive, but he won over 60% on The Hill, and less than 50% downtown. The Downtown/Hill vote breakout was pretty similar to June, about 55% Hill.

At Large Council Races
Something becomes clear when looking at the non-mayoral races. There were a lot of people who voted for mayor before skipping other races – especially for BOE. Downtown had the least amount of ballot falloff, which speaks volumes for the at-large races given the strength of the Team Solomon candidates there. This suggests that at least one Team McGreevey candidate missed the runoff because McGreevey voters didn’t fill out enough of their ballots. It’s easy to speculate about this level of conscientiousness when it comes to voting in the December runoff…
| Ward | Council Falloff | At Large Falloff | BOE Falloff |
| A | 18% | 25% | 46% |
| B | 22% | 24% | 46% |
| C | 14% | 22% | 46% |
| D | 14% | 20% | 43% |
| E | 11% | 12% | 37% |
| F | 19% | 21% | 42% |
To illustrate this further, let’s map it out, with darker blue districts showing higher falloff. There are a few sore spots, but the South Side sticks out like a sore thumb here, with some districts where approximately ~30% of the ballots (estimated, based on a comparison of mayoral to council votes) left the at-large slate blank.

To illustrate how crazy this was, let’s look at Solomon/McGreevey/O’Dea fallout for at large by precinct. Here’s McGreevey, where contentious downtown voters actually don’t have a ton of fallout, but it basically cost his slate on the South Side. There are actually parts of downtown where Burns outran McGreevey, and that’s why she made the runoff, along with doing well in Port Liberte.

Speaking of outrunning – Kristin Zadroga Hart and Daniel Rivera actually outran O’Dea in parts of downtown! On the other hand, O’Dea voters didn’t always go for his ticket on the South Side or among in his Lincoln Park base.

If you’re not already mad about the lack of color legends, unfortunately, we had to play with the color schemes a bit to make the Solomon at large map more legible. In contrast, you can see that while Solomon underran his at-large slate in a few O’Dea/Ali-friendly districts, and had some falloff on the south side, by far he had the best coat tails.

Here’s the damning summary table. Solomon’s at-large slate had 32% of the at-large vote. McGreevey fell off by 5%, while O’Dea went a little under, and Ali a little over (because of Nalls.) There are many disengaged McGreevey voters, and that’s a bad sign for runoff prospects.
| Ward | Solomon | McGreevey | O’Dea | Ali | Watterman |
| A | 19.8% | 24.0% | 26.3% | 18.9% | 10.9% |
| B | 20.8% | 19.4% | 29.2% | 23.3% | 7.3% |
| C | 26.1% | 23.9% | 19.3% | 25.9% | 4.7% |
| D | 31.1% | 24.1% | 19.0% | 21.5% | 4.2% |
| E | 54.1% | 16.9% | 13.7% | 11.8% | 3.5% |
| F | 36.5% | 18.0% | 18.8% | 17.7% | 8.9% |
| Total | 32.1% | 20.9% | 20.9% | 19.5% | 6.6% |
The falloff was a bigger factor, but based on this table, and the candidate analyses below, you also wonder if McGreevey at least gets Nieves through if Team Watterman doesn’t split the vote on the South Side. (Watterman actually won first position for both mayor and at large on the ballot, and I think the latter probably hurt McGreevey’s slate too.) McGreevey’s slate barely had more at-large votes than O’Dea’s, and Ali’s almost tied them both.
Map wise, here’s a comparison of Griffin, Lavarro, and Singh on Team Solomon. The coalitions are slightly different – Bergen Hill, Greenville, and Wards C/D – but clearly they were all just powered by Solomon coat tails.



On Team O’Dea, KZH and Rivera have similar maps, while Saundra Robinson-Green …does not.



For Team McGreevey, you can clearly see Burns does a little bit better in Port Liberte and downtown, and that was enough for her to beat out Nieves and Jennise.



And finally, TINA NALLS. She ran on Team Ali, and Mussab powered her strongest districts. (Meaning, Ali gave a bump to his entire ticket in Ward C, but Nalls had the bigger external base to take advantage of it, compared to the rest of the Ali at-large slate.) She clearly does have real organic appeal on the South Side though. Unfortunately, Nalls asked the city council a few months ago to ban by-right development. She is also a staunch ally of Councilman Frank Gilmore.

Board of Education Races
Here’s a summary table of the results:
| Ward | Sumit Salia | JCEA | Reform |
| A | 6.2% | 51.9% | 41.9% |
| B | 6.4% | 54.4% | 39.2% |
| C | 9.1% | 51.0% | 39.8% |
| D | 9.2% | 36.9% | 45.8% |
| E | 8.9% | 36.9% | 54.2% |
| F | 7.3% | 47.0% | 45.7% |
Painfully, Sumit might have spoiled one seat for the anti-JCEA slate, but the tax revolt is a very downtown phenomenon. In fairness, the South Side came roaring back this year after sitting out 2021, and this might have been more lopsided if they had ballot falloff races more comparable to downtown’s. Below, you’ll see the anti- and pro-JCEA slates mapped with a green/red contrast.

A Note on the Governor’s Race, and What It Means for the Runoff
Jack Ciattarelli did not win a single district in Jersey City, but, he did win 40% of the vote at the College Towers precinct near NJCU. Other strong areas were Country Village and Port Liberte.

if you look at Ciattarelli’s share of the vote for each Jersey City election district, and compare it to the mayoral candidates’ shares – for most there’s no relationship, but there is an r of .3 between Jack voters and McGreevey voters, and it mostly holds in some of the stronger Jack precincts, which tend towards the more conservative white voters.

That’s considered a weak correlation, but might be enough to get you published in some social sciences. Black voters hated Jack, and it doesn’t really track in C/D, but downtown and in the white parts of A/B, it tracks pretty well. That’s not McGreevey’s entire base – he did well with Black voters who hate Jack. But you wonder, will Jack voters in areas like Port Liberte, Society Hill, and Country Village sit out the runoff? There are some data points suggesting that they favored McGreevey.
Conclusion
The majority of this content was written in the days immediately following the November 4th general election. The initial, obvious conclusion was that James Solomon should be a heavy favorite over Jim McGreevey in the runoff, and developments in the following weeks have only reinforced that notion. Solomon has won a majority of available endorsements, but the real coup de grace might be the Hudson County Democratic Organization has largely abandoned McGreevey for the runoff, while still supporting some of his council slate.
If that is the case, it’s not only hard to see McGreevey winning, but his candidates will have a significant tailwind if he’s not driving votes at the top of the ticket. Mayor and at-large council are probably a done deal, but on paper, Team McGreevey should be favored in D, possibly favored in C, and A was nearly a tie in the runoff. Given that Brian Stack is still holding fund raisers for McGreevey, it raises questions about another looming scramble to control the county party, and a competitive primary for the county executive role.
The maps show that Solomon emerged out of round one with a coalition directly linked to the transformation of the city, with a key role of newer residents as they’ve spread outward out of the downtown containment zone – this isn’t 2013 anymore, they are not just there. If that’s the case, and Solomon wins as comfortably as it looks like at the moment that he will, it’s fair to ask whether the composition of his victory will shape his policies on development.
Will the proposal for mandatory 20% affordable housing requirements for every major project cause a spike in market rate rents if it passes without significant abatements (or compensatory density); or, will it just not matter, as Jersey City figuratively really does become another New York City borough as mean rents get large enough (over $5k) that they really can cross subsidize affordable units, and the idea of any missing middle being built disappears into the ether? That’s what’s at stake on December 2nd, and we all might be much closer to finding out than we are comfortable with.

