I was wondering If I need by website hosted to be able to use a favicon? At the minute my site is just a file thats I use expression web to edit with.
This is a pretty old question but still...
Yes, your website MUST be hosted.
As a favicon is a file on the server (or somewhere outside of the server where your server fetches a file from), you need to have the website hosted for users to indirectly access the favicon and thus display it.
When your website ISN'T hosted it is NOT online thus users will not be able to read files from the server.
Here you see a screenshot of what I see when my website is NOT hosted.
You can see the favicon, because your webbrowser puts it in the cache (when you clean the cache it will not appear anymore).
Does this answer your question?