Yes you can visit Bali without a visa.
But only if you are a citizen of one of the following 63 countries:
Algeria, Argentina, Australia, Austria, Bahrain, Belgium, Brazil, Bulgaria,(Besides these countries, it should also be noted that citizens from ASEAN countries do NOT need a visa to visit Bali of course)
Cambodia, Canada, China, Cyprus, the Czech Republic, Denmark, Egypt, Estonia,
Fiji, Finland, France, Germany, Greece, Hungary, Iceland, India, Iran, Ireland,
Italy, Japan, Kuwait, Laos, Latvia, Libya, Liechtenstein, Lithuania, Luxembourg,
Maldives, Malta, Mexico, Monaco, the Netherlands, New Zealand, Norway, Oman,
Panama, Poland, Portugal, Qatar, Romania, Russia, Saudi Arabia, Slovakia,
Slovenia, South Africa, South Korea, Spain, Surinam, Sweden, Switzerland, Taiwan
Territory, Tunisia, the United Arab Emirates, the United Kingdom, and the USA.
In the case of citizens of the 63 countries above, you will be asked to get a visa at the airport: either for a seven-day visit (at a cost of US$10) or a 30-day visit (at a cost of US$25).
These visas are NOT extendable, so if you want to stay longer in Bali it’s better to get a social or business visa from an Indonesian embassy overseas BEFORE you come to Bali.
Note also that your passport must be valid for at least 6 months from the date of entry. If it’s not, then you will be put on a return flight and your dream holiday in Bali will remain just that – a dream!