The 5 best fish tacos in San Diego, ranked by a local
San Diego will argue about carne asada, argue about margaritas, and argue about whether North County beats South County — but ask for the best fish tacos in San Diego and the debate gets loud fast. Every neighborhood has a contender: a food truck parked on a corner in City Heights, a bar in Ocean Beach that’s been frying wahoo since before the internet, a fish market in Mission Hills that lets you pick the catch off the ice. We ate through the arguments so you don’t have to lose an afternoon to them. Here’s the ranking, neighborhood by neighborhood, with what to order, what to skip, and why each one earns its spot over the next.
One thing before the list: San Diego didn’t invent the fish taco, but it’s the reason the rest of the country knows what one is. Ralph Rubio ate his first one off a cart in San Felipe, Baja California, on a 1974 road trip, wrote the ingredient list down on a napkin, and carried it around for nearly a decade before opening a stand on Mission Bay Drive in Pacific Beach in 1983. That stand grew into a national chain. The chain is fine for an airport lunch. The five places below are what the chain was chasing.
What makes a fish taco a San Diego fish taco
Before the ranking, the ground rules, because they’re the reason this list looks the way it does. A San Diego fish taco starts with white fish — mahi, rockfish, wahoo, or whatever came off the boat that morning — either battered and fried Baja-style or grilled straight, no in-between. It goes on a corn tortilla, usually doubled so it doesn’t fall apart in your hand. Cabbage does the crunch, not lettuce, because lettuce wilts under sauce and cabbage doesn’t. And the sauce is a thinned, tangy white crema, not sour cream and not ranch, which is the detail that separates the real thing from a taco truck cosplaying as one.
That template is simple enough that almost anyone can execute a passable version. What separates the top of this list from the bottom of somebody else’s is freshness of the fish, the crispness of the batter or the char on the grill, and whether the place treats the taco as the whole point or as one more item on a twelve-page menu. Every spot below treats it as the whole point.
1. South Beach Bar & Grill, Ocean Beach — the fish taco that started the arguments

South Beach sits at the dead end of Newport Avenue, close enough to the water that you can hear the pier from the patio. It’s been open since 1992, which in restaurant years makes it practically bedrock, and it built its name on one thing: a mahi fish taco you can order grilled or fried, dressed with a white sauce the kitchen won’t hand out the recipe for. This is the taco every other place on this list gets compared to, which is exactly why it ranks first — it set the standard the rest are chasing rather than the other way around.
Order the mahi grilled if it’s your first time — it’s the version people drive across the bridge from Coronado for on a weeknight. Get it fried if you want the version that built the reputation in the first place, and order one of each if you can’t decide, because that’s what the regulars do. Go on a weekday around 2 p.m. if you want a table without a wait; the lot fills fast on weekends because OB doesn’t have much parking to begin with, so plan on circling Abbott Street or walking down from Voltaire instead of hunting for a spot right out front. Skip the extensive rest of the seafood menu on your first visit. You’re here for the taco, not the fried shrimp basket.
2. Oscar’s Mexican Seafood, Pacific Beach and Hillcrest — the reliable classic

Oscar’s runs a handful of counters around the city, and the Pacific Beach and Hillcrest locations are the ones locals actually argue about. This is the battered style, not the grilled one: flaky white fish fried in a light crust, folded into a corn tortilla with cabbage, onion, tomato, and cilantro. It’s the platonic version of a San Diego fish taco, and it’s consistent, which matters more than people give it credit for. It ranks just behind South Beach because it’s slightly less of an event and slightly more of a routine — but that routine is exactly why it’s the one people eat most often. You can order the same taco at three different Oscar’s on three different days and get the same result, which is harder to pull off than it sounds.
The move here is the Taco Especial if you’re hungry — smoked fish, shrimp, and melted cheese stacked into one taco — but the plain fish taco is still the one to judge the place by before you get fancy. It’s a walk-up counter operation, so expect to order at the window and grab your own table rather than wait for service. Go early on a Saturday if you want to beat the Pacific Beach brunch crowd, since the counter fills up fast once the beach traffic starts moving through.
3. Blue Water Seafood Market & Grill, Mission Hills — the grilled, market-fresh option

Blue Water is half fish market, half grill counter, and that changes the taco entirely. You pick your fish off the case — mahi, rockfish, yellowfin, wahoo, whatever came in that morning — and it goes straight onto the grill instead of into the fryer. No batter, no crunch, just the fish itself with cabbage, pico, cheddar, and a housemade white sauce. It ranks third instead of first or second only because it’s a different category of taco: less indulgent, more restrained, built for a different mood than the fried classics above it.
It’s the taco to order if you’ve already had the fried version twice this week and want something that tastes more like the ocean and less like the fryer. Mission Hills is a quieter neighborhood than PB or OB, so this is also the pick if you want to actually hear your own conversation over lunch. Ask what’s freshest that day instead of defaulting to mahi out of habit — the counter staff will tell you straight, and the answer changes with the boats, not the menu board.
The Buzz, weekly
Know what's buzzing before everyone else does
One email a week: what's blooming, what's opening, what's worth the drive, and new designs from the shop. No spam. Unsubscribe anytime.
4. Mariscos Mi Gusto Es, City Heights — the insider pick

This is the one that doesn’t show up on the tourist lists, and that’s exactly the point. Mariscos Mi Gusto Es is a truck parked on Home Ave near Chollas Creek, with a pop-up tent and folding tables for whoever wants to eat standing up. The fish gets battered and fried to order — not ahead of time, not held under a heat lamp — which is the difference between a good fish taco and a great one, and it’s the reason this truck ranks above plenty of sit-down restaurants with nicer dining rooms and slower kitchens.
The tortillas are simple and the toppings are fresh enough that you can tell someone cut the cabbage that morning, not the night before. This is a cash, casual, eat-outside operation, so come with the right expectations: no dining room, no menu binder, just a truck doing one thing extremely well and nothing else to distract from it. If you want the taco that Pacific Beach transplants tell their friends about once they’ve actually lived here a couple of years, this is it. And if you’re browsing The Buzz shop for something that captures that same locals-only energy, that’s the whole idea behind our Map collection — the California only the neighborhood actually knows about, not the version on a postcard rack.
5. Mitch’s Seafood, Point Loma — the dockside pick

Mitch’s sits right on the Point Loma Sportfishing docks, which means the seafood is about as close to the boat as a taco gets without you catching it yourself. The focus is sustainably caught, locally landed fish, served on a corn tortilla with cabbage, pico, radish, pickled red onion, and a sesame-dressed finish that’s noticeably different from the mayo-and-crema style everywhere else on this list. It ranks fifth not because it’s weaker than the rest but because it’s the most specific experience — you’re paying for the setting as much as the taco, and that’s a smaller category than the classic fried-and-dressed style everyone else is competing in.
It’s the taco for someone who wants the San Diego fishing-town version of the story, not just the beach-bar version. Eat outside if the weather allows it — the point of Mitch’s is the harbor, not the dining room. Boats come and go all afternoon at the dock, and half the fun of the meal is watching the same water your lunch came out of a few hours earlier.
Fish tacos in San Diego: frequently asked questions
Grilled or fried — which is the “real” San Diego style?
Both are real, but they come from different instincts. The Baja original that Ralph Rubio brought back from San Felipe was battered and fried, so that’s the historical answer and the one most locals default to. Grilled versions have earned their own following since, especially at market-style spots like Blue Water, and they’re the better order if you want something lighter. Neither one is the wrong answer — ordering fried gets you tradition, ordering grilled gets you the modern San Diego take on it.
What toppings should actually be on a San Diego fish taco?
Cabbage, not lettuce — it holds up to the sauce without wilting into mush. A white sauce, crema-based and sometimes cut with a little mayo and lime, instead of straight sour cream. Pico or plain diced tomato and onion. Cotija or a mild melting cheese is optional, not mandatory, and shouldn’t be the dominant flavor. If a place is putting shredded iceberg and ranch dressing on it, that’s not the San Diego style — that’s a mall food court wearing a sombrero.
Corn tortilla or flour?
Corn, almost always, and often doubled up if the fish is heavy or the sauce runs wet, so the tortilla doesn’t tear apart halfway through the taco. Flour shows up occasionally at more Americanized spots, but it’s the exception here, not the rule.
What’s the best way to build a fish-taco afternoon around this list?
Ocean Beach and Pacific Beach are about a fifteen-minute drive apart, so South Beach and Oscar’s fit into one relaxed afternoon without much trouble. Mission Hills and City Heights are a short detour inland if you’ve got a full day and a bigger appetite, and Point Loma pairs naturally with a walk around the sportfishing docks before or after you eat.

From the shop
La Jolla Sea Lion Badge T-Shirt | Psst, It's La Hoy-a
Price range: $24.99 through $26.99
Shop this designThe best fish taco in San Diego, if you only try one

If you’ve got one meal and one shot, make it South Beach Bar & Grill in Ocean Beach. It’s the taco with the longest track record, the one every other spot on this list gets measured against, and it’s a five-minute walk from the sand if you want to eat with your feet still a little wet. But don’t stop there — the real San Diego move is treating this like a list to work through over a few weekends, not a single stop to check off before you leave. That’s the whole idea behind The Buzz: what’s actually good, right now, told straight by someone who lives here.
Before you go
Get the next ranking in your inbox
We write one of these every day. The best of them, plus whatever California is texting about this week, lands in one short email.

3 Comments