The first thing to consider when deciding whether or not you should include a site map on your website is to talk about the two types of site maps that there are:
The purpose of this type of site map is to structure the data containing information about all the pages on your website in a format that is easily readable by computer programs. Its format has to be precise to be of any value. There are plenty of websites that will create these free for you as long as your website is not too large. If you are a customer of Net Quality we can add an XML site map to your website free of charge. This is useful for the search engines but would not be used by your website's visitors.
This is an page that is useful to both your visitors and the search engines. It is simply an ordinary web page that lists all of the pages of your website. If it is a large website then it structures those pages in an easily readable format so that it is quite easy to find the page that you are looking for.
In my opinion, an XML site map is something that all websites should have. For smaller websites that have been designed well it will probably make no difference. But it is a belt and braces approach that ensures the search engines know of all the pages that exist on your website. It is so easy to add that it may as well be included and just might help you.
I do not think an HTML site map is essential unless you have a large website of say, more than 10 pages. If some of your menu options have drop-down menus behind them then I would say it is absolutely essential.
So the short answer is that you should always have an XML site map and in many instances you should also have an HTML site map on your website.
XML site maps are useful in ensuring that the search engines know about all the pages on your website. They should already know this by following your link structure throughout the site, but this will back up this link structure by telling the search engines about all pages. It also means that new pages on your website that are buried deep in your content will likely be picked up earlier.
An HTML site map can have a very similar effect with the search engines. It is a page with links to all pages all summarised in one place and it increases the likelihood that all pages on your website will be indexed.