What is charset UTF-8 vs ISO-8859-1?
Still have a question, spotted an error, or have a better explanation or a source we should cite?
A character encoding tells an email client which character set to use when rendering your message. Think of it as the translation key between the bytes in your email and the letters you see on screen.
UTF-8 is the modern standard. It supports nearly every character in use worldwide (Latin, Cyrillic, Arabic, Chinese, emoji, math symbols, the whole set). If you're sending email in 2025, you should be using UTF-8. It's what Gmail, Outlook, and every major email client expect by default.
ISO-8859-1 (also called Latin-1) is an older standard that only covers Western European languages (English, French, German, Spanish, Italian). It can't handle accented characters outside that range, emoji, or most modern symbols. If you send "naïve" or "São Paulo" in ISO-8859-1, it might render as garbage characters in some inboxes.
Why does this matter? When your ESP or mail server sends an email, it includes a Content-Type header that declares the charset. If the declared charset doesn't match the actual characters in your email, you get broken rendering (those � replacement characters or weird question marks). Most ESPs default to UTF-8 now, but if you're building custom SMTP integrations or migrating from older systems, you might need to check.
Where to set it: In your ESP's settings (usually automatic), in your email template's HTML <meta charset="UTF-8"> tag, or in your SMTP library's configuration. If you're using Mailchimp, Brevo, Postmark, or any modern ESP, UTF-8 is already the default. You'd have to go out of your way to break it.
One edge case: if you're migrating from a legacy system that used ISO-8859-1, you might see old emails in your archive with broken characters. That's because they were encoded in ISO-8859-1 and stored that way. Switching to UTF-8 for new emails won't fix the old ones, but it'll prevent the problem going forward.
And if you're seeing garbled text in your sent emails, check your ESP's charset settings or your template's <meta> tag. Our source analyzer can parse the raw email and show you what charset was actually declared in the headers.
Contributors
Who worked on this answer
Every name links to their profile. Every company links to their site. Real people, real accountability.