There is a specific kind of joy that only a store cat can deliver. You go in for a tallboy or a bag of cat litter (the irony is not lost on anyone) and you leave having made eye contact with a sphinx asleep on the register. It costs nothing. For a few seconds, the city is just a warm animal ignoring you, and that is enough.
In 2022, the designer and transit gadfly Chris Arvin did the civic work nobody asked for and everybody needed: Arvin mapped them. “San Francisco Store Cats,” stars next to the particularly friendly ones, a polite note reminding you not to wake the sleeping ones.
Photo from Chris Arvin’s Instagram.
Four years later, we wanted to see who was still on shift, and so did San Francisco. A single thread on r/sanfrancisco, started by a tourist hunting a bodega cat for their kid, turned into a sprawling, lovingly argued census of who is still working which counter. Arvin, the map’s own maker, showed up in the replies to admit it was overdue for a refresh. We took that as an assignment.
What follows is bigger than the original; the thread handed us dozens of cats with names and corners, so we tracked down addresses for the ones we could and sorted everyone by how sure we are. Most turned up in recent reports, this week’s thread especially, though we’re trusting those accounts rather than having staked out each counter. A few we are still taking on the 2022 map’s good word. One is gone, in a way that became, briefly, the whole city’s argument with itself. And the newest is a flower-market cat who survived a five-day catnapping the same week all of this blew up.
Advertisement
San Francisco Shop Cats Map
‘;
if (!s.cat) html += ‘
Catu2019s name not recorded
‘;
html += ‘
Advertisement
‘ + (s.cat ? s.store + ‘ ‘ : ”) + s.street + ‘
‘;
html += ‘
‘;
html += ‘
Neighborhood‘ + s.hood + ‘
‘;
html += ‘
Advertisement
Store type‘ + s.type + ‘
‘;
html += ‘
‘;
if (s.note) html += ‘
‘ + s.note + ‘
‘;
if (!s.exact) html += ‘
Advertisement
Approx. location
‘;
if (s.link) {
html += ” + esc(s.linkLabel || ‘Visit’) + ”;
} else if (s.status === ‘memoriam’) {
html += ‘Gone, not forgotten‘;
}
html += ‘
‘;
return html;
}
var markers = CATS.map(function(s){
var icon = L.divIcon({ className: ”, html: ”, iconSize: [22,22], iconAnchor: [11,11], popupAnchor: [0,-11] });
var m = L.marker([s.lat, s.lng], { icon: icon });
m.bindPopup(popupHTML(s), { closeButton: true, autoPan: true, autoPanPadding: [24,24], keepInView: false });
return { marker: m, data: s, on: false };
});
function visible(s){ if (!state[s.status]) return false; return true; }
function render(){
var shown = 0;
markers.forEach(function(o){
var show = visible(o.data);
if (show && !o.on) { o.marker.addTo(map); o.on = true; }
else if (!show && o.on) { map.removeLayer(o.marker); o.on = false; }
if (show) shown++;
});
document.getElementById(‘cat-count’).innerHTML = ‘Showing ‘ + shown + ‘ of ‘ + markers.length + ‘ cats’;
}
var chipWrap = document.getElementById(‘cat-chips’);
Object.keys(STATUS).forEach(function(key){
var st = STATUS[key];
var chip = document.createElement(‘div’);
chip.className=”chip ” + st.cls + ‘ on’;
chip.innerHTML = ‘‘ + st.label;
chip.addEventListener(‘click’, function(){ state[key] = !state[key]; chip.classList.toggle(‘on’, state[key]); chip.classList.toggle(‘off’, !state[key]); render(); });
chipWrap.appendChild(chip);
});
Advertisement
document.getElementById(‘cat-foot’).innerHTML =
‘Sources: Chris Arvinu2019s 2022 u201CSan Francisco Store Catsu201D map, a May 2026 ‘ +
‘r/sanfrancisco thread, ‘ +
‘SFGATE, the S.F. Chronicle, plus 2024u20132026 listings. Cat residencies change over time.’;
render();
function fix(){ map.invalidateSize(true); }
setTimeout(fix, 200); setTimeout(fix, 800);
window.addEventListener(‘resize’, fix);
}
if (document.readyState === ‘complete’) initMap();
else window.addEventListener(‘load’, initMap);
On the color codes: Green (“reportedly around”) means the cat turned up in a recent account: this week’s thread, a recent review, or some other 2024-to-2026 sign. Cats are old, or wander, or get whisked off in a stranger’s Honda, so a green pin marks a recent mention, not a guarantee the cat will be there when you are. Amber means the cat was on Arvin’s 2022 map and didn’t resurface, so visit on faith. A single ember-red pin is for the one we lost.
Still on patrol, reportedly
Number Five at Grace Nursery, inside the San Francisco Flower Market, 901 16th St (Potrero Hill).
Advertisement
Number Five is a round-faced gray cat who has supervised the wholesale flower market for three years, the fifth pet of florist Grace Su; the name nods to the Chinese tradition of birth-order nicknames, and, she has said, to Chanel No. 5. He patrols the vendor stalls like a floor manager who suspects everyone is slacking.
In May 2026 he was scooped off the floor in the middle of the pre-Mother’s Day rush and driven across the Bay Bridge by catnappers. His admirers found him five days later, perched on a forklift in an Emeryville warehouse, and the police brought him home. He came back a little skinny and a little jumpy, but he came back.
Dogg at George’s Market, 702 14th St (Duboce Triangle).
A senior gray tabby; Arvin’s writeup and George’s regulars both call her “she.” She’s getting on in years, so she’s out front less than she used to be, but she remains a sweetheart, and people in this week’s thread were still checking in on her. There’s a tribute to her on the storefront mural.
FuFu at S&S Grocery, 1461 Grant Ave (North Beach).
A white cat with blue eyes and a job, which is lying in wait near the door to ambush passing dogs. Reviews still mention him doing exactly this, so the post appears to be filled.
Keanu at O’Looney’s Market, 588 Haight St (Lower Haight).
A goofy orange cat who guards the front in the afternoons, then heads out on neighborhood walkabouts, so he’s hit or miss. The visiting family whose post kicked off this week’s thread came looking for him and missed him; the owner tried to track him down anyway. Arvin’s map listed him as “Kiano,” but the block calls him Keanu.
We noted another kitty at this location, per Yelp.
Advertisement
Alex at S&A Liquor, 98 Sanchez St (Duboce Triangle).
A neighborhood favorite a half-block from Duboce Park; the kind of cat people post about just to say they love him.
Toasty & Meow Meow at Seven, 2345 Irving St (Outer Sunset).
Um this may be a couple of cats the writers of this actually saw. At least one of them. Seven is a home-goods store, not a corner store, and it still keeps a couple of very sweet cats. On Arvin’s map the pair was Toasty (who got a friendly star) and Meow Meow; the current cats may have rotated, but cats there are.
Lilly at Michaelis Wine & Spirits, 2198 Union St (Cow Hollow).
The cat of a wine and spirits shop open since 1986, which is a deeply correct place for a cat to be. She looks like she has a great time there.
Mojito at California & Lyon Market, 3100 California St (Presidio Heights).
A friendly cutie who hops onto the counter for pets, a short walk from the Presidio and the Palace of Fine Arts.
Whiskey & Tequila at New Star-Ell Liquor, 501 Divisadero St (NoPa). Whiskey is gray, Tequila is orange.
Reportedly, Tequila was briefly catnapped and came home. Neither is out front all the time, so you take your chances.
Buffy at Buffalo Whole Food & Grain, 598 Castro St (Castro).
Advertisement
Given how young Buffy is, this could be her or just a random kitty in the store that day. From Google reviews.
A playful kitten, about six months old, brand new to the beat.
Not pictured but still on patrol, reportedly:
Shadow at Randa’s Market, 3131 16th St (Mission). Reported in this week’s thread as Randa’s cat now, in the months after KitKat. Same counter, same corner.
Cinnamon at Stewart’s Market, 2498 Sutter St (Lower Pacific Heights). A corner-grocery cat at Sutter and Broderick.
Cookie at Oak Fair Market, 999 Oak St (Lower Haight). A tabby holding the counter on the Alamo Square edge; one thread regular went and said hi mid-conversation, then reported back.
Tiger & Bella at Hing Fung Trading Co., 717 Vallejo St (Chinatown). Tiger is a very friendly orange cat; Bella is around too, if you’re lucky. A herb-and-dry-goods shop near Stockton.
The Amro Market cat at 2901 Van Ness Ave (Marina). A very friendly cat at the corner of Van Ness and Chestnut.
From the 2022 map
These were on Arvin’s map and didn’t come up in this week’s thread, so we can’t promise they’re still on shift. Worth a look, but go in hopeful rather than certain.
Chucky and unnamed kitty at Flora Grubb Gardens, 3rd & Jerrold (Bayview).
The resident cat at the city’s prettiest plant nursery, which means Chucky lives somewhere that looks like a magazine spread and almost certainly does not appreciate it. On their Instagram, we’ve noticed two kitties. One is orange.
Boots at Hey Neighbor Café, 2 Burrows St (Portola).
A white-pawed cafe cat who was once pictured on the shop’s own website wearing his crown sideways, as a king does. We’ve seen mentions of shop dogs at Hey Neighbor nowadays. This Instagram post from 2022 says Boots had been traumatized.
Not pictured, but also from the 2022 map:
The Sun Sun Trading cat at 1226 Stockton St (Chinatown). A cat among the ginseng, dried seafood, and Chinese remedies of a Chinatown trading shop. No name on record.
Ruby at Amity Market, 3350 Taraval St (Parkside). White and button-nosed, way out where the avenues run quiet and the fog wins most arguments. A later addition to Arvin’s map.
In memoriam
KitKat at Randa’s Market, 3131 16th St (Mission).
The most famous of all of them, and the reason this map reads a little differently in 2026 than it did in 2022. KitKat was a tabby that Randa’s took in as a stray to keep the rodents down, and over six years he became the opposite of pest control: the reason people came in. Customers brought him toys, blankets, food. He was a “particularly friendly” star on Arvin’s map.
In October 2025, KitKat was killed by a Waymo outside the store. The neighborhood built a memorial at the door. For a couple of weeks he became the face of every feeling this city has been holding about robotaxis and tech and who gets a say in the streets, and then he became what he’d always been, which was a cat somebody loved. Randa’s Instagram bio still reads “Remember KitKat.” We do.
Advertisement
More sightings worth chasing
The Reddit thread turned up more cats than we could pin to a name and a verified address. Treat these as leads, not promises: the corner store at Central and Hayes, where someone once met a cat named Coco; Dad & Son Market at Fillmore and Lombard, said to keep two; a Chinese dry-goods store at Broadway and Stockton with three young cats; Unimart at 8th and Howard, where a mother and two kittens hang around; Larkin Corner Market, whose cat is shy about office hours; Key Food at Fillmore and Oak, which has both a cat and a dog named Major; and a maybe-cat in a corner store at 22nd and Guerrero. And one that isn’t a store at all: Lamont, who holds court at Pop’s, the 1937 dive bar at 2800 24th Street. Not a bodega cat, but a beloved one.
Saul Sugarman is editor-in-chief and owner of The Bold Italic. He is proud stepmother to a senior kitty, Xena, who is warrior princess of San Francisco’s Forest Knolls neighborhood.
The Bold Italic is a not-for-profit media organization, and we publish first-person perspectives about San Francisco and the Bay Area. We operate under a fiscal sponsorship of a 501(c)(3).
You can become a paid subscriber. Or donate. Or learn more about us.
SAN FRANCISCO (KGO) — Two commercial fishermen described the desperate rescue efforts they undertook after a three-level vessel sank in San Francisco Bay with 20 people on board, leaving several people trapped and others struggling in the water.
Mike Montoya and Justin Marceline said they had not planned to be on the water Tuesday but made a last-minute decision to go fishing.
While out on the bay, they noticed what they described as smoke or steam about two miles away and headed toward it. When they arrived, they found a vessel rapidly sinking and passengers fighting to survive.
“Moments of chaos” unfolded as people jumped into the freezing water, clung to the side of the boat and yelled for help, according to the fishermen.
Advertisement
“She didn’t have a lifejacket, and she was flailing, and I grabbed her by the arm and pulled her up. The imagine is etched in my mind. She had bright blue eyes and she looked up at me and said help, and I was like, ‘You look like my mom. I’m not going to let you go. I promise you.’ She told me she didn’t want to die, and I told her ‘I’m not going to let you die,’” Marceline said.
Crews will suspend search for 3 missing in deadly SF Bay boat sinking Wednesday evening
Montoya and Marceline said they were the first to arrive at the scene and rescued eight or nine people from the water before first responders reached the area.
“The boat was already sinking. It was about halfway in the water. I say they were on their knees in the second deck in the gally. Within a minute they were up to their shoulders,” Marceline said.
Montoya said getting close enough to rescue victims was difficult because of the debris scattered across the water.
Advertisement
“Yes, there was so much debris on the water and people and stuff everywhere. I couldn’t tell what was a person and what wasn’t, and I was maneuvering the boat in and out, and we would grab a person and back up and see who the next person to grab was,” Montoya said.
Within minutes, they said, first responders from across the Bay Area arrived with divers and rescue crews, joining the effort to save those on board. But both men said the most haunting images were of people they could not reach in time.
“There was one window open and when we pulled on the scene, Mike said, ‘There are people in there banging. The window — break the window!’ and like I said, there were mostly older people, and they couldn’t break the window. It was a helpless feeling,” Marceline said.
“Can’t even imagine. We were throwing weights at the window and handed a guy a weight here break the window or kick the window and he looked at us like, ‘I’m exhausted. Can’t do anything,’” Montoya said.
Marceline compared the scene to a maritime disaster.
Advertisement
“It was a scene from the Titanic in real life. Like people banging on the window trying to get out. It’s probably something I will never forget,” he said.
Sudden immersion in water under 60 degrees Fahrenheit (15 degrees Celsius) can lead to cold water shock, a condition where people lose dexterity in minutes. That can be dangerous or deadly when trying to escape a sinking watercraft.
As of Wednesday, dive teams continued searching for three people who remained missing following the sinking.
U.S. Coast Guard crews combed cold, choppy waters in and around San Francisco Bay on Wednesday for the three people missing nearly a day after the boat capsized with 20 family members and friends aboard to scatter the ashes of a loved one.
Ralph Boisa said his extended family and a few close friends were on his younger brother’s boat Tuesday afternoon to celebrate the life of his daughter who died at age 33 in 2016 and loved to surf.
Advertisement
His older brother, Clifford, died shortly after being pulled out of the water. Sixteen others were rescued as the cabin cruiser took on water, listed heavily to one side and rolled over before sinking. Clifford’s dog also died.
The three people missing are his sister Carol, Clifford’s wife Jackie, and his daughter’s friend, he said.
“We’ve gone through a lot of tragedy over the years,” said Boisa, who lost his other daughter in 1995. He lives in Washington and couldn’t make it for the excursion.
SAN FRANCISCO – While one person died after a cabin cruiser sank in the San Francisco Bay on Tuesday afternoon, a harrowing rescue near Alcatraz Island saved 16 lives.
The U.S. Coast Guard and the San Francisco Fire Department continue to search for three missing people who went overboard after the vessel went down around 3:30 p.m.
Advertisement
Clifford Joseph Boisa, 79, of Sutter County, was pronounced dead following the incident. However, 16 others were brought to safety, many of them rescued by civilian boaters who rushed to help. Among the Good Samaritans were fishermen Mike Montoya and Justin Marceline, who were aboard the Khea, a 22-foot Boston Whaler.
At a Wednesday afternoon press conference, Coast Guard Incident Commander Jarod Toczko praised the fishermen and a nearby kiteboarder for their heroic actions.
A rush to help
Advertisement
Dig deeper:
Montoya and Marceline were on the water when they noticed signs of trouble nearby.
“I turned around and I saw a plume of either smoke or steam,” Montoya said. “I just knew that somebody was in distress.”
Advertisement
Montoya told his partner they needed to move their boat closer to investigate. When they arrived, they found people struggling to stay afloat in the Bay’s frigid waters.
The rescuers began throwing life jackets and flotation devices to those in the water, pulling victims aboard as quickly as possible. Many of the victims were exhausted and unable to pull themselves out of the water.
Advertisement
Witnesses recount people ‘trapped’ inside
What they’re saying:
As they pulled survivors aboard, Montoya said he saw people trapped inside the cabin of the sinking vessel, banging on the windows.
Advertisement
“We were throwing fishing weights at the window, trying to get it to break, and we handed a guy a fishing weight that was in the water, and he didn’t have a life jacket on,” Montoya said.
In total, Montoya and Marceline pulled nine people onto their boat and brought them to safety.
Advertisement
Marceline was prepared to jump into the Bay to help more victims, but Montoya stopped him, warning of debris and other dangers beneath the surface.
“My first thought was to kick my shoes off and get down to my underwear and jump in and start to get the elderly people off the boat, because it was elderly people helping elderly people and it wasn’t going fast enough,” Marceline said.
Memorial service turns tragically fatal
Advertisement
Survivors told the fishermen they had gathered on the water for a memorial service. Authorities later confirmed that the victims and survivors were relatives and close friends holding a memorial when the boat went down.
Toczko said the 50-foot cabin cruiser was capable of carrying the number of people on board, but noted that investigators must consider several factors regarding the boat’s stability.
The investigation into what caused the vessel to sink is ongoing.
San Francisco supervisors authorized a resolution Tuesday urging California lawmakers to expand the city’s automated speed camera program, which currently has 33 cameras operating in the city under a state pilot.
The board’s 10-to-1 vote on Tuesday, with District 10 Supervisor Shamann Walton voting against it, will not add cameras immediately, but formally asks the state to explore changes to the program. The San Francisco Municipal Transportation Agency has identified at least 80 additional high-need locations that could benefit from automated enforcement, according to a report filed with the Public Safety and Neighborhood Services Committee.
Richard Zieman, whose son Andrew, a paraeducator, was killed in November 2021 by a speeding driver outside Sherman Elementary School on Franklin Street,told Mission Local that city officials should do more. “They waited for a tragedy,” Zieman said. Parents and school leaders had repeatedly asked the city to slow traffic on Franklin Street, where drivers barreled downhill toward the Marina, said Zieman.
Supervisor Matt Dorsey, who introduced the resolution, has said the city’s first year of automated speed enforcement shows that the technology works. The SFMTA reported nearly an 80 percent reduction in drivers traveling at least 10 miles per hour over the speed limit at camera locations after the program launched in March 2025. San Francisco was the first city to implement the pilot authorized under Assembly Bill 645.
Advertisement
The pilot, however, is capped by state law at 33 camera locations. Tuesday’s resolution asks California lawmakers to consider allowing more, prioritizing corridors on San Francisco’s High Injury Network, including Franklin Street.
Walk San Francisco, a pedestrian advocacy group which spent roughly eight years advocating for the state legislation that created the pilot, called the resolution an important first step toward broader expansion.
“Thirty-three cameras is nowhere near the number of cameras we need for people to realize that San Francisco is a safe-speed city,” said executive director Jodie Medeiros. “This tool is working. People are lowering their speeds.”
District 6, represented by Dorsey, currently has seven of the city’s 33 cameras, most of them in SoMa. The district also records the highest number of crashes involving injuries or fatalities in San Francisco, making it a focal point in the debate over expanding automated enforcement.
The resolution advanced unanimously from the Board of Supervisors’ Public Safety and Neighborhood Services Committee last week, where Dorsey said the cameras have made streets “feel safer” and argued the early results show “why we should have even more of this life-saving technology.”
Advertisement
Zieman, whose son’s death prompted traffic-calming improvements and eventually a speed camera near Sherman Elementary, said the issue is urgent.
“There are probably other Franklin streets out there,” he said. “I just hope they don’t wait for someone else before they expand the program. It’s too late for Andrew.”