Check here for election results from across San Francisco.

Mission Local had reporters out across San Francisco on Election Day, bringing you updates from polling places, parties and more. To see how the day unfolded across the city, hour by hour, minute by minute, and neighborhood by neighborhood, read the dispatches below.

Here’s the latest:

  • “We’re living in Daniel Lurie’s America:” Columnist Joe Eskenazi on what Tuesday’s results tell us about Lurie, “Let’s go San Francisco!” and a changed city. Read more ›
  • Connie Chan besting Saikat Chakrabarti for No. 2 spot: But in the race to replace Nancy Pelosi, Scott Wiener remains well in the lead. Read more ›
  • “Overpaid CEO tax” losing — but rival measure tanking: It’s too close to call Prop. D, the business tax increase. But countermeasure Prop. C is dead. Read more ›
  • Phil Kim keeps seat on school board: The incumbent board president won handily. His opponents are gearing up for another run in November. Read more ›
  • Sunset supe keeps his seat: Alan Wong is trouncing rival Natalie Gee, who has not yet conceded the race. Read more ›
  • Stephen Sherrill up in District 2: The incumbent, and Mayor Lurie ally, was winning easily over Lori Brooke. Read more ›

Concessions, victory speeches, and looking ahead to November

A person in a suit speaks into a microphone on stage in front of a sign that reads "People Over Profit" and "Harvey Milk LGBTQ Democratic Club.
Connie Chan is all smiles as the ballots come in on June 2, 2026. Photo by Abigail Vân Neely.
10:40 p.m. — Stephen Sherrill declares victory in District 2. Lori Brooke doesn’t concede, and doesn’t seem to plan to.

As Stephen Sherrill is celebrating his all-but-certain victory with Mayor Daniel Lurie a five minute walk away, his opponent, Lori Brooke has not conceded, and doesn’t seem to plan to.

At Brooke’s watch party, her vibes are high. She’s having fun, chatting with friends and taking photos of her daughter and her daughter’s boyfriend.

She’s hoping to see an increase in her share of the vote to 30 or 40 percent before conceding, she said. 

“I’m really, really proud of my campaign,” Brooke said.  “I’ve never run for anything. We did it on a reasonable budget, like most people should run on.” — Rosina Boehm

10:30 p.m. — Albert Chow concedes District 4 race. Campaign manager blames “Californian representation of Trumpism.”

The crowd at Albert Chow’s election party at Celia’s, a Mexican restaurant steps away from Ocean Beach, knew shortly after the first votes came in around 8:45 that their chosen candidate had not won.

Still, most stuck around — Chow hadn’t spoken yet, and another round of votes was expected to come in (and there was an open build-your-own-taco buffet). But the writing was on the wall.

The room fell silent when Otto Pippenger, one of Chow’s campaign consultants, tapped his glass just after 10pm.

“We are seeing something deeply atrocious and ugly across every single race that is being measured,” Pippenger projected to some two dozen attendees. “And I expect the ones that don’t have returns yet to say the same thing.”

“The brute victory so far, of money, of apathy.”

These choice words also came with an admission that this particular race was over. “We are probably,” said Pippenger, “going to see Albert solidify here in a solid number two,” based on back-of-the-envelope predictions made by his team (at the time, results show Chow in third place, behind Natalie Gee).

Chow’s results tonight was, Pippenger continued, “frankly, the Californian representation of Trumpism,” based on “real estate money, and its ability to influence an ignorant 25 percent.”

Chow spoke next.

“That was my brain,” he opened, referring to Pippenger, drawing a laugh. “That was my campaign brain.”

“We tried to make a fair, level playing field,” Chow continued. “Democratic-run to represent the Sunset. And we got to second place.”

“No matter what you think, what you saw here today, that disgraceful victory on their part, I can tell you for sure, we are in the game,” Chow continued.
 
“Now have a drink.” —Nicholas David

10 p.m. — Chakrabarti still hoping for those late ballots to break his way

The second drop is minuscule — only another percent of registered voters. But Chan gets more votes than Chakrabarti in this too: 2,200 versus 1,500.

“In the last hour I think that San Francisco has counted about five ballots,” Chakrabarti quipped as he took the stage to speak.

When he first started his campaign, he said, “It was just a couple of us who had the crazy idea of challenging Nancy Pelosi. Who does that?” At this, the crowd cheered loudly.

“We need a new generation of candidates powered by people and go to D.C. and not just fight Trump but build a society that works for everybody, not just the richest few,” he said as the crowd went wild.

As for his poor showing at this point, “that was expected,” Chakrabarti said. “We knew those early ballots were not going to break our way.”

He’s hoping to win the next votes by the strength of his field campaign— the largest in U.S. congressional history, he said.

“Some people criticized us for daring to pay a living wage to folks who want to do the work,” Chakrabarti said, referencing the fact that he paid his canvassers up to $45 an hour while his opponents mobilized volunteers.

“You know what? I proudly did that, and I would do it again in a heartbeat, because you were the beating heart of this campaign.” — Io Yeh Gilman

9:45 p.m.Stephen Sherrill celebrating now, napping tomorrow and back to work on Thursday

It’s looking like a good night so far for Mayor Daniel Lurie with the early results showing Sherrill in District 2 and Alan Wong in District 4 with healthy leads.

Lurie celebrated with Sherrill and exchanged whispers around 9:30 p.m.

A group of people in formal attire are socializing inside a dimly lit restaurant or bar, some discussing the recent San Francisco election while standing near the exit, and others seated at a table.
Stephen Sherrill and Dan Lurie embrace after early results show Sherrill in the lead on election night in June 2026.  Photo by Rosina Boehm

“I think one of the reasons that we saw the results we saw tonight is because people are happy with the direction of the city. And that starts at the top. So thank you for your service,” Lurie told the crowd.

Lurie said he is excited to work with Sherrill for years to come, but years aren’t yet a done deal. Sherrill will be back on the ballot for District 2 in November. And he didn’t let the crowd forget it.

“Thank you for being here. I assume you voted for me. But if you didn’t, you can in November,” Sherrill said. For now, he is celebrating tonight, napping tomorrow and getting back to work on Thursday. — Rosina Boehm

9:35 p.m. — Wine, charcuterie and “HOT GIRLS FOR MARIE”

At the watch party for Marie Hurabiell, a native San Franciscan and former long-time Republican running as a “moderate” Democrat, people sipped wine and enjoyed charcuterie amid signs that read “Common Sense Democrat for Congress” and “HOT GIRLS FOR MARIE.”

When Scott Wiener appeared on the TV screen, there were boos from the crowd. One man walked past the screen and held up his middle finger.

One of her supporters, Terry Whalen, a Richmond resident, admitted that he did not end up voting for Hurabiell — who was polling well behind candidates like Wiener, Chan and Chakrabarti — because he viewed it as a wasted vote. “I would have liked to vote for her,” said Whalen.

For at least a handful of the supporters at Hurabiell’s party, her belief that trans women should not compete in women’s sports was what sold them. Adrienne Adamcikova, a high school Spanish teacher, was passionate about Hurabiell because she is concerned that young people are being pushed into what she calls the “trans medicalization pipeline.”

Hurabiell told Mission Local that overall she feels happy, and that around 75 percent of the residents she spoke with in person while campaigning were supportive of her policies. She did mention one resident who expressed concern on the campaign trail over her policies on trans issues.

“I think biology just needs to be separated, our bodies are just different,” said Hurabiell.

As for her choice of pink as one of the signature colors of her campaign, she said, “It’s just fun!” — Clara-Sophia Daly 

9:15 p.m. — Prop. D shy on yes votes, but still beating Prop. C

Proposition D, dubbed the “Overpaid CEO Tax” by the city’s labor unions, picked up 43 percent of the initial ballots. Over half of all voters need to vote yes on the business tax increase for it to pass.

The crowd at El Rio in the Mission was cheered to learn that Prop. D still has more yes votes than Proposition C, which was put on the ballot by the Chamber of Commerce in direct competition.

Two people are clapping in front of a wall covered with political campaign posters, including one reading "Yes on D! Protect Care Not Corporate Greed.
Proposition D supporters join the Progressive Unity election watch party at El Rio on June 2, 2026. Photo by Abigail Vân Neely.

“For groups that want fair citywide turnout, like Prop. D, make sure you are investing heavily in the Richmond,” said Brain Kragh, the president of the district’s Democratic club. The demographics and geography of the Richmond — some hills, some business corridors; some moderates, some progressives — are reflective of the city as a whole, he said. 

Votes in the Richmond for and against Prop. D were nearly identical to the citywide results after the first drop: about 43 percent for and 57 percent against. This, Kragh said, is a common trend. — Abigail Vân Neely

9:05 p.m. — Phil Kim ahead at first ballot drop for school board race

As Kim saw the results of the first ballot drop, scrolling to the school board election’s place far down the page, he breathed an audible sigh of relief, taking a swig of his old fashioned.

The crowd erupted into cheers. “You did it baby!” shouted one woman, embracing Kim in a bear hug.

Kim quickly conferred with his campaign consultant then, standing on one of Cafe Flore’s green plush seats, and before the crowd, officially declared victory.The San Francisco Chronicle done the same moments before.

“It’s been a really challenging year,” said Kim, “And this win means a lot for me, and for me personally, it’s a moment of affirmation.”

Though Mayor Daniel Lurie and Supervisor Matt Dorsey waltzed through school board president Phil Kim’s election party, the real star of the show was Noe, Kim and his partner’s dalmation, currently sporting a denim cap over his head to protect her ears.

“It’s unfortunately not a fashion choice,” laughed Kim, who said that the cap was a medical necessity.

Kim was joined by a large and jubilant crowd of donors, fellow school board members, and San Francisco politicos who crowded shoulder to shoulder into Cafe Flore.

Almost immediately after Kim’s speech, supporters began to filter out of the party, some headed to the next party where the results may still be up in the air.

“I’m really pleased that Phil was reelected,” said board member Parag Gupta. “His focus has always been about the students and how well they’re doing,” he said. “He’s done a great job.”

As the tension of the night subsided, the bar put on pop music to reflect the moment. — Marina Newman

9:01 p.m. — Alan Wong currently in lead for District 4 supervisor

“72 percent!” yelled Chasel Lee, almost immediately after he arrived at Wong’s election party with Adam Thongsavat, Mayor Daniel Lurie’s board liaison.

Bobak Esfandiari, a Wong support wearing a Scott Wiener zip-up hoodie, quickly looked up the result on his laptop to confirm, and yelled out the results again. “72.32 percent! Followed by Natalie Gee, 27.68 percent!”

Among the ecstatic faces around him, Wong smiled politely, composed as always, his head slightly tilting to one side as he slowly climbed onto a chair to address the crowd.

“I’m using my big boy voice,” Wong said. “For our election here, it’s about making sure we have a supervisor office that listens to Sunset residents,” he continued.

Wong recounted how he knocked on half of the doors in the Sunset and how, unlike his opponents, he tried not to get caught up in the “grandiose ideological ideas” and take a “pragmatic approach.”

“Alan! Alan! Alan! Alan!” The crowd chanted, as Wong invited everyone to eat more pizza.

District 6 Supervisor Matt Dorsey arrived at around 9:20 p.m.

“He has been a great ally in the board of supervisors,” Dorsey said, smiling wide, a hand on Wong’s shoulder. “When you have a flex like this in June, November is gonna be easy.”

District 3 Supervisor Danny Sauter and District 7 Mynar Melgar arrived at around 10, followed by Mayor Daniel Lurie, his wife Becca Prowda and his staffer Han Zou. 

“I’m so proud of and so happy for you,” Sauter said. “Alan was right. He told me what was gonna happen. He has the pulse of the district. And he was right. He out-worked the other folks.”

Melgar said she “knocked on doors with Alan before any of you.” “You are able to rise above all the noise,” Melgar added.

“See I told you so,” Melgar said at last, smirking and looking at Lurie.

It was Wong’s legislative aide Derek Lee’s birthday, and everyone sang him happy birthday at the end of the party. There is no better birthday gift than to keep his job.

— Xueer Lu 

9 p.m. — 71% of first ballots drop for Stephen Sherrill, and crowd goes wild

At 9 p.m., the San Francisco Chronicle called the race for District 2 supervisor for Stephen Sherrill. At that very moment, Sherrill was handing out awards for his staff for most doors knocked or most calls.

It was at this moment that the party officially started — long before some attendees expected. But when the 8:45 p.m. results dropped, and Sherrill had 71 percent of the vote, that was not too shabby, even if it was only 6,000 votes so far. It would be a lot for challenger Lori Brooke to make up. And the larger the win, the higher the likelihood of voters choosing him again in November. 

“Let’s go!” Sherrill shouted three times, at the news.

In some ways, the party had already started. There was a dog dressed with “Stephen Sherrill” campaign merch. There were children waving American flags. There was absolutely an open bar.

But even before the votes dropped, Sherrill didn’t seem to care. As the deadline for the first drop approached, he continued to greet everyone, even as fellow supervisor, Bilal Mahmood and others tried to interrupt and let him know of his early lead. — Rosina Boehm

8:55 p.m. — As expected, Scott Wiener leads and will advance to November

As the first round of ballots drop, State Sen. Scott Wiener shuffles off to a back office with Joe Arellano, his campaign manager, and another members of his team. He’s just come in first place in the hotly watched race to succeed longtime congressional representative Nancy Pelosi. 

A member of his campaign team grabs Wiener’s arm: “It’s real,” they tell him. “You’re good.”

A man in a blue suit smiles and talks with a woman in a crowded indoor setting with people and a yellow checkered wall in the background.
California Sen. Scott Wiener greets attendees at his election night party on June 2, 2026. Photo by Eleni Balakrishnan

“Oh yes, we’re going to Washington,” Wiener assures the packed room. He says that Chan is “best known for what she opposed,” but that the city’s voters want a “forward thinking vision.”

As he finishes his speech, mostly steering clear of disparaging his opponents but taking several swipes at the president, the crowd breaks into chants of “Scott, Scott, Scott!” In response, Wiener tries to make a heart with his fingers — they slip briefly out of shape, but he reels them back in again.

By 9:30, before another round of votes has even come in, the room has largely cleared out.— Eleni Balakrishnan

8:50 p.m. — “We were up against so much. And as working people, we don’t get shit handed to us,” says Natalie Gee

Just a few minutes before the results dropped, at 8:45 p.m.,Natalie Gee and a few her supporters stood in a semi-circle, refreshing the election results page in Tagalog — which is supposed to be updated faster thanks to lower traffic.

A group of six people stand close together outside, looking at a smartphone; one holds a “Vote Natalie Gee” campaign sign.
Natalie Gee and her supporters refresh the results page on June 2, 2026. Photo by Junyao Yang.

First there was confusion. “At the bottom, the very bottom. No that’s not it.”

Then they got it: Incumbent supervisor Alan Wong, appointed last year by Mayor Daniel Lurie, had 52 percent of the first ballot drop. Gee came in second, but trailed far behind.

“That sucks,” said Daniel Anderson. “We did work our ass off.”

“We are against a lot of money,” Gee added, quickly.

“And the mayor carries for sure,” Anderson said.

No one seemed to know what to say after that.

“Do you wanna go get a second Natalie?” asked Jackie Prager, a legislative aide and Gee’s good friend. “Natalie and I are gonna take a sec,” Prager said.

Gee and her campaign staff walked over some 20 ft away from the bar and gathered in the shadows. Someone brought out a jacket and put it over Gee’s shoulders — she was wearing a pink mini dress.

In five minutes Gee came back and gathered herself. Her husband, Ryan, gave her a hug. And then she began to speak.

“Thank you everyone so so much from the bottom of my heart,“ Gee said, to her supporters. “We were up against so much. And as working people, we don’t get shit handed to us. We work hard for this.”

Tomorrow, Gee said, she will sleep in, visit a friend in the hospital, and go to Pilates. Whether she will concede this race, or if she will continue to run for the November election is a conversation for another day. — Junyao Yang

8:48 p.m. — GrowSF supporters jubilant at prospect of Prop D losing

The bland techno beat that served as the aural backdrop of the GrowSF election watch party was turned down a notch as a bespoke election results dashboard flashed on a screen over the crowd.

“Prop. D is losing!” a GrowSF representative announced. Tthe screen showed that roughly 56 of ballots counted had voted against the so-called “overpaid CEO tax.”

The crowd of roughly 50 people erupted in cheers.

 “Our evil propaganda worked!” laughed George Correa, an attendee who said that he works at an AI company (he declined to give the name).

Still, companies with wide discrepancies between CEO and worker pay (and their supporters) weren’t out of the woods yet. And, said GrowSF supporter Barak Gila, as the votes start to “skew younger and more progressive, that could change.” GrowSF director Sachin Agarwal sought to buoy the crowd: “That said, 15,000 people visited the GrowSF voter guide today!”

“Thanks for all the love!” Agarwal yelled over cheers, applause from this crowd of mostly early-to-mid-career tech professionals. —Sarah Hopkins

8:45 p.m. — First results drop, with Chakrabarti a distant 3rd

When the news drops that Chakrabarti trails Chan for second place in the Congress race by a lot — 14 percent of the vote to her 28 — attendees at his party at The Chapel didn’t react much. The bass kept pumping. The crowd kept talking, and ordering their Medicare for Aper-All Spritzes ($15) from the cash bar.

“Oh god, it’s so bad,” said one person, when this reporter showed her the results. Then she seemed to shrug it off. “First drop,” she said. “It’s okay.”

Around 8:55, Saikat came out from backstage with a big smile on his face.

He walked into the crowd, greeting supporters. “Whoever ends up advancing, you shifted things to the left,” one of them said to him. “It wasn’t for nothing.”

Soon, Chakrabarti’s consultant Nate Allbee took the mic. While the results weren’t great, the campaign is hopeful, he said. That’s because they made a decision to invest in field outreach, which tends to turn people out to vote the day of the election. Those people would not be reflected in early voting results.

—Io Yeh Gilman

8:15 p.m. — Natalie Gee’s volunteers have been up since 3 a.m., and they haven’t been napping either

Around 8:15 pm, a group of Gee’s biggest supporters — many awake since 3 a.m. — trickled in the Chug Pub on 20th Avenue and Lincoln Way.

Among them, Gee’s current boss, District 10 supervisor Shamann Walton. Jackie Prager, a legislative aide for District 11 and Gee’s good friend, and Bianca Polovina, the president of IFPTE.

“I’m so dead tired I’ve been up until 3 a.m,” Prager said. Any chance for a nap during the day? “Nap? You don’t nap on Election Day!”

Walton, who has worked with Gee for almost eight years, was recently targeted in an attack ad from GrowSF, depicting Gee as someone who has defended Walton’s “scandals” in the past.

“It was one thing to disagree on things,” Walton said when asked about the attack ads on Tuesday evening. “It’s another to put out things that are racist.”

At 8:30 p.m, shortly before the first batch of results are due to drop, Walton said he was excited about the opportunity to work with Gee on the Board of Supervisors, even just for a few months.

“To have her lead my campaign, work with her in my office and see her elected, nothing would make me happier,” said Walton. — Junyao Yang

8 p.m. — Alan Wong is hungry for food, and he’s hungry for votes to be counted

“I’m just hungry!” That’s the first thing District 4 supervisor and candidate Alan Wong said to his crowd of some 15 supporters and campaign staffers at his election night party at Hole in the Wall Pizza at 1825 Irving St at 19th Avenue.

Wong went onto recount a long day spent, switching between knocking on doors in the Sunset and fulfilling his duties as the current (and, depending on how things go tonight, future) D4 supervisor at the Board of Supervisors meeting at City Hall today.

“I’m looking forward to the results,” Wong said, before joining the line to grab a slice.

“If anyone wants to take a shot we have a bottle of vodka next door!” shouted one of Wong’s campaign volunteers.

“We’re not big drinkers,” said Christian Kropff, Wong’s campaign manager. “It’s been a long day. Everyone’s exhausted.”

The party will end relatively early, at 9:30 p.m, Kropff said. Depending on how the night goes, they might drop by other parties, he added. Which ones? Kropff wasn’t sure yet.

When asked where else he’s headed after 9:30 p.m, Wong seemed surprised. “I don’t think I’m gonna go anywhere,” Wong said. “I’m not a party person.” — Xueer Lu

7 p.m. — Mayor Daniel Lurie strides into GrowSF election party, making the rounds “all night, all night.”

As Mayor Daniel Lurie strode into the election watch party for GrowSF, the tech-funded political pressure group that has backed his agenda, conversation stopped, heads turned, and constituents moved to greet him with hugs and pats on the back. 

A group of people socialize at an outdoor event under string lights in San Francisco; several discuss the upcoming election while others are conversing and holding drinks.
Mayor Daniel Lurie at the election watch party for GrowSF on June 2, 2026. Photo by Sarah Hopkins

“How are you feeling tonight?” Lurie asked Sachin Agarwal, GrowSF’s director.

“We feel good. I think C and D are going to be really tough but I feel good about our messaging,” Agarwal responded, referring to the dueling business tax measures. “The pro-D campaign is dishonest with its messaging, calling it a CEO tax. But what it really is is a gross receipt tax that kicks in when the CEO makes over a certain amount. When you explain that to people, they’re like, ‘No on D!’” 

Lurie nodded and smiled, and proceeded to mill around the patio of the Hayes Valley bar, snapping photos and shaking hands.

“Gonna make the rounds tonight?” a woman asked him with an adoring smile, as she clutched a glass of red wine. 

“All night, all night,” Lurie responded, as he turned to greet a few more smiling faces. 

“The mayor needs our support,” Agarwal told Mission Local, as he watched Lurie bid his farewell. — Sarah Hopkins

San Francisco’s senior moment — 44% of early ballots from voters aged 65+

A person wearing an orange coat places a mail-in ballot envelope into an official mailbox decorated with an American flag sticker.
Rep. Nancy Pelosi votes on May 29, 2026. Photo by Zoe Malen.
Older San Franciscans dominate the early returns

Youth and exuberance are no match for old age and treachery when it comes to filling out your San Francisco ballot and returning it to the Department of Elections. Numbers from California political data whiz Paul Mitchell reveal that of the nearly 102,000 early returns, a staggering 44 percent hail from San Franciscans aged 65 or older.

This lends quantitative heft to the oft-repeated credo that older voters are disproportionately represented among early returns. If younger San Francisco voters fail to show up in decent numbers to augment these early returns, then the oldest — and, presumably, most conservative — city voters will by and large drive the outcome of this election. 

While, overall, 19 percent of San Franciscans returned their ballots by Monday, 35 percent of voters aged 65 or older did so. These voters account for 44 percent of all returns, despite making up only 24 percent of all registered mail voters. 

Voters aged 18 to 34 are almost an inverse tale: They represent 27 percent of all the ballots mailed to voters, but account for only 14 percent of the early returns. Voters aged 35 to 49 have also registered an anemic return rate: They represent 28 percent of ballots mailed but only 19 percent of returns. Middle-aged voters aged 50 to 64 are just about breaking even: 21 percent of ballots mailed and 23 percent of returns. 

Backers of both Prop. A, the consensus earthquake safety bond and Prop. D, the labor-backed “Overpaid CEO Tax” have said they worry for their measures’ success if turnout remains low. Polls close at 8 p.m. — Joe Eskenazi  

Polling sites still quiet, but counting of early votes is underway

Volunteers for Saikat Chakrabarti’s campaign drop off their signs on June 2, 2026. Photo by Zoe Malen.
5:30 p.m. — After work hours, last-minute voters cast their ballots

Minutes after 5 p.m., a rush of voters swung by the City Hall ballot box before heading home.

Well, a “rush” compared to what has been a pretty quiet day for poll workers Marlo Sandoval, Mitch Bierer, and Herman Chiu, who braced the wind on the corner outside City Hall on Tuesday afternoon.

“It comes and goes,” said Bierer, wincing against a cold gust of wind. “But we’re starting to see more folks.”

A man drops a ballot into an official ballot drop box while volunteers wearing red vests assist nearby in an urban outdoor setting.
Richard Valdovino drops off his ballot and receives a sticker from poll worker Mitch Bierer on Tuesday evening. Photo by Marina Newman.

For some last-minute voters casting their ballots, the smaller, more obscure elections, like the race for the San Francisco school board, caused some confusion.

“All I did was read the voter guide,” said Dan Chilson, who dropped off his ballot on Tuesday evening. “One was a mother, the other guy was a teacher,” he said, referring to Phil Kim. “I voted for that guy.”

Madeline Silbert, who doesn’t have children and said she has very little at stake in the school board election voted instead for Virginia Cheung.

“I’ve heard a lot of bad things about the school board,” said Silbert. “I just voted for whoever was not Phil.” — Marina Newman

5 p.m. — Outside Chakrabarti’s campaign office in the Inner Sunset, Wiener supporters want your honks

Across from Saikat Chakrabarti’s headquarters in the Inner Sunset, a handful of campaign staffers and volunteers held up signs supporting Scott Wiener. “Honk if you voted,” one sign read.

Volunteer Megan Topping, clad in a bright orange “Team Wiener” shirt, said that this morning, before the crew rolled out the honk signs, it was harder to gauge community support. Since then, things have been looking up. This afternoon, a few cars drove by and honked. So did a Muni driver on a N-Judah train, Topping said. A man hastily walking past the group said “honk honk” as he passed.

Isn’t Wiener in a relatively safe place in the primary? Does he need the ground game Chan and Chakrabarti have out today? The volunteers winced. “San Francisco politics is so hard to predict,” said Katie Grote, an Inner Sunset resident.

“I think he’s a generational legislator,” said Topping. “I don’t wanna miss any opportunity to send him to D.C.”

Grote’s reason for standing in the cold at the corner of 9th Avenue and Irving Street, holding up a Wiener sign is because of his housing record, she said. But it was also, she added, personal. In September 2020, she had a baby that had a lot of medical issues and, in the chaos, she missed a phone call from California Employment Development Department, which handles paid parental leave. Missing the call meant that her checks could be cut off.

In desperation, she called Wiener’s office for help. “They just fixed it for me. ‘You’ll get your money in two days,’” she said. “I wish any other part of that experience was that simple.”

— Junyao Yang

Three women stand outside a store during the San Francisco election, holding signs in support of Scott Wiener for Congress, including one that says "Honk if you voted!" All are smiling and wearing orange shirts.
Volunteers supporting Scott Wiener hold signs at 9th Avenue and Irving Street on June 2, 2026. Photo by Junyao Yang.
2 p.m. — At City Hall, supervisors work while voters in the basement decide their fates

Though Supervisors Connie Chan, Alan Wong and Stephen Sherrill are battling for their political futures today, the show must go on. All three showed up promptly for the weekly 2 p.m. Board of Supervisors meeting.

It was a typical meeting, though Chan, who is running for congress, seemed a tad more nervous than usual.

Several people showed up to protest cuts in the mayor’s budget, which the Board of Supervisors has the ability to mitigate. Wong and Sherrill, who are running to retain the seats they were appointed to, will be hoping that they are still be in the position to do so after tonight.

In the basement of City Hall, voters were deciding the supes’ fates. At any given time, around 20 people were filling out their ballots in the booths set up by the Department of Elections office.

Though the basement had a good hustle and bustle as people walked their ballots to drop boxes or worked with poll workers to obtain ballots in non-English languages, elections staff said that turnout was lower today than usual. Normally, people have to wait in line to vote at City Hall, but not today — the rope cordons set up for a surge of in-person voters were empty.

A hallway with tiled floors and marble walls, lined with black barriers and signs directing people to vote; several people stand in line at the far end.
Turnout is low for the June 2, 2026 primary election. No one has to wait in line to vote at city hall like they normally do. Photo by Io Yeh Gilman
A blue balloon figure with a smiley face and a "Ballot Tabulation" sign hangs on a wire mesh window overlooking a room with people and papers.
The elections department tabulates ballots on June 2, 2026. Photo by Io Yeh Gilman.

Next to the voting booths, through a clear “observers” window, Department of Elections staff could be seen tallying ballots. The first batch of votes, mostly from people who voted early by mail, will drop at 8:45 p.m. tonight. — Io Yeh Gilman

1:05 p.m. — Some Mission voters like Connie Chan less now that Nancy Pelosi likes her more

Rep. Nancy Pelosi’s endorsement of Connie Chan has been a game-changer for Chan’s congressional campaign, bringing in an avalanche of new donations.

To Ramon Madrigal, who is standing outside a polling space set up in the Garfield Square Park Recreation Center at 25th and Harrison, Pelosi’s endorsement was also a game changer. But not in the good way.

“Chan’s in touch with the city, but Pelosi’s endorsement makes me think she’ll be more of the same,” said Madrigal.

“I appreciate Pelosi. I voted for her, but I think she stayed there too long.”

Madrigal said he appreciated Scott Wiener’s political experience, but declined to say whether Wiener had earned his vote. He was torn between Tom Steyer and Xavier Becerra for governor, he added, but definitely not torn over his support for the “Overpaid CEO tax” Proposition D, which he is a fan of.

Madrigal walked to the polling place with his wife, Regina, and with his brother-in-law Mauricion Batlle, after a long night of political debate between the three of them. Even in a low-turnout election like this one, he always makes it to the polls. “I always vote,” he said. “It’s important to know that we can contribute.”

Nearby, Diego, aged 3, asked his father, James Guzzi, what the polling sign meant.

“Today we vote for representatives and governor,” Guzzi told his son.

Like Madrigal, Guzzi found Pelosi’s endorsement of Chan to be a bit of a letdown. He still had to fill out his ballot, he said, but he was now leaning towards Saikat Chakrabarti, despite wishing he’d run a better campaign — specifically by trying to secure the endorsements of unions.

“All I want is for developers not to win with Wiener,” said Guzzi.

Guzzi also hoped that Proposition B, the term-limit measure, would lose. What the city should limit, he said, is the mayor’s ability to appoint supervisors who then start with an advantage when they seek reelection.

The governor’s race was an easy one. “Tom Steyer is a slam dunk,” said Guzzi.

Despite his young age, Guzzi said Diego had acquired an interest in politics by by watching PBS’s City Island.

“He knows about Mamdani” said Guzzi. “I tell him we can’t all have a Mamdani.”

“Who are you gonna vote for?” I asked Diego as he picked some yellow flowers for his mom.

“There are flowers flying on space,” Diego said with a smile.

— Oscar Palma

1 p.m. — No one wants to talk politics in the Marina

Polling stations around the Marina and Cow Hollow have seen a steady trickle of voters, according to poll workers at three stations in the neighborhood — one at Fire Station 16, another at the Golden Gate Valley library, and a third at Moscone Park on Chestnut Street.

Precincts have “condensed” since the last election, one worker at Golden Gate Valley library said. Workers at all three stations reported voters coming to the wrong station — in some cases, just a few blocks away from where they were actually registered to vote. In those cases, workers helped voters cast provisional ballots.

In addition to choosing their candidates for Congress and governor, District 2 voters have to decide between incumbent supervisor Stephen Sherrill and his challenger, Lori Brooke.

In recent weeks, allegations have gone public that Sherrill was only appointed to his position because then-Mayor London Breed was angling for a job from Sherrill’s mentor, former New York City mayor Michael Bloomberg.

But residents here have been, so far, reticent to opine about politics, scandalous or otherwise: some half dozen voters declined to speak when approached.

— Nicholas David

12:30 p.m — Need some last-minute election guidance?

500 volunteers for Saikat, Natalie Gee already fundraising for November

Saikat Chakrabarti campaign volunteers Ronin Datangel (left) and Austin Duncan at the 377 Geary St. location on election day June 2, 2026. Photo by Zoe Malen.
12:15 p.m. — 20,000 Post-Its with Saikat Chakrabarti’s face on them

Saikat Chakrabarti supporters gathered this morning for a last-minute voter turnout push, gathering at his three campaign locations to knock doors and phone bank.

At his Union Square office, just under 100 people were crammed into the space, chattering loudly.

The crowd, which, leaned young and extremely hyped, lined up to take pictures with Chakrabarti. Some asked him to sign shirts, skateboards and hats.

Another displayed a custom Saikat-themed manicure.

Close-up of hands with long, decorated acrylic nails inspired by San Francisco election motifs—maroon, silver, beige, striped designs, and tiny printed images; the person is wearing multiple rings.
One volunteer painted her nails with Chakrabarti’s campaign logo and colors. Photo courtesy of Tiffaney Bradley

Austin Duncan, a volunteer, said that he was here because he wants to see Medicare for All.

His mom has breast cancer, his girlfriend has a heart condition, and Duncan said, the “financial burden of private insurance has been huge.” After his girlfriend got heart surgery, she was charged $100 for aspirin, he added.

Around 11:15 a.m., Chakrabarti climbed onto a table to address the crowd.

“When they told me that we’re going to start the shift at 6 a.m, I was pretty skeptical,” he said. “But holy shit, I saw the map this morning and about 500 people showed up.”

Volunteers had plastered doors across San Francisco with over 20,000 giant Post-It notes with a picture of Chakrabarti, his “Change the Party” slogan, and the address of the nearest polling place.

The next big push starts at 3 p.m., said Nate Allbee, Chakrabarti’s campaign consultant. “We’re going to do the knock and drags,” Albee said, meaning that volunteers will knock on doors of voters who said they would vote for Chakrabarti, and, if they haven’t voted yet, “drag” them to the polls — either by giving them the address of their polling place or literally walking them to the poll, if the voter so desires.

After his speech, Chakrabarti headed out, briefly dancing to the music pumping from a speaker his volunteers were manning on the street outside the office. He filmed a quick social media video, then hopped on the N-Judah to get to his next stop: his Sunset campaign office.

A man stands inside a bus holding a coffee cup in one hand and supporting himself with the other arm, next to doors marked with various no-entry symbols.
Saikat Chakrabarti riding the N-Judah on election day June 2, 2026. Photo by Zoe Malen.

There, volunteers had mostly finished their morning rounds and had moved on munching on Ike’s sandwiches and homemade date and chocolate chips cookies as they called more voters, encouraging them to turn out.

Chakrabarti made a short speech there too. “We are gonna get Medicare for All passed, pass a millionaire tax, and end our funding of genocide,” he told the volunteers , who cheered so loudly that they almost drowned out him out.

“I know there’s a lot of work, but I hope you’re able to be in the moment and just to savor this,” Chakrabarti added. “Years from now, we’re going to be living in a different country, we’re going to be living in a different future, and you’re going to be looking back at this day as where it all started.”

— Io Yeh Gilman

12 p.m. — “I told him we couldn’t be friends if he voted no on D,” says Natalie Gee

Natalie Gee’s campaign office on Irving Street was bustling. A handful of volunteers and campaign staffers huddled, planning out the rest of the day. In the back, behind a bamboo screen, a few more sat in a U-shaped booth, phoning voters in a last push to get supporters to turn out at the polls. Stacks of protein bars sat on a nearby table.

The candidate herself, dressed in her signature campaign uniform of a pink power suit, with a chain belt, stopped at Sunset Recreation Center at noon to drop off her ballot.

A woman holding a ballot stands outside the Sunset Recreation Center during the San Francisco election, with "Vote Here" signs visible and a man entering the building.
Natalie Gee poses for a photo with her ballot at Sunset Recreation Center on June 2, 2026. Photo by Junyao Yang.

With her was her friend, Max, who is her chauffeur for the day.

“I told him we can’t be friends if he voted No on D,” Gee said, as Max prepared to fill out his ballot.

As Gee waited, she answered a call, which turned to to be a potential donor. By the end of the call, they had pledged their support. Gee is already fundraising for the November race, she said. “Depending on what happens,” she added, “the rest of the week is gonna be fundraising.”

The Sunset Recreation Center polling place was otherwise quiet. Only 13 people have voted in person in the last five hours and around 30 ballots have been dropped off, estimated the poll worker Ellen Edelson.

Three women at an indoor table with papers and pamphlets during a San Francisco election; two are seated and waving, one stands beside them, all smiling at the camera.
Poll workers pose for a photo at the Sunset Recreation Center on June 2, 2026. Photo by Junyao Yang.

Edelson, a petite older woman in a purple cardigan and purple eyeshadow, has worked at various polling places across the city: The most beautiful one is the Presidio fire station, she said, but it is also the coldest with its large doors open all day. The 2025 recall election of District 4 Supervisor Joel Engardio was the craziest for poll workers, she said. There were fewer polling places open and each site had five times as many voters on the list.

“Some poll workers almost quit,” she said, of the recall. “It was so stressful.”

— Junyao Yang

A woman in a pink blazer talks on the phone outside near a black car, holding papers, with a "VOTE HERE" sign visible on the sidewalk—a scene from a busy San Francisco election day.
Natalie Gee gets a call back from a potential donor as she waits to drop off her ballot at Sunset Recreation Center on June 2, 2026. Photo by Junyao Yang.

Asian voters got their ballots in early, Lurie and Wong disappear under a black tarp

A person hands over an ID card to another person across a table with paperwork and folders.
A poll worker hands out an ‘I Voted’ sticker to a voter inside of a Mission District polling station on election day, June 2, 2026. Photo by Zoe Malen.
11:30 a.m. Asian voters got their ballots in early

San Francisco’s Asian voters have long been known for relatively low turnout. Even in the 2022 school board recall election, when their presence at the polls (and the mail-in ballot dropoff) was marked as “historic,” it was just slightly higher than the citywide turnout.

In today’s elections, however, early data is showing higher turnout from Asian voters — particularly Chinese American voters — than the general electorate.

As of last night, 28.4 percent of the 24,329 Chinese-language ballots in California’s 11th congressional district had been returned, compared with 19.5 percent of all voters, according to statistics from voter data management system Political Data Inc that were shared by congressional candidate Connie Chan’s campaign.

Meanwhile, 22.8 percent of Chinese-American voters had returned their ballots, as had 21.1 percent of Asian Pacific Islander voters. Both of these numbers are currently higher than the percentage of ballots turned in by residents citywide.

One reason behind that turnout: Chan, the only major Chinese American candidate in the District 11 congressional race, is well-connected in both the monolingual Chinese-speaking community and the broader Asian community, and has a ground team well-versed in reaching these voters.

“We are not surprised about the high rate of return of ballots,” said Claire Lau, Chinese-language spokesperson for a pro-Chan independent expenditure commitee. Lau described a community that “is excited to have a historic opportunity” to send a candidate with Chinatown roots, and someone they have seen in their neighborhoods, to Washington.

— Yujie Zhou

11 a.m. — Chinatown wakes up, and Connie Chan canvassers drop in

As the morning progressed, the streets of Chinatown came to life. Dim sum shop workers wiped down the glass doors and windows and the sidewalks grew crowded with Asian seniors picking out the freshest fruits and vegetables.

This reporter has roamed the hills in Chinatown for the past four hours, and saw only a small crowd of half a dozen canvassers — three of them outside the Chinatown-Rose Pak station, and the other three outside a grocery store.

Bundled up in windbreakers and fleece, they were rooting for Connie Chan, one of the congressional hopefuls to succeed Nancy Pelosi.

Irene Tan, a 24-year-old who lives in Mission Bay, said they are from the Community Tenants Association, a grassroots tenant organizing group based in Chinatown. The group has endorsed Chan, along with Proposition D, District 4 supervisor candidate Natalie Gee and the state insurance commissioner candidate Jane Kim.

Three people stand on a city sidewalk during the San Francisco election, holding "Connie Chan for Congress" campaign signs; two are wearing masks and coats.
Irene Tan (right) and two senior canvassers support Connie Chan on June 2, 2026. Photo by Xueer Lu.

“A few Chinese seniors stopped by and said they have voted for Connie,” Tan said. “Some others said they have not registered but will vote for her.”

Two blocks north at Ping Yuen Apartment’s community center, residents started their day by casting their ballot.

At the center’s polling station, Janny Lee, a 34-year-old poll worker, is helping answer questions the seniors have. As poll worker, Lee said she cannot give any advice on who to vote for. But she’s happy to answer such questions as how to locate candidate Connie Chan on their ballot, Lee said.

A community service worker who chose not to disclose his name said while there are 434 units with over 1,000 residents — some 40 percent of them seniors aged over 65 — candidates are not allowed to go door knocking upstairs.

“If we let one candidate up,” he said. “We’ll have to let all of them up.”

— Xueer Lu

10:30 a.m. — Paul Orr gives a lesson on voting

At Valencia and 23rd streets, 65-year-old Paul Orr reflected on the importance of getting out to vote.

“They’re really important at a time of general chaos,” said Orr, about today’s elections. “In my 65 years, things [today] are unprecedented.”

Orr listed the governor, insurance commissioner, judges and the state treasurer races when asked what was on the ballot for him.

Orr has been voting in every election for decades, a civil duty he’s passed on to his two children over the years.

“I make sure to tell my kids and my kid’s friends to get out and vote. If you ask one of my kids they’d say ‘I’d move out if I don’t vote,’” he said with a laugh.

Also important, he continued, is reading the small print and who’s backing each ballot measure and each candidate, a lesson he learned by reading print media, he said.

As Orr walked south on Valencia, Roger Miller locked his bike in front of the polling place, Templo De La Fe.

Ballot in hand, blue helmet on, reflective jacket and black shorts, Miller was in and out within a couple of minutes.

“There’s some confusion about who to vote for governor, too many candidates,” said Miller as he unlocked his bike.

In the end, Miller supported Tom Steyer, not his favorite candidate, but one he found “exciting.”

What’s exciting? I asked.

“He’s very charismatic,” he replied.

His preferred candidate would’ve been representative Katie Porter, whom he described as “the smartest politician he’s seen.” Her slim chances of advancing to the general November election, however, drove him to support Steyer.

Miller said he also appreciates Becerra’s extensive experience.

As for city measures, Miller said he supported Proposition A, the earthquake safety and emergency response bond measure, but rejected B, C and D.

He didn’t support term limits because he believes the city needs experienced politicians. As for the competing measures C and D, he said he found them too confusing and that San Franciscans already passed the CEO tax in 2020, which is still generating revenue.

Miller said he spent time with his nephew and niece talking about the ballot at dinner last night and that he appreciated seeing younger people interested in politics.

— Oscar Palma

10:03 a.m. — GrowSF billboard at 22nd Ave. draped with a black tarp

A 12-foot billboard featuring Alan Wong and Mayor Daniel Lurie side-by-side was abruptly covered in black on Tuesday morning.

The billboard, paid for by GrowSF, has been towering over the Walgreens parking lot at 22nd Avenue and Irving Street since late April.

“The vote is almost over, maybe they don’t want to waste money,” said Minh Ly, a Walgreens employee. Ly, who said the advertiser doesn’t go through regular employees to put commercials up, said he wasn’t sure how much a day the placement costs.

A Walgreens pharmacy building with a large, empty black billboard above the entrance. Several people are walking nearby, and parked vehicles are visible.
A billboard featuring Alan Wong and Daniel Lurie is covered in black on Tuesday morning. Photo by Junyao Yang.
A Walgreens Pharmacy building with a large campaign billboard for Alan Wong and Mayor Lurie displayed in the parking lot. People and cars are visible in front of the store.
The billboard before it was covered up. Photo by Junyao Yang.

Ly said he has seen Wong coming to the pharmacy to shop, but Ly did not vote for him — or anyone. “I don’t do politics,” he said. “If it’s important, I vote but not this time.”

— Junyao Yang

Brandee Marckmann and her team of four volunteers have been stationed at BART stops all morning.

Marckmann, who is running to oust incumbent School Board President Phil Kim, handed out flyers with her name in big, green letters to commuters at the 16th St. BART station.

Most shrugged the volunteers off, but others curiously scrutinized the flyer, and pocketed it. “A lot of people don’t know anything about the school board race,” said volunteer Ben Grieff.

A group sitting and smoking a cigarettes on the BART station steps, sat and watched the volunteers, who each wore a T-shirt emblazoned with “Brandee Marckmann, Mom for School Board.”

Marckmann and her team of 86 volunteers have handed out flyers at 13 farmers markets across the city for the past two months. In San Francisco’s smaller races such as the race for a seat on the school board, this grassroots strategy could have significant payoff.

Marckmann has spent nearly $147,000, most of which were her own funds, on the campaign thus far — far outspending her opponents, Phil Kim and Virginia Cheung.

“It’s been pretty positive so far,” said Marckmann. “There’s something to be said for doing something different.”

— Marina Newman

A group of people stand on a city sidewalk holding campaign signs for Brandee, engaging in conversation near a street intersection.
Brandee Marckmann (left from center) hands out flyers on election day morning at the 16th St. BART station. Photo by Marina Newman.

Poll workers at Argonne Elementary School have seen 11 in-person voters since the polls opened at 7 a.m. They estimated some 30 voters have dropped off ballots.

Around 10:35 a.m., a worker from the city came to check in on the station. Poll workers said a light in one of the booths had fallen out. The city worker offered tape, but inspected the booth and determined that there was sufficient lighting in the polling station, which is in the school’s library.

When one voter walked in to drop a ballot off, none of the three poll workers got up. They greeted the voter and directed him to the red plastic box by the table.

“It’s like a day at the beach,” one poll worker said.

“Not as sunny, though,” quipped another.

Around 10:45 a.m., two more in-person voters came, bringing the tally to 13.

— Nicholas David

It looks like the perfect spot for a date. With a soft checkered tablecloth and the light from the large bay window streaming in, the front corner table at Eagle Pizzeria on Taraval Street in the Sunset District has just enough room for two people and a pie—or one person and their ballot.

Normally closed on Tuesdays, the pizzeria opened its doors to voters this morning, taking ballots instead of orders for the day. The wall of framed pictures and newspaper clippings was adorned with large voting guides, and all of the tables had been pushed to the back — except for one. After getting the answers to a few questions about his mail-in ballot, a man huddled at the corner table with his ballot and pen, making a few fixes to the envelope before submitting his vote.

Hungry voters will need to bring their own snacks. Poll workers at the pizzeria, however, remained upbeat in spite of the long day ahead and the lack of free food.  “It’s reassuring to do this job,” said Blaise, who is working the polls for the first time since high school.  “It’s nice to see that people care.”

Besides, as another poll worker joked, “I do spot a few beers in the back.”

— Annelise Bowers

A man stands at a counter using a tablet or electronic device near empty voting booths inside a room with red walls and glass block windows.
A poll worker standing next to voting booths waiting for voters inside of a Mission District polling station on election day, June 2, 2026. Photo by Zoe Malen.

Congressional candidate and state Sen. Scott Wiener is virtually guaranteed to finish first in today’s primary.

Wiener, who’s known as hardworking even among his critics, however, started campaigning at 6 a.m. By 10 a.m., he had already returned from doing two-hours at the Glen Park BART Station, and was about to head out for two senator’s office events.

It’s been a very intense year, he said in an interview. Apart from ceaseless campaigning, his legislator job requires him to “go back and forth to Sacramento quite a bit” and to advance bills — sometimes as many as seven a week — in the state legislature.

“I find that I’m at my sharpest when I’m under the most pressure, so I feel really good,” said Wiener. And not giving it his all — even when polls suggest he’s virtually guaranteed to win today — is just “not how I’m wired,” he said.

A man with glasses sits on a couch in a warmly lit room with a lamp, magazines on a table, and a banner with Chinese calligraphy on the wall behind him.
State Sen. Scott Wiener at his congressional campaign headquarters at 2055 Market St. on June 2, 2026. Photo by Yujie Zhou.

“You give up a big piece of your life when you run for office,” he acknowledged. That means there won’t be any vacation plans for him until after the November election. The only exception: a July visit to his parents on the East Coast.

— Yujie Zhou

Connie Chan in the Mission, Alan Wong in the Sunset

A man stands on a sidewalk holding a sign showing gas prices at $5.85, near a street and a Valero gas station. Several cars are visible in the background.
District 4 supervisor Alan Wong greets a driver near 19th Avenue and Judah Street on June 2, 2026. Photo by Junyao Yang.
9:49 a.m. — Connie Chan on 24th Street, a foggy Richmond morning, and the vote total ticks up

Connie Chan took to Mission and 24th streets to convince potential voters, passing out bright pink “Pissed Off Voter Guides.” Her canvassers held signs for Chan and Yes on Prop D. 

Chan said she was aiming for transit riders coming in and out of the BART station.

“But we also know that people are kind of holding onto the ballots because of the governor’s race right now at this moment,” Chan said. “So we want to make sure that they have a plan to vote today.” 

Turnout is low, and dominant belief is voters, particularly Democratic ones, are holding onto their ballots until the last minute, struggling to make up their minds about the governor’s race.

Low voter turnout means less engagement. But Chan says there’s still 10 hours of the day.

“Well you’ve gotta vote now and you gotta vote today by eight,” Chan said.

— Rosina Boehm

A woman in a gray blazer stands on a city sidewalk holding pamphlets, with other people and a bus visible in the background.
Connie Chan, District 1 Supervisor running for Congress, campaigns on 24th and Mission St on election day, June 2, 2026. Photo by Zoe Malen.

Meanwhile in the Richmond, it was a slow, foggy morning.

Five poll workers at Fire Station 31 in the Inner Richmond were mostly by themselves this morning.

Poll inspector Mark Passel estimated around 20 people filed provisional ballots, and said 13 voted in person in the two and a half hours since the polls opened.

The election in November, he said, “will be a little bit hotter.”

One Richmond District resident, Dan Passamaneck, said he voted for Sen. Scott Wiener in the congressional race and not the Richmond District supervisor, Connie Chan. He cited Wiener’s “legislative record.”

Passamaneck also said he voted “Yes on A and no on everything else,” and that he felt neither propositions C nor D were “well-crafted.”

— Nicholas David

At the polling station at 25th Avenue and Lincoln Way, poll worker Paul Foppe was dressed for action.

Wearing a large voting lanyard, a neon yellow hoodie, and a bright orange vest, he was ready to flag down any lost voters and guide them to the ballot box. Unfortunately for Foppe, there were few voters so far to guide: An hour into voting, the row of ballot boxes stood empty, and the counter on the voting machine read out 00001.

It’s Foppe’s 13th year as a poll worker, and every year he says, in person voting goes down. “We have gotten a steady stream of voters today,” he said, “but most just head straight to the back to drop their ballot off.”

Still, poll workers must arrive at 6 a.m. and set the place up for a crowd, squeezing a long row of ballot boxes between boxes of cleaning supplies and old furniture.  Fortunately, this year Foppe had an easy commute — his assigned polling station was in his garage.

While the team waited for action, Foppe buzzed around, issuing instructions to his fellow poll workers. He instructed one to sit by the voting machine to help feed in the ballots, and placed another by the door. “Sometimes people get a little lost trying to find their polling place, because it changes year-to-year,” he explained. “We want to be ready for that.”

Just then, a voter walked in, ballot open and unfolded in his hand. “I think I messed this up,” he said. “Can I still vote?” Foppe and his team sprang into action, swiftly distributing a ballot and ushering the man over to the ballot box. While they waited for him to finish, Foppe went over to the voting machine, pulling it over an inch to get the angle just-so.

When the man had finished, the team coached him through feeding it into the machine.  “A little up,” Foppe advised. With a soft “ding,” the ballot slid into the machine, and the vote count ticked up to 00002.

— Annelise Bowers

9:20 a.m. — Alan Wong, District 4 candidate, starts his day

Supervisor Alan Wong kicked off his day with a morning run.

Wong, who has previously said “the fog is my natural habitat,” jogged down to Sunset Reservoir, and said Tuesday morning was perfect — grey, overcast and chilly.

“It’s too hot once you get past Twin Peaks,” he said. “Here, you don’t need layers of sunscreen. The fog is the natural sunscreen.”

A man stands in front of an ARCO gas station holding campaign flyers and a sign, with pink flowers in the foreground.
Supervisor Alan Wong holds his campaign sign at 19th Avenue and Judah Street on June 2, 2026. Photo by Junyao Yang.

As the N-Judah passed by, Wong held his blue campaign sign on the boarding island, greeting both drivers and commuters waiting for the train. Team Wong is in the car today, though: For maximum efficiency, he and his campaign drove up from his campaign headquarters on Irving and 19th to the Muni stop, which was just a block south.

“I’m just showing up, make sure to say hello to people as much as I can through the end of the day,” he said. After the visibility stop, he will make his way to City Hall for the Tuesday Board of Supervisors meeting.

— Junyao Yang

9 a.m. — Longtime Chinatown poll worker: It’s ‘particularly quiet’

Frances Leung has been volunteering at polling stations in Chinatown since 2014, and this morning, she said, it’s been “particularly quiet.”

Leung’s guess, the same with four other poll workers this reporter spoke to this morning, is that this is a primary election, and the turnout tends to be low.

Leung, a banker who works in the nearby Financial District, said stations in Chinatown usually get “very busy” and “a lot of Chinese seniors” fill out or drop off ballots during lunch time, or coming to buy groceries from elsewhere in the city. Office workers downtown also usually swing by to cast their vote to or from work.

Three people sit and stand at an information table indoors, sorting through papers and forms related to the San Francisco election. Various documents and supplies are spread out on the blue tablecloth.
Poll workers Frances Leung, Sandra and Carel Veenhuyzen (left to right) are ready for their long shift from 6 a.m. to 10 p.m. on June 2, 2026. Photo by Xueer Lu.

On this quiet and slow morning, Leung is working alongside three other poll workers at the station at the City College’s Chinatown and North Beach center at 808 Kearny St., helping some 15 voters.

One Chinese senior showed up in a red tracksuit with two filled-out ballots. Leung, who speaks English, Cantonese and some Mandarin, struck up a conversation in Cantonese.

The senior has a friend who lives down at Balboa Park, she said, and doesn’t know where the nearby precincts are or how to mail his ballot.

“I told him, ‘Tell your friend to come here,’” Leung said. “He said his friend is coming to Chinatown later for groceries. So maybe I’ll see him.”

Leung has now been helping voters, especially Chinese seniors, for over a decade. It’s about reciprocating the help she got as a newcomer to San Francisco after coming here 30 years ago.

“I want to help,” Leung said, “and do my job as a citizen.”

— Xueer Lu

8 a.m. — No on D campaign hits the Sunset: ‘Some guy yelled at us’

Jon and Patrick, two recent grads, held up “No on D” signs and San Francisco Democratic Party endorsement flyers at 8 a.m. at the intersection of Lincoln Way and 19th Avenue, a major commuter corridor in the Sunset.

Big rigs and loading trucks traveled north near the intersection, and commuters waited for the 28R-19th Avenue Rapid at the bus stop.

They’d been at the corner since 6:45 a.m. “The first five minutes some guy yelled at us to go kill ourselves,” Jon said when asked how the morning went. “Other than that it’s been fine.”

Two people stand on a sidewalk holding signs that read "No on D, It's damaging for SF" in front of a grey building, voicing their concerns ahead of the upcoming San Francisco election.
Jon and Patrick volunteer for the “No on D” campaign and hold up signs for visibility at 19th Avenue and Lincoln Way on June 2, 2026. Photo by Junyao Yang.
Cars and a yellow school bus drive through an intersection near a "Lincoln" street sign and a monument, with trees in the background, as campaign posters for the San Francisco election line the nearby sidewalks.
Commuters travel through 19th Avenue on June 2, 2026. Photo by Junyao Yang.

They said they support and volunteer for the Proposition C, the countermeasure that would sink the “Overpaid CEO tax” aka Proposition D, because of “friends and a lot of endorsements.” If Prop. D passes, they argued, it will “drive business out and rise prices for regular people.”

“Even if covers the city’s deficit, that’s not the way to go about it,” said Patrick. The measure would raise some $300 million a year for the city.

At the end of the day, Patrick added, “This is a big proposition that’s going to change the city a lot whichever way it swings.”

Both want to engage in local politics more, and have found their route — holding up signs at busy corridors on Election Day. “We’ll be here an hour or two more,” said Jon. “Then back to private lives!”

— Junyao Yang

7:34 a.m. — Slow start in the Mission District

Mission District polling places had a slow start on Tuesday morning. Few voters flocked to the booths in the early hours, mirroring the low turnout for mail-in ballots. 

Shortly after the first voter of the day entered the Mission Arts Center at 7:34 a.m., a poll worker shouted “Polls are open!” to no one. The voters who did show largely dropped off filled-out ballots rather than voting in person.

A woman sits at a cafe table working on a laptop, with a coffee cup and water bottle in front of her and framed art on the wall behind.
Mission District resident Katelyn Watson doing work at a cafe during election day June 2, 2026. Photo by Zoe Malen.
A man stands in front of a window made of glass blocks beside an empty voting booth and chairs in a brightly lit room.
A poll worker standing next to voting booths waiting for voters inside of a Mission District polling station on election day, June 2, 2026. Photo by Zoe Malen.

Polling stations across the city are reporting “no wait” times, according to the San Francisco Department of Elections website

Mission District resident Katelyn Watson was still researching candidates in the morning, and said she plans to vote later today. She’s prioritizing the school board race, she said.

Following the February teacher’s strike, Watson is concerned about her 8-year-old’s education. She wants the city to have better spending and focus on affordability amid school funding challenges, she said; she isn’t focused on the congressional primary

Watson thought the low turnout was due to one thing: apathy.

“People are just not super engaged because they’re sick of not seeing movement,” Watson said. “That’s totally a guess, but, I mean, even I’m researching on the day up, right?” 

— Rose Boehm

Voter turnout is looking low this election: Who does it help? Who does it hurt?

A person holds a roll of stickers above paperwork on a desk with several pens nearby.
A poll worker holding ‘I Voted’ stickers inside of a Mission District polling station on election day, June 2, 2026. Photo by Zoe Malen.
Which candidates and measures will suffer if no one comes out to the polls?

Way back in 1990, British comedian Alexei Sayle parodied the tedium of voting. Rather than checking the box next to a politician, voters in his sketch showed up to stick their heads “in a bucket of something nasty, please.” 

Voters in the fictional constituency were given the option of sticking their heads in one of four buckets: “creosote, sump oil, liquid manure and cold rice pudding.” 

In San Francisco there are always so many buckets. Voting can feel like work. But here’s the thing: As of Monday morning, more than 80 percent of this city’s voters hadn’t

Just 19 percent of registered voters had returned their ballots at the beginning of this week, according to Elections Director John Arntz. While that number will surely go up, extremely mediocre turnout is now looking like the ceiling — if not an unattainable goal. 

Simply put, this is not the Knicks-Spurs of June primaries; San Francisco voters (like California voters writ large) do not seem much enthused to vote. And that probably stems from the unappealing morass to succeed Gov. Gavin Newsom atop the ticket: Municipal issues will all but certainly have a greater impact on locals’ lives, but it’s the federal and state issues that often drive people to the polls. Alas. This year, we’re not driving. We’re not even carpooling. 

There are several factors that will dictate the outcome of today’s election to keep an eye on. This is a big one.

Is anybody going to vote? 

Perhaps because of the unappealing choice of buckets atop the gubernatorial ticket — and attempts to gamify the vote in order to prevent two Republicans from advancing to the general election — Democratic voters this year are holding onto their ballots to the bitter end and struggling to pick a gubernatorial candidate. 

A late surge is hardly impossible; San Francisco turnout could double or perhaps a good bit more than that to 40 to 45 percent or more. But this will still likely be a low-turnout election (you’d have to go back to 2014 for a sub-45 percent turnout for a state primary). And low-turnout San Francisco elections tend to favor more conservative candidates and measures. 

The ballots that have already found their way to the basement of San Francisco City Hall likely skew heavily from older homeowners and/or Republicans. While Democrats could fret over the top of the ballot, there was less consternation for Republicans: They had fewer choices and Donald Trump anointed Steve Hilton. 

And older, squared-away folks — often described as the sort of people who know where the stamps are — tend to be the first to return ballots. 

So, the first drop of early ballots that will be revealed at 8:45 tonight will likely be about as conservative as San Francisco can offer. 

That’s par for the course. What may be a bit different tonight is that a large percentage will turn in their ballots at a polling place today. The typical late progressive shift is harder to foresee because so many voters, presumably across so many ideologies, will turn in their ballots late. 

And that’s if a bushel of late votes arrive. 

Who suffers from a low-turnout election? 

Backers of Prop. D, the union-backed “Overpaid CEO Tax” to ding big companies to backfill Trump cuts, were confident of a big win if turnout exceeded 50 percent (a similar measure passed 65-35 six years ago — in an election with 86 percent turnout). 

But it doesn’t look like 50 percent turnout is likely to happen. Projected turnout has continued to fall, and, among labor progressives, anxiety has continued to rise. 

Simply put, there may not be enough late voters to offset the likely conservative-leaning early voters whose ballots are already nestled in City Hall. With a low enough turnout, even Prop. A, the earthquake safety bond, is no sure thing.

A low-turnout election would also be unwelcome news for insurgent congressional candidate Saikat Chakrabarti, who would figure to do well among the city’s young, progressive — and lower-propensity — voters. 

Chakrabarti and Supervisor Connie Chan are within the margin of error in recent polling in the race to come second behind Sen. Scott Wiener and advance to November’s general election. 

But political observers also foresee issues for Chan. Right-leaning Chinese voters, who might have voted for Chan out of familiarity, could instead be peeled off by Marie Hurabiell — a Republican-turned-Democrat who has run on Republican culture war wedge issues like transgender people using restrooms.

Finally, it’s less clear how a low-turnout election will affect the supervisor special elections in District 2 and 4. But political observers felt that, in the Sunset, it could benefit Albert Chow

Chow has been a registered Democrat since 2005 (he was previously registered as no party preference). But he has been a neighborhood fixture as a contractor and hardware store owner for even longer and he was a major figure in the recall of Supervisor Joel Engardio and battles over the closing of the Great Highway

He is, for lack of a better term, the most anti-establishment candidate in the field. 

How will ranked-choice voting play out? 

Ranked-choice voting will not be a factor in District 2, where appointed incumbent Stephen Sherrill is facing Lori Brooke. But it will loom large in District 4, where appointed incumbent Alan Wong, Chow and labor-backed progressive Natalie Gee are all seen as viable candidates. 

Transfer votes from perennial candidate David Lee and hobbyist candidate Jeremy Greco will loom large. How to put this nicely? Among Sunset residents whose thought process led them to vote No. 1 for Lee or Greco, it is, shall we say, difficult to predict whom they would vote Nos. 2, 3 and so on. 

A cohesive Anyone-But-Wong ranked-choice strategy would put the incumbent in a tight spot. While Gee and Chow have a 1-2 ranked-choice arrangement they’ve urged their voters to follow, Lee isn’t playing that game. Nobody knows for sure where his secondary votes will go.

If Wong is not far ahead with a healthy plurality of the early votes, his competitors are optimistic we’ll have a new supervisor next month. 

Play it again, Sam

But, here’s the thing: The winners in both District 2 and 4 are just place-holders until November’s general election. If, unexpectedly, Brooke wins or finishes a relatively healthy second, she could well face Sherrill again later this year. If she is shellacked, Sherrill may run unopposed in November. 

And the same goes for District 4: Barring an unexpected blowout, all or most of the same candidates may be back for seconds. 

Say what you will about the choice of buckets here in San Francisco — they seem to be consistent. And plentiful. 

— Joe Eskenazi

Join the Conversation

2 Comments

  1. Cheers to all the Saikat Chakrabarti “young and extremely hyped” workers who will be getting their first taste of electoral defeat today. You never forget your first one! xo

    +1
    0
    votes. Sign in to vote
  2. Saying “100% of precincts reporting” is accurate but a bit confusing since only ~50 percent of the vote has been counted.

    +1
    0
    votes. Sign in to vote
Leave a comment
Please keep your comments short and civil. Do not leave multiple comments under multiple names on one article. We will zap comments that fail to adhere to these short and easy-to-follow rules.

Your email address will not be published. Required fields are marked *