Hayes Valley is the rare San Francisco neighborhood where the dinner question has a hard deadline attached. The War Memorial Opera House sits at 301 Van Ness Avenue, most evening curtains go up at 7:30, and the restaurants worth eating at are clustered in the four blocks northwest of it. That proximity is the whole appeal — and also the trap. The good rooms here keep short, specific hours, several are dark on the exact nights people try to book them, and the difference between making your seat and missing the first act usually comes down to which door you walked through at 5:45.
Text Karpo the curtain time on your ticket and it will work backwards — which of these rooms is actually open that night, which one can turn a table in seventy minutes, and which one to skip until you have a free evening.
The geography that makes this work
Everything below is within roughly a five-minute walk of the opera house, which sounds obvious until you try the same trick in another city. Hayes Street between Franklin and Laguna is the spine, Gough Street runs perpendicular through it, and Oak Street picks up the southern edge. You can leave a table at 7:10 and be in your seat with time to spare. What varies is not distance but pace: a counter-service Greek plate and a multi-course tasting menu are both technically 'nearby,' and only one of them is compatible with a 7:30 downbeat.
Rich Table: book the five o'clock and nothing else
Rich Table at 199 Gough Street is the neighborhood's most decorated dining room and the one people most often get wrong on an opera night. It does not open until 5:00 p.m., seven days a week, closing at 10:00. That single detail dictates everything: if you want to eat here properly before a 7:30 curtain, the 5:00 seating is not the early option, it is the only option. Take it and you get a genuinely unhurried two hours. Take a 6:15 and you will spend the back half of the meal watching the clock, because this is a kitchen that paces a menu rather than racing it. The sensible alternative is to book Rich Table for a night you are not seeing anything at all.

Souvla: the one that is open when nothing else is
Souvla at 517 Hayes Street runs 11:00 a.m. to 10:00 p.m., every single day. Among the rooms on this list that is the widest window by a wide margin, and it makes Souvla the answer to two separate problems. The first is the Monday performance, when most of this neighborhood's better kitchens are dark. The second is the post-show dinner — a 10:00 p.m. close means you can walk out of a three-hour opera and still get fed, which is not a given in this part of town. The format is counter-service Greek: you order spit-roasted lamb, pork, chicken or a salad, and it arrives fast. Nobody will rush you and nobody needs to.
Absinthe Brasserie & Bar: the classic, with dark days to plan around
Absinthe has been at 398 Hayes Street since 1998, which makes it the closest thing this stretch has to an institution, and its brasserie format — long bar, banquettes, a menu that does not demand a two-hour commitment — is well suited to a night with a deadline. The catch is the calendar. Dinner runs Wednesday through Saturday from 5:00 to 10:00 p.m. and Sunday from 5:00 to 9:00. Monday and Tuesday it does not serve dinner at all. There is also a lunch service Wednesday through Friday from 11:30 to 3:00 and weekend brunch from 11:00 to 3:00, which is the underused move for a Sunday matinee rather than an evening show.
RT Rotisserie: for the night you have forty-five minutes
RT Rotisserie sits at 101 Oak Street and is the fast-casual sibling of Rich Table, opened by the same team in 2017. That lineage is the entire reason it belongs on this list: it is counter service with a serious kitchen behind it, open daily 11:00 a.m. to 9:00 p.m. When you have misjudged the evening and have three quarters of an hour, this is the correct answer — rotisserie chicken or cauliflower, a couple of sides, out the door without ceremony. It is also the only place here that comfortably absorbs a group that has not booked anything.
Robin: excellent, and wrong for tonight
Robin at 620 Gough Street is an omakase counter that has been running since 2017, open Wednesday through Sunday, 5:00 to 9:30 p.m., with the experience landing somewhere between $119 and $219 per person depending on how far you let it run. It is worth every bit of that and it is a poor fit for an opera night. A tasting counter that opens at 5:00 and paces itself over multiple courses cannot reliably deliver you to a 7:30 curtain, and hurrying it defeats the point. File Robin under the evening you are in the neighborhood for its own sake — then let it take as long as it takes.
Practical notes
Sort by clock, not by ranking. For a 7:30 curtain: Rich Table only at its 5:00 seating; Absinthe any night Wednesday through Sunday; Souvla or RT Rotisserie when you are inside an hour. On Mondays and Tuesdays, Absinthe and Robin are both out, which leaves Souvla, RT Rotisserie and Rich Table as the working set. After the show, Souvla's 10:00 p.m. close is the widest door on the block. Walking times from 301 Van Ness are short enough that you can decide late, but reservations at Rich Table and Robin are not walk-in propositions on a performance night. Hours shift around holidays and dark weeks, so confirm the specific date before you build the evening around it.
Tags: #HayesValley #SanFrancisco #SFRestaurants #SFOpera #WarMemorialOperaHouse #PreTheaterDining #SFEats #BayAreaFood #NeighborhoodGuide #SFDining #HayesStreet #DinnerBeforeTheShow #SFFoodie #WhereToEatSF #WeekendInSF
All trademarks are the property of their respective owners.
Ask Karpo first
Want to know which of these rooms is actually serving on your performance date, how early to sit down, and where to go if the table falls through? Ask Karpo for tonight's Hayes Valley hours, a reservation plan built around your curtain time, and a live walking route from the restaurant to 301 Van Ness before you head out.



