When I am logged-in, the Spanish special characters like ñ or accentuated vowels display well. When I log out, the web pages show those special chars as weird chars.So it is being in a session that makes the change. This will mean that all visitors (as they are not logged in) will see bad chars
Do you use a caching plugin? A lot of caching plugins only show cache when you are not logged in so that can be the reason that the characters are different.