Unicode a été créé dans l'idée de rendre tous les caractères utilisés dans le monde disponibles dans un jeu de caractères commun. Il est utilisé dans Unix, Windows, macOS, Plan 9, Java, etc. Il inclut non seulement des caractères modernes, mais aussi des caractères anciens, historiques, des symboles mathématiques et des emojis.
L'interopérabilité avec les encodages précédant Unicode est également prise en compte, et lorsqu'une correspondance historique ou pratique est nécessaire, une zone de compatibilité est réservée. Certains caractères sont conçus pour revenir à leur forme d'origine lors d'une conversion aller-retour entre l'encodage d'origine et Unicode. Toutefois, bien que peu de problèmes surviennent dans la plage officielle JIS X 0208, des caractères peuvent être corrompus lorsque plusieurs jeux de caractères sont mélangés ou lorsqu'il existe des différences de correspondance, comme CP932 (état réel de Shift_JIS) et CP51932 ou eucJP-MS, variantes de EUC-JP.