Because your content may be stored as one charset type and your web page is telling it to display as a different charset type.
Google reported that in 2008, UTF-8 (labelled "Unicode") became the most common encoding for HTML files. By 2018, most languages have use of UTF-8 up in the low to high 90%, ... Exceptions include mainly Asian languages with Chinese at 88.0%, Japanese at 86.7% (while Mongolian is at 99.7%) and Breton at 70%.
International Components for Unicode (UTF-8) has historically used UTF-16, and still does only for Java; while for C/C++ UTF-8 is now supported as the "Default Charset", including the correct handling of "illegal UTF-8".
source:
https://en.wikipedia.org/wiki/UTF-8