Hi, so I wanted to review the 3 sites I have stayed and hopefully this can be of help for those thinking about visiting Bali.
Kuta - I actually stayed in the Legian area 15 min walking to the beach. This turned out to be very strategic because it was in a very protected neighborhood with local food for locals, very cheap, away from all the Kuta craziness but a 25 min walk to the center of Kuta.
The Kuta-Legian beach is not full of plastic as you see in the videos although I'm sure this happens a few times per year. There were few plastics on the first day, the next day I went surfing and I touched/stepped on many plastic bottles and bags. It was not as gross as you might imagine, I mean, it was plastic but the water quality didn't seem so bad. After that, I didn't see that much plastic.
Kuta beach is better for surfing than I imagined and that's why I enjoyed part of my stay.
It is true however, that it is super commercial, the only sign of Balinese culture is the food and the architecture on the wall on the beach as well as the altars outside of homes, the rest is just full of signs for tourist, lots of visual noise.
Kuta is good if: You are a teenager or college student looking to get wasted and nothing else. But I repeat, the surf is not bad. Also good to spend one night in Legian after a long flight.
Canggu: This was a big letdown. First of all, neither Kuta nor Canggu have great looking beaches. I thought surfing was going to be better in Canggu and it wasn't, the surf is super crowded, much more than Kuta.
But the biggest disappointment in Canggu is the ambience: it used to be a village but now it is a "trendy" place, it is more expensive than Kuta. It is full of hipster/vegan restaurants which are pricey. Also very commercial, less visual noise but still very touristy. Superficial vibe.
Only thing worth checking: Tanah Lot Temple
Canggu is good if you: Are looking for a "Laguna Beach" ambience. If you're a rich hipster/vegan recently graduated from college.
Ubud: This is a true gem. After being disapointed with the surf at Canggu, I sold my board, cancelled part of my stay in our airbnb in Canggu and came to Ubud.
Ubud feels like real Balinese, here, I finally get to see old structures/buildings. It is full of temples and jungle, the people are nicer, it has a more laid back ambiance, it has less party people. People who come here are 30+ year olds and seniors.
Prices in Ubud are the cheapest, restaurants in the main roads are not expensive but can be if compared to the little warungs in small roads such as the road that leads to Monkey Forest, there we found a Warung were I ate delicious chicken skewers with rice for 25k!, etc.
Also accomodation is the cheapest and nicest, we're staying in a place that looks like a 5 star hotel with pool and breakfast included for like $20 USD/night! Great value for money in Ubud.
Honestly, the fact that there isn't a beach here is no problem because like I mentioned, the beaches in Canggu and Kuta aren't great anyways.
Ubud is for: people who appreciate nature, quality, relax, beauty and don't care about partying or surf.
If any of my friends is coming to Bali I would recommend to stay in Ubud and go Island hopping, we are going to Komodo next and I have the feeling it will be great.