Une page de code est un standard informatique qui vise à donner un numéro à chaque caractère d'une langue, ou de quelques langues proches. Elle constitue donc une méthode simple de pratiquer du Codage de caractères.
Le plus souvent elles associent un caractère ou symbole graphique à chacune des 256 valeurs que peuvent avoir un octet. L'ensemble des langues de la planète utilisent des milliers de caractères ou de symboles graphiques différents, un même octet représente donc un caractère/symbole différent, selon la page de code utilisée par le système informatique. Les pages de code introduisent donc des incompatibilités entre documents de langues différentes (exemple français-russe) ou de systèmes informatiques différents (exemple DOS-Windows).
Alors que l'ASCII a été inventé en 1961, les premières pages de code ont été définies et nommées ainsi par IBM autour de l'EBCDIC en 1964, la même année où l'union soviétique définissait les pages de code GOST. Par la suite les nouvelles pages de code ont été définies autour de la norme ASCII, sous-ensemble commun à nombre de pages de code. Ces dernières ont eu une meilleure notoriété car elles ont été répandues avec l'essor des "ordinateurs personnels", vers les années 1980-1995.
L'ASCII n'utilise que 7 bits et les ordinateurs modernes (depuis les années 1970) représentent chaque caractère avec au moins 8 bits (un octet), les codes 128 à 255 sont disponibles pour étendre l'ASCII. En conséquences, la signification de ces 128 valeurs correspondait à des caractères différents selon les systèmes. Lors d'échanges de fichier entre systèmes n'utilisant pas les mêmes page de code, les caractères non-ASCII (ou non anglais) pouvaient êtres perdus et les textes devenir incompréhensibles, sauf pour la langue anglaise qui est la seule à pouvoir s'écrire avec les 26 caractères de l'alphabet ASCII non accentués. L'échange de données s'effectuant souvent localement, les problèmes d'incompatibilité étaient minimes.
La démocratisation/massification de la mise en réseau international des ordinateurs vers les années 1995-2000 et l'augmentation des échanges internationaux de données textuelles, ont fait naître le besoin d'une unification du codage des caractères afin de dépasser les problématiques des pages de code. En 2010 dans les nouveaux logiciels, les pages de code ont tendance à tomber en désuétudes, au profit d'Unicode. Pour des raisons notamment techniques, culturelles, ou économiques, certains logiciels plus anciens continuent cependant à fonctionner avec une logique de pages de code.
Les pages de code les plus connues en Europe de l'Ouest sont :