Especially for the performance of your website, choosing the right host for your website alone can already make quite a difference. But also ease of maintenance, support and even SEO are factors to consider. Most important is to choose the right provider. A good one will even have proper support in their cheaper packages, and upgrading should not be an issue when the need arises.
Free hosting providers
Basically I would advise you to stay away from these. I know some webdesigners have good experiences, but basically there is no such thing as a free lunch: Sooner or later you will find that banners will be displayed next to your site, support is none-existent, upgrading to a higher package is expensive or moving away to another host is made difficult.
Requirements for your your hosting provider
When making your choice, check the following, apart from their rates of course:
- First of all, do they support Joomla, and do they know the specifics of the CMS? This counts for matters like file-permissions to fine-tuning their servers for optimal performance. Do they offer more advanced features for performance tuning?
- Is the server software up to date and compatible with the latest Joomla versions? Software to look at are Apache, IIS, PHP and MySQL: are they up to date. Since Joomla 3.5, especially check whether they support PHP 7, since this is so much faster!
- Check that the php.ini settings are compatible, or that you have the possibility to change them to your wishes.
- Do they offer advanced features like memcache, Varnish, SPDY, HTTP2 technology, Let's Encrypt SSL integration, etcetera. Even if you do net yet use these features, being able to upgrade easily is a big plus instead of then finding out your host does not support it and having to move.
- And of course, do they at least support the basic technical needs of Joomla?
Finally, check user reviews for the host you have in mind, especially if you expect specific wishes.
Shared or dedicated hosting
Now that you have chosen a hosting company, you should also look at which package you select. Especially if you want to aim high with your website, you may want to stay away from shared packages. When you are on a shared server, you share the same IP (and resources). Especially if you share the same IP as an insecure or malicious site, this could potentially be bad for your online reputation, and in some cases, even for your ranking.
This also depends on how close your host monitors their sites. For 80-90% of websites, being on a shared server should not really be an issue.
Web hosting companies
Happily there are quite a few companies that offer excellent hosting and comply to the requirements mentioned here. Personally, I only have experience with Siteground.com and they are pretty good, but there are many more that are probably as good.
Joomlaseo.com is hosted on Siteground.com, and I have good experiences with them. They focus on performance and security and know Joomla pretty well (as well as WordPress, Drupal, etc.), so I don't mind recommending them as a choice. I remember that when I moved my first site to them from my previous host, performance immediately went up without additional changes (faster speeds, higher grades in Pagespeed). Especially for performance they have some nice great options, like advanced caching that you can activate on top of the Joomla options, and free CDN.