GNU Emacs støtter mange tegnsett, deriblant UTF-8. Siden versjon 23.1 har programmet benyttet UTF-8, mens tidligere versjoner hadde et eget internt tegnsett og konverterte til unicode under lasting og lagring. Det interne tegnsettet til XEmacs kan ligne på det som ble brukt av GNU Emacs, men er likevel forskjellig.