Heading to the Island of the Gods? You will need to be fed! Here’s our list of the 28 best restaurants in Bali…
Bali has a huge foodie scene! From vegan delights to the freshest seafood. With all the choice it’s hard to decide where to try.
Having spent a month on the island we have had our fair share of amazing meals in the most beautiful settings. Here is our extensive list of best places to eat in Bali.
We have arranged the list in locations, including Canggu, Seminyak, Uluwatu and Ubud.
Best restaurants in Bali: Canggu
Authentic warung experience
Name: Warung Bu Mi
Location: Pantai Batu Bolong Street No.52, Canggu,
Hours: 10AM – 10PM
Price: £

Warung Bu Mi offers a traditional buffet-style dining experience. A great way to get a taste for local cuisine at a reasonable price. We had two beers and two full plates of food for Rp126K (£7.20 / $9 US). Read “Warung Bu Mi” for our full review.
Tranquil dinner setting
Name: Dandelion Warung
Location: Pantai Batu Bolong Street No.10, Canggu
Hours: 12PM – 10PM
Price: £

A little eatery that transports you a world away from the busy roads outside. With gorgeous decor and tasty traditional food options to match. Dandelion is perfect for a romantic dinner for two. We had a starter, main and two drinks each for Rp320,250 (£18.40 / $23 US).
MORE: Scooters in Bali: Our first experience on two wheels
Seafood delight
Name: Moana
Location: Pantai Batu Bolong Street No.28, Canggu
Hours: 11AM – 11PM
Price: ££
Fresh juice, light bulb style Grilled prawns with rice
This quirky joint serves up an array of delicious seafood options. Along with fantastic fresh juices served in… yes, you’ve guessed it. Light bulbs! With Hawaiian style decor and fairy lights illuminating the dining area at night, Moana is the perfect escape. We ordered the Mahi Mahi and grilled prawns, a “lightbulb” juice and a beer for Rp242K (£13.90 / $17.30 US).
Breakfast boss
Name: Rise & Shine
Location: Jl. Padang Linjong No.71a, Canggu
Hours: 7AM – 3PM
Price: £

A little cafe with a huge impact. Rise and shine served up some of the best breakfast we had in the whole of Bali. Delivering on both presentation and flavour. We had a milkshake, coffee, smoothie bowl and toasted sandwich all for Rp165K (£9.50 / $11.80 US). Don’t miss this place if you are in the area!
Pizza Party
Name: Luigis Hot Pizza
Location: Jalan Batu Mejan, Canggu, Kuta Utara, Canggu
Hours: 5PM – 12AM
Price: ££
If you love pizza, and love to party the night away, say no more. Luigi’s Hot Pizza has got you covered. Delicious wood-fired pizzas are served up in this bouncing restaurant/bar/club. A definite alternative dining experience. Two pizzas a beer and a cocktail will set you back Rp365K (£21 / $26 US). Unless you go from 5PM – 7PM when pizzas and mixed drinks are Rp50K (£2.90 / $3.60 US). Vegan cheese is also available.
Good coffee + great WiFi = happy bloggers
Name: Machinery
Location: No, Jl. Pantai Batu Bolong No.35, Canggu
Hours: 7.30AM – 8PM
Price: £-££

This small but sweet cafe is the perfect place to grab some brunch while you catch up with your “to do” list. Two breakfasts a coffee and chai latte cost Rp180K (£10.30 / $12.90 US).
MORE: How to get from Surabaya to Mt. Bromo – A step by step guide
Proper Italian Pizza
Name: Pizza Fabbrica
Location: Jl. Batu Mejan, Canggu
Hours: 10AM – 12Am
Price: ££ – £££
Who doesn’t love pizza? Especially when it’s authentic and Italian. Pizza Fabbrica claim to be the second-best pizza on the island but was actually one of our best restaurants in Bali! Go for a sit-down dinner to take in the atmosphere, or order a delivery straight to your door. We ordered two pizzas, three drinks and a portion of chips and paid Rp339,250 (£19.50/ $24.20 US).
Best restaurants in Bali: Seminyak
Beachfront bites
Name: Warung Mina Batubelig
Location: Jl. Batu Belig No.14, Kerobokan Kelod, Kec. Kuta Utara, Kabupaten Badung
Hours: 8AM – 11PM
Price: £
Chicken satay skewers and rice
When we were staying at Grand Balisani Suites, we took a wander along the beachfront and stumbled across this restaurant. You can enjoy a candlelit dinner on the beachfront without spending much money. Two mains and two cocktails set us back Rp189,201 (£10.87/ $13.50 US).
Boho heaven
Name: La Laguna
Location: Jalan Pantai Kayu Putih Berawa, Tibubeneng, Kec. Kuta Utara, Kabupaten Badung
Hours: 9AM – 12AM
Price: £££+

The atmosphere and location of this restaurant is really something to behold. As soon as you walk in you will feel like you have entered the real boho heaven. If you want to come here we’d suggest booking a table in advance as it can be quite busy. We booked La Laguna for our anniversary and enjoyed a romantic evening with views over the ocean.
We ordered a starter to share, a cocktail and main course each, a large beer and two sides for Rp994,600 (£57.20/ $71 US).
MORE: Nusa Penida Island guide: What to expect
Vibrant vibes
Name: Sea Circus
Location: Jl. Kayu Aya No.22, Seminyak, Kuta, Kabupaten Badung
Hours: 7.30AM – 10PM
Price: ££ – £££
Sea Circus is a colourful, quirky restaurant in the heart of Seminyak. They serve up a variety of dishes from around the world including tacos, burgers and smoothie bowls to name a few.
I was buzzing to have a cider, which I had been missing since leaving Australia.
For two drinks and two burgers, we paid Rp319,000 (£18.40/ $22.80 US).
Plant Power
Name: Kynd Community
Location: Jalan Petitenget No.12 Kerobokan Kelod, Seminyak
Hours: 6AM – 5PM, 6PM – 10PM
Price: ££ – £££
breakfast toast and two refreshing drinks
Insta-famous Kynd has a huge menu which is 100% plant-based. As soon as you walk in you’re greeted with a great atmosphere. Everything about this place from the vibe to the decor, drinks to the food is 10/10. They serve sweet and savoury dishes (and you don’t have to be a vegan to love it).
We ordered the ‘Ghandi’ and ‘Leo’ gourmet toasts, an iced caramel latte and a ginger-grass fizz cooler which was so refreshing. We paid Rp245,000 (£14.10/ $17.50 US).
Mexican madness
Name: Motel Mexicola
Location: Jalan Kayu Jati No. 9X, Petitenget, Kerobokan Kelod, Kec. Kuta Utara, Kabupaten Badung
Hours: 11AM – 1AM
Price: £££
Neon lights inside Mexicola Mexican inspired tapas
The atmosphere you get in Mexicola is one of a kind. You need to experience this place yourself to truly understand what we mean. From the pink neon lights to the loud party music there is never a dull moment at Motel Mexicola. While munching on various Mexican-style tapas, we witnessed a flash-mob on stage, drinks on fire, congo lines and dancing on tables. Don’t expect a quiet meal here, but if you want some fun, get involved!
We would recommend booking if you want a table or be prepared to wait outside for a while. For a few plates to share, and a couple of drinks, we paid Rp669,713 (£38.60/ $47.80 US).
All-in-one
Name: Biku
Location: Alan Petitenget No.888 Seminyak, Kerobokan Kelod, Kec. Kuta Utara, Kabupaten Badung
Hours: 8AM – 11PM
Price: £-££
Chicken curry with all the extras
In contrast to Mexicola, Biku has a very chilled atmosphere as soon as you walk through the door. The relaxed book store style decor is extremely welcoming and makes for a romantic dinner setting. Biku is a restaurant, tea lounge, home-wares and book store all in one. Their speciality is tea – they have over 50 varieties to choose from which can be enjoyed from 11AM – 5.45PM daily.
We went for dinner on a Saturday night with a lovely addition of live jazz music. Biku serves a mixture of Indonesian and western food. We ordered a beef and chicken curry as well as two starters and deserts. Together with a beer and a cocktail, we paid Rp569,250 (£32.80 / $40.60 US).
Blissfull beach breakfast
Name: La Lucciola
Address: Pantai Petitenget, Jalan Kayu Aya, Kerobokan, Kuta Utara, Seminyak, Kuta, Kabupaten Badung
Hours: 9AM – 11PM
Price: ££-£££
With a stunning beachfront setting, this Italian restaurant offers the perfect environment for a relaxed meal. The service is second to none and the food we had was just as good.
It is open for dinner service too, however, we only experienced La Lucciola during breakfast time. We ordered two breakfasts and two hot drinks for Rp219,240 (£12.60 / $15.65 US).
Best restaurants in Bali: Uluwatu
Sunday sessions
Name: Single Fin
Location: Pantai Suluban, Jl. Labuan Sait, Pecatu, Uluwatu
Hours: 8AM – Late
Price: £££

Fancy a spectacular sunset mixed with a sundowner and some tunes? Single Fin in Uluwatu is where it’s at. If you’re after a sit-down meal, you will have to book a table in advance. We initially went for a drink but decided to grab some food while we were there. We paid Rp315,000 (£18.20/ $22.50 US) for dinner and two drinks.
Fresh fish BBQ
Name: Lucky Fish (Bingin Beach)
Location: Pecatu, South Kuta, Badung Regency
Hours: 7AM – 10PM
Price: £ – ££
Enjoying fresh fish on the beach Freshly caught fish selection
Lucky Fish in Uluwatu was hands down one of the best restaurants in Bali in our opinion. The perfect time to go is to watch the sun go down while enjoying a fresh fish bbq directly on the beach. We paid Rp372,000 (£21.45/ $26.60 US) for a couple of drinks, one whole snapper, a fillet of mahimahi and four prawns to share. Read our Lucky Fish review for our full experience.
Surfers paradise
Name: Drifter Surf Shop Cafe & Gallery
Location: Jl. Labuansait No.52, Pecatu, Kec. Kuta Sel., Kabupaten Badung
Hours: 7AM – 10PM
Price: ££ – £££

Drifters cafe is a great brunching spot (although they do open for dinner too). The best time to go would be between 11AM – 2PM as the full breakfast, lunch and dinner menu is available. We paid Rp285,200 (£16.45/ $20.40 US) for two breakfasts and two drinks. For more on our experience read our full ‘Drifters surf shop & cafe’ review.
Modest munch
Name: Suka Espresso
Location: Jl. Labuansait No.10, Pecatu, Kec. Kuta Sel., Kabupaten Badung
Hours: 7.30AM – 10PM
Price: £ – ££

A modest restaurant located close to the surf beaches on the west coast. Suka Espresso delivers some of the best food we had in Uluwatu. We ordered the Indonesian yellow curry, a steak and cheese sandwich and two drinks costing us Rp220,605 (£12.70 / $15.80 US).
MORE: Places to eat in Nusa Penida
Tropical breakfast vibes
Name: He’enalu
Location: Jl. Raya Uluwatu Pecatu No.70X, Pecatu, Kec. Kuta Sel., Kabupaten Badung
Hours: 8.30AM – 9.30PM
Price: £ – ££

A small Hawaiian inspired cafe, located just off the main road. Although not a huge venue, He’enalu’s menu has something for everyone.
I was recommended by the lovely staff to try their banana and peanut butter coffee. If you love all three of these as I do I could not recommend it enough! It was delicious!
As well as the coffee creation we ordered one of their signature dishes “loco moco”, a wrap and another drink, all for Rp189,200 (£10.95 / $13.50 US).
Welcoming warung
Name: WANA – Warung Cenana
Location: Jl Melasti 99 Labuan Sait, Pecatu, Pecatu, Kec. Kuta Sel., Kabupaten Badung
Hours: 11AM – 10.30PM
Price: ££

This pretty warung has a gorgeous outdoor-indoor setting with a large menu. The staff here are very attentive and helpful making for a fantastic dining experience. We would recommend sticking with Indonesian cuisine, as what we had was great! On arrival, we were gifted with a bowl of crisps and a shot of watermelon juice. We ordered a large beer, a frozen margarita cocktail and two main courses, and paid Rp307,625 (£17.80/ $22 US).
Best restaurants in Bali: Ubud
Sweet goodness
Name: Acai Queen
Location: Jl. Gootama No.02, Ubud, Kecamatan Ubud, Kabupaten Gianyar
Hours: 8AM – 10.30PM
Price: ££

Do you ever walk around on a hot day in the need for a refreshing energy boost? Acai queen is a plant-based place offering gorgeous food, Acai & Ice Cream Bowls, fresh smoothies and juices. We ordered two juices which were perfect to cool us off in the midday heat for Rp80,000 (£4.60/ $5.70 US).
Great organic grub
Name: Kafe
Location: Jl. Hanoman No.44B, Ubud, Kecamatan Ubud, Kabupaten Gianyar
Hours: 7.30AM – 11PM
Price: ££
Perfect potato wedges Cashew chicken and brown rice
Great little eatery in the heart of Ubud. Specialising in organic and healthy foods, Kafe has something for everyone with an extensive menu offering world foods. This two-floor wholesome cafe has a wonderful balcony upstairs where you can sit and watch the world go by.
We first came to Kafe when I was recovering from the dreaded Bali belly. Kafe was really accommodating and happy to tailor a meal of simply chicken and rice for me.
For two starters, two mains, a dessert and a couple of drinks we paid Rp395,010 (£22.80/ $28.20 US).
Authentic Balinese
Name: Biah Biah+
Location: Jl. Raya Pengosekan Ubud, Ubud, Kecamatan Ubud, Kabupaten Gianyar
Hours: 11AM – 11PM
Price: £
Special deals board Proper local cuisine
As proven by this list, Bali is home to plenty of international restaurant opportunities. We loved the idea behind Biah Biah+ as it provides authentic Balinese food at a great price. Their descriptive menu gives lots of information about ingredients you may not have heard of before, and they even sell Balinese rice wine. Their menu is host to plenty of different local options and offers tapas-style plates for as little as Rp7,000 (£0.40p/ $0.50c). We had a mixture of dishes,
I tried the rice wine (twice), and Matt had a beer or two.
We paid Rp160,600 (£9.30/ $11.50 US) and left feeling more than satisfied.
Geometric grooves
Name: Kismet
Location: Jl. Goutama Sel. No.27X, Ubud, Kecamatan Ubud, Kabupaten Gianyar
Hours: 9AM – 11PM
Price: ££ – £££

Kismet offers something completely unique, from it’s impressive design to its quirky details. From their logo to their lightbulbs, geometry plays a big part in their style. When you sit down, there’s a light switch hanging to the side of you. When you’re ready for service, you simply pull the switch and a red light illuminates the table. a member of staff will then come and assist you, turning the light off as they leave. The menu offers vegan and vegetarian fare. We paid Rp312,156 (£18 / $22.30 US) for a beer, a bottle of water, two small and one large plates.
Vegan heaven
Name: Zest
Location: Jalan Penestanan Kelod No.8, Penestanan, Kecamatan Ubud, Kabupaten Gianyar
Hours: 8AM – 11PM
Price: ££
Vegan banquet at Zest Papaya and Passion fruit smoothie
From the moment you walk into this tranquil cafe, you will feel like you’ve entered vegan heaven. The relaxed modern decor is surrounded by plants and overlooks the treetops below. Their plant-based menu is filled with beautiful vegan creations including their pizzas which we would 100% recommend. Zest’s vibe, food and drinks will make you never want to leave. For two papaya & passionfruit smoothies, zest nibbles and L’AUBERGINE pizza we paid Rp279,480 (£16.10/ $20 US)
Bali brasserie
Name: Kebun Bistro
Location: Jl. Hanoman No.44, Ubud, Kecamatan Ubud, Kabupaten Gianyar
Hours: 11AM – 11PM
Price: £££
Chicken breast with creamy mushrooms
Kebun Bistro quite literally takes you to the streets of Provence with their french-inspired menu and decor. The candle-lit atmosphere and delicious food are perfect for a romantic dinner. We had rosemary polenta chips, duck confit penne and grilled chicken breast with mushroom fricassée, potato gratinée & tarragon sauce. We paid Rp377,685 (£21.80/ $27 US) with a couple of drinks too.
Best burger joint
Name: Locavore to go
Location: Jl. Dewisita No.10, Banjar Padang, Tegal, Kabupaten Gianyar
Hours: 8:30AM – 6PM
Price: £££

Do you ever just crave a burger? We do! Locavore has got you covered with their delicious deli inspired menu. ‘To Go’ are attached to their sister restaurant which serves high-end modern cuisine. So you can guarantee their produce is fresh and of great quality.
I had the ‘burger a la ray’ which was cooked perfectly, had so many dimensions to it and was just what I was after. You have to order fries separately, but they are a decent portion when you do.
For a beer, burger, pastrami toasted sandwich and two portions of chips we paid Rp326,370 (£18.80/ $23.30 US).
Laidback lunch
Name: Atman Kafe
Location: Jl. Hanoman No.38, Ubud, Kecamatan Ubud, Kabupaten Gianya
Hours: 7AM – 10.30PM
Price: ££

This trendy cafe on the main street in Ubud doubles up as a shop selling beautiful trinkets. The atmosphere is very relaxed with some of the tables being set up so you can sit on the floor. We popped in for a quick lunch of chunky avo toast and a wrap with two drinks and paid Rp202,910 (£11.70/ $14.50 US).
Pin it!
MORE: Blue Corner Dive: Our first ever scuba experience diving in Nusa Penida – REVIEW
Yum. Yum. Yum. Your pictures look so beautiful and delicious!
Thanks so much! The food was delicious!