Citizens of Armenia, Azerbaijan, Bolivia, China, Egypt, Georgia, Hong Kong, Lebanon, Malaysia, Oman, Syria, Turkey, Iraq and Venezuela can enter Iran without a visa.
Here is a list of nationalities that don’t need visas to enter Iran.

Visa-Free CountriesDays
Armenia90
Oman90
Turkey90
Syria90
Georgia45
Lebanon30
Iraq30
Bolivia30
Hong Kong21
Macao21
China21
Egypt20
Venezuela15
Azerbaijan14
Kazakhstan14
Malaysia14

Also The visa-waiver program was reportedly approved recently for India, United Arab Emirates, Bahrain, Saudi Arabia, Qatar, Kuwait, Indonesia, Brunei, Japan, Singapore, Cambodia, Malaysia, Vietnam, Brazil, Peru, Cuba, Mexico, Bolivia, Venezuela, Bosnia and Herzegovina, Serbia, Croatia, Belarus, Lebanon, Uzbekistan, Kyrgyzstan, Tajikistan, Tunisia, Mauritania, Tanzania, Zimbabwe, Mauritius, and Seychelles.

Note: these nationalities can enter Iran every 6 months for 15 days and this is not extendable.

Visa-Free Countries Day
United Arab Emirates 15
Bahrain 15
Saudi Arabia 15
Qatar 15
Kuwait 15
Indonesia 15
Brunei 15
Japan 15
Singapore 15
Cambodia 15
Vietnam 15
Brazil 15
Peru 15
Cuba 15
Mexico 15
Bolivia 15
Bosnia and Herzegovina 15
Serbia 15
Croatia 15
Belarus 15
Uzbekistan 15
Kyrgyzstan 15
Tajikistan 15
Tunisia 15
Mauritania 15
Tanzania 15
Zimbabwe 15
Mauritius 15
Seychelles 15
Russia (tourist groups) 15
India 15


If your nationality was not among the above list, Please refer to this link and submit your application with us, we will get back to you with visa authorization letter. 

As you might know, Iran tourist visa process for Canadian/American and British passport holders are different.
Fore more information, please check Travel to Iran as an American, British or Canadian post.