18 min read

Melbourne's Best Cheap Eats: Budget Food Guide Under $20

Curateria Team
14 July 2025
Melbourne's Best Cheap Eats: Budget Food Guide Under $20

Eating well in Melbourne doesn't require a trust fund. The city's multicultural food scene delivers exceptional meals at every price point, with some of the best bites coming from humble shopfronts, food trucks, and market stalls. This comprehensive guide reveals where to find satisfying, delicious meals for under $20, proving that Melbourne's best-kept culinary secrets often come with the smallest price tags.

Why Melbourne Excels at Budget Dining

Melbourne's cheap eats scene thrives thanks to several unique factors:

  1. **Immigrant Communities:** Authentic ethnic cuisines at homeland prices
  2. **Student Population:** Universities drive demand for affordable options
  3. **Market Culture:** Fresh ingredients keep costs down
  4. **Food Truck Innovation:** Low overheads mean better value
  5. **Competition:** Dense restaurant clusters keep prices competitive

The Under $20 Hall of Fame

Vietnamese Pho & Banh Mi

1. Pho Hung Vuong Saigon

Location: 128 Hopkins St, Footscray

Price Range: $12-$16

Must Try: Pho Dac Biet (Special Beef Pho) - $14

Hours: Daily 8am-9pm

This Footscray institution serves Melbourne's most authentic pho. The special beef pho comes loaded with rare beef, brisket, tendon, and tripe in a 12-hour bone broth. Free herbs and bean sprouts let you customize. Cash only, but there's an ATM next door.

Budget Tip: Small size ($12) is still enormous

2. Nhu Lan Bakery

Location: 116 Hopkins St, Footscray

Price Range: $6-$8

Must Try: Combination Pork Banh Mi - $7

Hours: Daily 6am-6pm

The queue outside tells the story – best banh mi in Melbourne. Their combination roll features pate, cold cuts, Vietnamese ham, pickled vegetables, and coriander on a crusty baguette. Made fresh throughout the day.

Budget Tip: Buy 3 for $20 and share

3. Pho Nom

Location: 16 Leeds St, Footscray

Price Range: $11-$15

Must Try: Bun Bo Hue (Spicy Beef Noodle Soup) - $13

Hours: Daily 9am-9pm

Beyond standard pho, this spot specializes in bun bo hue – a spicy lemongrass soup from Central Vietnam. More complex than pho with blood pudding and banana blossom. Their crispy spring rolls ($8) make perfect starter.

Budget Tip: Share one soup and spring rolls between two

Dumplings & Chinese

4. Shanghai Street Dumplings

Location: 10-16 Waratah Pl, Melbourne CBD

Price Range: $10-$18

Must Try: Pan-fried Pork Dumplings (15 pieces) - $11.80

Hours: Daily 11am-10pm

This Chinatown hole-in-the-wall produces handmade dumplings at factory prices. Watch dumpling makers through the window while waiting. The pan-fried pork dumplings arrive crispy-bottomed with juicy filling.

Budget Tip: Skip drinks, free tea provided

5. Dumplings Plus

Location: 236 Little Bourke St, Melbourne CBD

Price Range: $8-$15

Must Try: Xiao Long Bao (8 pieces) - $9.80

Hours: Daily 11am-9:30pm

Soup dumplings at reasonable prices in the heart of Chinatown. Their xiao long bao burst with hot broth. The hand-pulled noodles ($12) showcase kitchen skills. Quick turnover means fresh batches constantly.

Budget Tip: Lunch specials 11am-3pm save $2-3

6. Shandong Mama

Location: Mid City Arcade, 200 Bourke St, Melbourne CBD

Price Range: $10-$16

Must Try: Fish Dumplings in Chili Oil - $13.80

Hours: Mon-Sat 11am-8:30pm

Hidden in an arcade, this tiny shop makes everything from scratch. Their fish dumplings swim in house-made chili oil that's addictive. The beef noodle soup ($14) rivals restaurants charging twice as much.

Budget Tip: Take away saves 10%

Malaysian & Singaporean

7. Mamak

Location: 366 Lonsdale St, Melbourne CBD (multiple locations)

Price Range: $8-$18

Must Try: Roti Canai with Curry - $8.90

Hours: Daily 11:30am-2:30pm, 5:30pm-10pm

Melbourne's favorite Malaysian serves authentic street food. The roti canai arrives flaky and buttery with curry dipping sauces. Their nasi lemak ($14.90) delivers complete meal with sambal, peanuts, and fried chicken.

Budget Tip: Roti and teh tarik under $15

8. Laksa King

Location: 6-12 Pin Oak Cres, Flemington

Price Range: $12-$18

Must Try: Curry Laksa - $13.80

Hours: Tue-Sun 11:30am-3pm, 5:30pm-9:30pm

Worth the trek to Flemington for Melbourne's best laksa. The curry laksa balances coconut cream with spice, loaded with prawns, fish cakes, and noodles. Their char kway teow ($14.80) also deserves acclaim.

Budget Tip: Large serves two light eaters

9. PappaRich

Location: Multiple locations

Price Range: $12-$18

Must Try: Nasi Goreng Kampung - $15.90

Hours: Daily 11am-10pm

Chain restaurant delivering consistent Malaysian favorites. The village-style fried rice comes smoky from the wok with anchovies and water spinach. Their curry puffs ($7.90) make perfect snack.

Budget Tip: Lunch sets with drink $16.90

Middle Eastern & Turkish

10. Tahini Lebanese Diner

Location: 297 High St, Northcote

Price Range: $10-$18

Must Try: Mixed Plate - $16

Hours: Daily 11am-10pm

Modern Lebanese at old-school prices. The mixed plate includes falafel, hummus, tabouleh, pickles, and bread – enough for a filling meal. Their lamb shawarma wrap ($12) rivals anywhere in Beirut.

Budget Tip: Vegetarian options $2-3 cheaper

11. Mankoushe

Location: 325 Smith St, Fitzroy

Price Range: $8-$15

Must Try: Za'atar Mankoushe - $10

Hours: Tue-Sun 8am-4pm

Lebanese bakery specializing in mankoushe – flatbread with toppings. The za'atar version with olive oil and herbs makes perfect breakfast. Add cheese or meat for extra $3. Fresh from the oven all day.

Budget Tip: Plain za'atar most authentic and cheapest

12. Tiba's Lebanese Restaurant

Location: 504 Sydney Rd, Brunswick

Price Range: $12-$19

Must Try: Mixed Grill Plate - $19

Hours: Daily 11am-11pm

Family-run Brunswick institution serving generous portions. The mixed grill just squeaks under $20 with three meats, salad, hummus, and bread. Their vegetarian combo ($15) offers similar value.

Budget Tip: BYO wine saves significantly

Indian & Pakistani

13. Dosa Hut

Location: Multiple locations

Price Range: $10-$18

Must Try: Masala Dosa - $13.90

Hours: Daily 11:30am-10pm

South Indian specialist serving crispy dosas at reasonable prices. The masala dosa arrives over a foot long, filled with spiced potatoes. Comes with sambar and chutneys. Their unlimited thali ($18.90) offers incredible value.

Budget Tip: Plain dosa only $10.90

14. Flora Indian Restaurant

Location: 238 Swanston St, Melbourne CBD

Price Range: $12-$18

Must Try: Butter Chicken with Rice - $15.90

Hours: Daily 11:30am-11pm

North Indian favorites in the heart of the city. Their butter chicken strikes perfect balance of cream and spice. The lunch buffet ($16.90) lets you sample everything. Generous naan portions.

Budget Tip: Lunch specials with drink $13.90

15. Delhi Streets

Location: 4/225 Bourke St, Melbourne CBD

Price Range: $10-$16

Must Try: Chicken Tikka Roll - $12

Hours: Mon-Fri 11:30am-9pm, Sat 12pm-9pm

Indian street food in convenient CBD location. Their rolls wrap marinated meats in fresh naan with chutneys. The samosa chaat ($10) makes filling vegetarian option. Perfect for quick lunch.

Budget Tip: Combo deals save $2-3

Pizza & Italian

16. Pizza Farro

Location: 166 Lygon St, Brunswick East

Price Range: $14-$19

Must Try: Margherita - $17

Hours: Tue-Sun 5pm-10pm

Neapolitan pizza from wood-fired oven at neighborhood prices. The margherita showcases quality with San Marzano tomatoes and fior di latte. Their marinara ($15) proves simple can be spectacular.

Budget Tip: Takeaway 10% discount

17. Mr Natural Pizza

Location: 464 Lygon St, Brunswick East

Price Range: $5-$7 per slice

Must Try: Potato and Rosemary Slice - $6

Hours: Daily 11am-10pm

Roman-style pizza by the slice, perfect for budget eating. Thick, airy base supports creative toppings. The potato and rosemary sounds simple but delivers. Two slices make filling meal.

Budget Tip: End of day specials 2 for $10

18. Zero95 Pizza Bar

Location: 350 Smith St, Collingwood

Price Range: $14-$19

Must Try: Funghi Pizza - $18

Hours: Daily 12pm-10pm

Authentic Neapolitan at reasonable prices. The funghi with mixed mushrooms and truffle oil tastes far more expensive. Quick-fire oven means fast service. BYO wine Monday-Thursday.

Budget Tip: Lunch special any pizza $15

Japanese & Korean

19. Don Don

Location: Multiple locations

Price Range: $8-$15

Must Try: Karaage Chicken Don - $12.80

Hours: Daily 11am-9pm

Fast-casual Japanese rice bowls at student prices. The karaage chicken comes crispy over rice with mayo and teriyaki. Their curry dishes ($11.80) offer warming comfort. Quick service perfect for lunch.

Budget Tip: Extra rice free on request

20. Shujinko Ramen

Location: 225 Russell St, Melbourne CBD

Price Range: $13-$17

Must Try: Tonkotsu Ramen - $15

Hours: Daily 11:30am-10pm

Authentic Hakata-style ramen at reasonable prices. The tonkotsu features 24-hour pork bone broth with thin noodles. Add extra chashu for $3. Their black garlic version adds depth.

Budget Tip: Lunch sets with gyoza $18

21. Jang Gun

Location: 321 Little Lonsdale St, Melbourne CBD

Price Range: $12-$18

Must Try: Bibimbap - $15

Hours: Daily 11am-9pm

Korean comfort food in the CBD. The bibimbap arrives sizzling in stone bowl with vegetables, meat, and fried egg. Mix with gochujang for perfect bite. Their kimchi jjigae ($14) warms winter days.

Budget Tip: Vegetarian options $2 cheaper

Mexican & Latin American

22. Los Hermanos

Location: 87 Johnston St, Fitzroy

Price Range: $10-$18

Must Try: Fish Tacos (3) - $16

Hours: Mon-Thu 5pm-10pm, Fri-Sun 12pm-10pm

Family-run taqueria serving authentic Mexican. The fish tacos feature beer-battered fish with cabbage slaw and chipotle mayo. Their vegetarian tacos ($14) pack surprising flavor. Homemade salsas at every heat level.

Budget Tip: Taco Tuesday all tacos $5

23. Bay City Burrito

Location: Shop 3/211 La Trobe St, Melbourne CBD

Price Range: $12-$16

Must Try: Carne Asada Burrito - $14

Hours: Mon-Fri 11am-3pm, 5pm-8pm

Mission-style burritos at Melbourne prices. The carne asada comes packed with marinated beef, beans, rice, and fresh salsa. Their bowls ($13) offer lighter option. Generous portions mean leftovers.

Budget Tip: Lunch special with drink $16

24. Fonda Mexican

Location: Multiple locations

Price Range: $14-$19

Must Try: Chicken Tinga Tostadas - $17

Hours: Daily 11:30am-10pm

Modern Mexican with fresh approach. The tostadas balance crispy corn with pulled chicken and fresh toppings. Their fish ceviche ($16) showcases quality ingredients. Margaritas worth the splurge.

Budget Tip: Taco sets better value than individual

Greek & Mediterranean

25. Kalimera Souvlaki Art

Location: 450 Lonsdale St, Melbourne CBD

Price Range: $12-$16

Must Try: Lamb Souvlaki - $14

Hours: Mon-Fri 11am-9pm, Sat 11am-4pm

Authentic Greek souvlaki in the legal district. The lamb comes perfectly charred with tzatziki, tomato, onion, and chips wrapped in pita. Their vegetarian option ($12) features grilled halloumi.

Budget Tip: No chips saves $2

26. Stalactites

Location: 177 Lonsdale St, Melbourne CBD

Price Range: $15-$19

Must Try: Souvlaki Plate - $18

Hours: 24/7

Melbourne institution serving Greek comfort food around the clock. The souvlaki plate includes meat, salad, chips, and pita. Their mousaka ($19) feeds hungry souls. Perfect for late-night cravings.

Budget Tip: Souvlaki wrap cheaper than plate

27. The Lamb Shop

Location: 141 Lonsdale St, Dandenong

Price Range: $10-$15

Must Try: Mixed Meat Wrap - $12

Hours: Daily 10am-10pm

Hidden gem in Dandenong serving exceptional Middle Eastern wraps. The mixed meat combines lamb and chicken with garlic sauce. Their falafel wrap ($10) rivals any in Melbourne. Worth the train ride.

Budget Tip: Extra meat only $2

Burgers & American

28. Burger Boys

Location: 364 Bridge Rd, Richmond

Price Range: $10-$16

Must Try: Classic Burger - $12

Hours: Daily 11:30am-9:30pm

No-frills burger joint delivering quality basics. The classic features beef patty, lettuce, tomato, onion, pickles, and special sauce. Their chicken burger ($13) offers lighter option. Hand-cut chips worth extra $4.

Budget Tip: Burger only keeps it under $15

29. Huxtaburger

Location: Multiple locations

Price Range: $11-$16

Must Try: Denise Burger - $13.50

Hours: Daily 11am-10pm

Melbourne's homegrown burger chain maintains quality. The Denise adds crispy bacon and cheese to their standard burger. Their chips ($5) are perfectly salted. Multiple locations mean convenience.

Budget Tip: Kids burger same patty for $8

30. Brother Burger and The Marvellous Brew

Location: 413 Brunswick St, Fitzroy

Price Range: $13-$18

Must Try: Ron Swanson Burger - $17

Hours: Sun-Thu 12pm-10pm, Fri-Sat 12pm-11pm

American-style burgers with creative names. The Ron Swanson packs double beef, bacon, and cheese. Their vegetarian "Pam" burger ($15) surprises skeptics. Craft beer selection if budget allows.

Budget Tip: Lunch special burger and chips $15

Thai & Southeast Asian

31. Dodee Paidang

Location: Multiple locations

Price Range: $14-$19

Must Try: Pad See Ew - $16.50

Hours: Daily 11:30am-10pm

Consistent Thai favorites across Melbourne. The pad see ew balances sweet and smoky with fresh noodles. Their tom yum soup ($15) packs authentic heat. Modern fit-out belies reasonable prices.

Budget Tip: Lunch specials with jasmine tea $15

32. Thai City

Location: 124 Exhibition St, Melbourne CBD

Price Range: $12-$17

Must Try: Green Curry Chicken - $14.90

Hours: Mon-Fri 11:30am-3pm, 5pm-9:30pm

CBD institution serving office workers for decades. The green curry balances heat with coconut cream. Their pad thai ($13.90) delivers consistent satisfaction. Quick service for lunch rush.

Budget Tip: Extra rice only $3

33. Jinda Thai

Location: 42 Johnston St, Collingwood

Price Range: $13-$18

Must Try: Crying Tiger Beef - $17.90

Hours: Tue-Sun 5:30pm-10pm

Neighborhood gem with authentic flavors. The crying tiger features grilled beef with spicy dipping sauce. Their larb salads ($15.90) offer fresh contrast. BYO wine keeps dinner affordable.

Budget Tip: Share multiple dishes for variety

Food Courts & Markets

34. Queen Victoria Market Food Court

Location: Corner Elizabeth & Victoria St, Melbourne

Price Range: $8-$15

Must Try: Various stalls

Hours: Tue, Thu-Sun varying hours

Historic market offers dozens of budget options. The bratwurst stand ($12) serves authentic German sausages. Various Asian stalls offer meals under $15. Perfect for groups with different tastes.

Budget Tip: Market closing discounts after 2pm

35. Emporium Food Court

Location: Level 3, Emporium Melbourne

Price Range: $10-$18

Must Try: Wonderbao - $12

Hours: Daily 10am-7pm (Fri-Sat until 9pm)

Upscale food court with quality vendors. Wonderbao serves gua bao (Taiwanese pork buns) at reasonable prices. Multiple options keep everyone happy. Central location perfect for shopping breaks.

Budget Tip: Smaller portions available at most stalls

36. Melbourne Central Lion Hotel

Location: Level 2, Melbourne Central

Price Range: $12-$19

Must Try: Various options

Hours: Daily 11am-late

Historic pub converted to food hall. Multiple vendors offer everything from dumplings to burgers. The dumpling stall ($12-15) offers great value. Beer prices reasonable for CBD.

Budget Tip: Happy hour 4-6pm weekdays

Ethiopian & African

37. Saba's Ethiopian Restaurant

Location: 252 Nicholson St, Fitzroy

Price Range: $15-$19

Must Try: Vegetarian Combination - $17

Hours: Tue-Sun 5pm-10pm

Authentic Ethiopian with traditional coffee ceremony. The vegetarian combination includes five different dishes on injera bread. Their meat combination ($19) offers similar variety. Share one platter between two.

Budget Tip: BYO wine no corkage

38. African Taste

Location: 257 Racecourse Rd, Flemington

Price Range: $12-$18

Must Try: Chicken Suqaar - $16

Hours: Daily 10am-10pm

Somali cuisine at accessible prices. The chicken suqaar features diced chicken with vegetables and rice. Their goat curry ($18) showcases traditional spices. Portions generous enough to share.

Budget Tip: Lunch specials $2 cheaper

Desserts & Sweet Treats

39. Lune Croissanterie

Location: Multiple locations

Price Range: $6-$9

Must Try: Traditional Croissant - $6.50

Hours: Daily 7am until sold out

Melbourne's famous croissants worth the hype. The traditional showcases perfect lamination. Their twice-baked almond ($8.50) makes decadent treat. Arrive early to avoid disappointment.

Budget Tip: Day-old pastries half price (when available)

40. Pidapipo Gelateria

Location: 299 Lygon St, Carlton

Price Range: $5-$8

Must Try: Pistachio Gelato - $6.50

Hours: Daily 12pm-11pm

Authentic Italian gelato made daily. The pistachio uses real Sicilian nuts. Their seasonal flavors showcase local ingredients. Single scoop satisfies, but two flavors tempting.

Budget Tip: Kids cone $4.50

Money-Saving Strategies

Timing Your Meals

  • **Lunch Specials:** Most restaurants offer cheaper lunch menus
  • **Early Bird:** Some places discount 5-6pm
  • **Late Night:** After 9pm often has deals
  • **Weekday vs Weekend:** Tuesday-Thursday usually cheaper

Smart Ordering

  • **Share Plates:** Order less, share more
  • **Skip Drinks:** Water saves $3-5 per person
  • **BYO Nights:** Bring wine where allowed
  • **Takeaway:** Often 10% cheaper
  • **Sides as Mains:** Creative ordering saves money

Location Strategies

  • **Suburban Gems:** Cheaper than CBD
  • **Food Courts:** Quality improving dramatically
  • **Market Stalls:** Fresh and affordable
  • **University Areas:** Student prices
  • **Ethnic Neighborhoods:** Authentic and cheap

Apps & Deals

  • **EatClub:** Off-peak dining discounts
  • **Groupon:** Restaurant vouchers
  • **Entertainment Book:** Buy one get one free
  • **Happy Hours:** Check venue websites
  • **Loyalty Programs:** Frequent diner rewards

Neighborhood Cheap Eats Guides

CBD & Chinatown

Best For: Quick lunches, late-night options

Hidden Gems: Mid City Arcade, Hardware Lane

Avoid: Tourist trap restaurants

Average Meal: $12-15

Footscray

Best For: Vietnamese, African cuisine

Hidden Gems: Footscray Market food court

Avoid: Weekend parking hassles

Average Meal: $10-14

Brunswick

Best For: Middle Eastern, vegetarian

Hidden Gems: Sydney Road between Bell-Moreland

Avoid: Friday night crowds

Average Meal: $12-16

Richmond

Best For: Vietnamese, cheap Asian

Hidden Gems: Victoria Street side alleys

Avoid: Match day congestion

Average Meal: $11-15

Box Hill

Best For: Authentic Chinese, Korean

Hidden Gems: Box Hill Central food court

Avoid: Weekend parking

Average Meal: $10-15

Carlton

Best For: Italian, student eats

Hidden Gems: University cafeterias (public access)

Avoid: Tourist-focused Lygon Street

Average Meal: $13-17

Dietary Restrictions on a Budget

Vegetarian/Vegan

  • **Best Bets:** Indian, Middle Eastern, Ethiopian
  • **Hidden Gems:** Hare Krishna lunch ($5 donation)
  • **Avoid:** Limited options at meat-focused venues
  • **Average Savings:** $2-3 per meal

Gluten-Free

  • **Best Bets:** Vietnamese rice dishes, Indian curries
  • **Hidden Gems:** Dedicated GF bakeries
  • **Avoid:** Hidden wheat in sauces
  • **Extra Cost:** Usually $2-3 surcharge

Halal

  • **Best Bets:** Middle Eastern, Pakistani, Somali
  • **Hidden Gems:** University campus restaurants
  • **Certification:** Look for certificates displayed
  • **No Price Difference:** Same as regular options

The Ultimate Cheap Eats Crawl

CBD Lunch Circuit

  1. **Start:** Dumplings Plus (11:30am) - $10
  2. **Snack:** Bahn Mi Caphe (1pm) - $8
  3. **Dessert:** Brunetti (2pm) - $5

Total Cost: $23 for full day eating

Footscray Food Safari

  1. **Breakfast:** Nhu Lan Bakery (9am) - $7
  2. **Lunch:** Pho Hung Vuong (12pm) - $14
  3. **Snack:** African Taste (3pm) - $8

Total Cost: $29 for authentic world tour

Student Special Route

  1. **Breakfast:** Mr Natural Pizza slice (11am) - $6
  2. **Lunch:** Don Don (1pm) - $13
  3. **Dinner:** Laksa King (6pm) - $14

Total Cost: $33 for three filling meals

Seasonal Cheap Eats

Summer (December-February)

  • **Cold Noodles:** Vietnamese bun dishes
  • **Fresh Rolls:** Rice paper rolls everywhere
  • **Night Markets:** Queen Vic Wednesday evenings
  • **Picnic Options:** Takeaway for parks

Winter (June-August)

  • **Hot Pot:** All-you-can-eat options
  • **Pho Season:** Warming breakfast soup
  • **Laksa Weather:** Spicy coconut comfort
  • **Market Warmers:** Hot food at QVM

Quality Indicators

Green Flags

  • **Busy with Locals:** Especially at odd hours
  • **Simple Menu:** Focus indicates expertise
  • **Visible Kitchen:** Confidence in preparation
  • **Quick Turnover:** Fresh ingredients
  • **Cash Only:** Often indicates authenticity

Red Flags

  • **Tourist Photos:** Usually overpriced
  • **Huge Menus:** Jack of all trades
  • **Empty at Peak Times:** Locals know better
  • **Pushy Spruikers:** Confidence sells itself
  • **Dusty Condiments:** Low turnover

Future of Cheap Eats

Trends to Watch

  • **Ghost Kitchens:** Delivery-only concepts
  • **Food Halls:** Upscale court concepts
  • **Meal Kits:** Restaurant quality at home
  • **Dynamic Pricing:** App-based discounts
  • **Sustainability:** Zero-waste initiatives

Emerging Cuisines

  • **Regional Chinese:** Beyond Cantonese
  • **West African:** Nigerian and Ghanaian
  • **Central American:** Salvadoran and Guatemalan
  • **Regional Indian:** State-specific dishes
  • **Modern Filipino:** Beyond traditional

The Bottom Line

Melbourne's cheap eats scene proves that memorable meals don't require memorable credit card bills. From $7 banh mi in Footscray to $15 ramen in the CBD, the city offers exceptional value for budget-conscious food lovers. The key is knowing where to look, when to go, and what to order.

The best cheap eats often hide in suburban strips, require cash payment, and might challenge your pronunciation skills. But these small inconveniences lead to authentic flavors, generous portions, and prices that let you eat out regularly rather than occasionally.

Whether you're a student surviving on limited funds, a family feeding multiple mouths, or simply someone who appreciates value, Melbourne's under $20 dining scene ensures you'll never go hungry or bored. The only challenge? Choosing where to eat next.

Remember: the best meal isn't always the most expensive one – it's the one that leaves you satisfied, happy, and planning your next visit. In Melbourne's cheap eats landscape, that happens every day for under $20.

Buen provecho, good eating, and see you in the queue!

Don't Miss Our Latest Food Stories

Get weekly updates on Melbourne's best restaurants and hidden gems