There are lots of hotels in different Tehran areas. Generally speaking, Tehran areas are divided to the North, South, east and West of Tehran. The location of the areas would affect on some items such as the accommodation expense. Obviously Tehran hotels would be more expensive in comparison to other cities and the reason is clear: Tehran is the capital of Iran and the biggest and most crowded city in Iran.
The hotels in the north of Tehran would be mostly 4* and 5* hotels as it is a high class part of the city and besides some group of luxury passengers, the business men prefer to stay in these hotels due to their location which are mostly close to the international exhibition places and also the business markets. Among them is Esteghlal 5* hotel with two modern and old wings.
You can choose different hotels based on your budget and interest, but I recommend you choosing the hotels that are closer to your expected regions, so you will escape the heavy traffics and also save your money.
It is difficult to name the hotels as each person has its own interest and may or may not like the hotel that the other one suggests, but among the hotels that I have not heard any negative report are Firouzeh 1*, Parastoo 2*, Atlas 3*, Alborz 3*, Mashhad 3*, Iran Shahr 4*, Escan top 3*, Grand Ferdowsi 4*, Simorq 4*, Ramtin 4*, Kowsar 4*, Enghelab 4*, Grand Hotel 4*, Laleh 5*, and Homa 5*, Taj Mahal Hotel apartment, Espinas 5*,Esteghlal 5*, Evin 5*, hotels. There are too many other hotels that you may like to accommodate.
I advise you to do the reservations before your entrance if you want any especial hotel and especially in high seasons as the routes are too much in Tehran and you need to spend a lot of time to search for the expected hotel.