Le taux de substitution de polices lors d'un import typique du web vers Figma

La plupart des pages gardent leurs polices intactes à l'import. Voici le vrai taux de substitution, et quelles polices auto hébergées sont remplacées par Inter.

DATASETDEVELOPERPublié le

Vous importez une page dans Figma et un message indique que trois polices ont été substituées. Est ce normal, ou quelque chose s'est il mal passé? Selon les données 2025 sur les polices web, la réponse honnête dépend presque entièrement d'une seule chose: si les polices de la page viennent de Google Fonts ou d'un fichier auto hébergé. Un ensemble plus restreint de détails de format et de plateforme décide du reste.

Google Fonts représente environ la moitié de l'usage total des polices sur le web, et Figma peut récupérer n'importe quelle Google Font à la demande, donc ces calques de texte s'importent généralement avec la famille intacte. La substitution se concentre plutôt sur un ensemble plus restreint: des polices auto hébergées, non Google, des polices variables auxquelles manque un style, et des polices d'icônes. Voici: les chiffres, pourquoi Google Fonts survit presque toujours à un import, quelles polices sont réellement remplacées, et comment lire un rapport d'import une fois que cela arrive.

Les chiffres derrière la substitution de polices

L'ensemble de données public le plus clair sur ce sujet vient du Web Almanac 2025 de HTTP Archive, qui recense les requêtes de polices et le CSS de millions de pages actives. Selon ce relevé, 88% des pages utilisent au moins une police web, un peu plus que les 87% de 2024. Les 12% restants ne dépendent que des polices système, où la substitution ne se pose jamais. Il n'y a tout simplement aucune police personnalisée à résoudre.

Parmi les pages qui utilisent des polices web, la répartition de l'hébergement compte plus que le chiffre global. 72% auto hébergent au moins un fichier de police, 36% auto hébergent exclusivement sans aucun service tiers, et 36% supplémentaires mélangent auto hébergement et Google Fonts. Seulement 13% dépendent exclusivement de Google Fonts. Dans l'ensemble, Google Fonts apparaît sur 54% des pages de bureau et 47% des pages mobiles, seul ou avec une autre source.

Pour le dire simplement: les 36% de pages en auto hébergement exclusif, plus la moitié auto hébergée du groupe mixte de 36%, c'est à peu près d'où viennent les substitutions d'un import typique. La part de Google Fonts, elle, n'est presque jamais un problème.

C'est une évolution récente, pas une constante. Les polices web personnalisées étaient à un chiffre très bas quand HTTP Archive a commencé à les suivre en 2011, ont dépassé la moitié des sites vers 2015, et ont atteint environ 75% d'adoption vers 2020 avant de grimper aux 87% et 88% observés en 2024 et 2025. Plus l'adoption progressait, plus les chances augmentaient que n'importe quelle page importée contienne au moins une police que Figma doit résoudre, d'une façon ou d'une autre. Il y a dix ans, la question de la substitution se posait rarement. Aujourd'hui, elle concerne presque tous les imports.

Pourquoi Google Fonts n'est presque jamais substitué

La propre fenêtre de police manquante de Figma liste toujours Google Fonts comme disponible, car Figma les récupère à la demande plutôt que de dépendre de ce qui est déjà installé sur votre machine. Une police qui se résout en Google Font n'a besoin ni d'installation locale, ni de licence, ni d'aucune étape supplémentaire. Elle fonctionne, tout simplement.

Une page construite avec Roboto, Open Sans ou Poppins, les trois polices de texte nommées les plus courantes dans le relevé de 2025 après la police d'icônes Font Awesome, s'importe généralement avec la famille intacte et sans entrée dans le rapport de substitution. Importez une page construite avec la typographie par défaut d'un framework populaire, et il y a de bonnes chances que vous ne voyiez aucune substitution de police.

Prenez une page d'atterrissage typique: un titre en Poppins, le corps de texte en Open Sans, et quelques icônes Font Awesome dans le pied de page. Deux de ces trois familles se résolvent contre Google Fonts sans aucune installation locale, donc le rapport d'import ne signalera probablement que la police d'icônes, si même cela. Remplacez le corps de texte par une police payante et auto hébergée d'une fonderie, et le tableau change complètement. L'import dépend désormais de si vous avez cette famille exacte installée localement, dans un format que Figma peut lire.

Le groupe auto hébergé qui déclenche Inter

Les polices auto hébergées racontent une autre histoire, et deux détails techniques expliquent l'essentiel du pourquoi.

L'écart de format: Figma lit le TTF et l'OTF, pas le WOFF2 que la plupart des sites utilisent

65% des requêtes de polices sur le web sont servies en WOFF2, avec 16% en WOFF 1.0 et 7% en TrueType. Mais l'installation locale de polices de Figma ne lit que les fichiers TTF et OTF. Un fichier WOFF2 auto hébergé, même entièrement sous licence, est substitué à l'import sauf si cette même famille est aussi installée sur votre machine dans un format que Figma peut voir. Avoir le bon nom de police ne suffit pas. Il vous faut le bon format de fichier, installé localement, avant que Figma n'ouvre la page.

Les polices variables peuvent ne substituer qu'un seul style

39,4% des pages de bureau et 41,3% des pages mobiles utilisent désormais des polices variables, contre environ un tiers en 2024. Les polices variables compliquent le tableau tout ou rien. Si un fichier variable n'a pas un seul style statique, souvent le gras, Figma conserve le fichier statique d'origine pour ce style et substitue le reste. Le résultat est une seule famille qui s'importe en partie correcte et en partie substituée, ce qui paraît étrange dans le rapport la première fois qu'on le voit.

Deux échecs de substitution qui ne se ressemblent pas

Toute substitution ne se voit pas de la même façon une fois sur la page. Remplacer le corps de texte par Inter change les formes de lettres mais garde les mots lisibles. Remplacer une police d'icônes, non. Font Awesome, qui apparaît sur environ 9% des pages, fait correspondre des caractères individuels à des pictogrammes plutôt qu'à des lettres, donc une substitution transforme une icône de navigation ou le glyphe d'un lien social en une forme erronée ou une case vide. Des caractères étranges là où il y avait des icônes? Vérifiez le rapport de substitution pour une police d'icônes avant de supposer que l'import a cassé quelque chose.

Il existe aussi un écart de plateforme à connaître si vous travaillez dans une équipe de design. Les utilisateurs de ChromeOS et de Linux ne peuvent utiliser dans Figma que Google Fonts ainsi que SF Pro et SF Compact d'Apple; ils ne peuvent pas installer de polices locales arbitraires comme peuvent le faire les utilisateurs Mac et Windows. Une police personnalisée auto hébergée sur une page sera substituée pour chaque coéquipier sur ChromeOS ou Linux, quoi que quelqu'un d'autre ait installé sur sa propre machine.

Lire le rapport d'import pour trouver chaque changement

UnHTML résout d'abord la police de chaque nœud de texte par rapport à vos polices installées et à Google Fonts, et ne revient à Inter que si aucune des deux ne correspond. Chaque substitution est listée dans le rapport d'import, ce qui permet de trouver exactement quels calques ont changé sans réexaminer toute la page à l'œil. La résolution se fait entièrement sur votre machine. Rien du contenu de la page n'est envoyé où que ce soit pour prendre cette décision.

Une façon pratique de parcourir un rapport: repérer d'abord les familles substituées, puis décider pour chacune s'il vaut la peine d'installer la vraie police localement en TTF ou OTF et de réimporter, ou d'accepter Inter parce que la maquette est rapide plutôt qu'une reconstitution pixel par pixel.

Ce que cela signifie avant de faire confiance à la typographie d'un import

Pour la plupart des pages, la substitution de polices est l'exception, pas la règle. Google Fonts couvre près de la moitié de tout l'usage de polices sur le web et n'est presque jamais substitué. Les pages qui connaissent des substitutions se concentrent sur les polices personnalisées auto hébergées, les écarts de format entre le WOFF2 et les fichiers TTF ou OTF que Figma peut installer, les polices variables auxquelles manque un seul style, et les polices d'icônes dont l'échec est plus visible qu'un simple changement de police.

Avant de faire confiance à la typographie d'une page importée, ouvrez le rapport. Si une famille que vous attendiez manque, c'est le signal qu'il faut l'installer localement et relancer l'import plutôt que de deviner. UnHTML affiche ce rapport automatiquement à chaque import, en cohérence avec sa propre politique de confidentialité qui consiste à tout résoudre localement, ce qui reste le moyen le plus rapide de distinguer un import propre de celui qui a besoin d'un second passage.