Le copy drift désigne l’écart entre un texte visible par l’utilisateur et sa version approuvée, selon les surfaces et au fil du temps, sans source de vérité unique à laquelle se référer. La chaîne n’est ni absente ni cassée — c’est sa formulation qui a changé, sans décision en ce sens. La page marketing, la landing page et le produit décrivent alors légèrement différemment la même fonctionnalité. globalize.now est un système de gestion du copy natif au code, avec la localisation intégrée ; le drift est précisément le problème qu’il est conçu pour éviter.
Qu'est-ce que la dérive de copie ?
Le copy drift désigne l’écart entre un texte visible par l’utilisateur et sa version approuvée, selon les surfaces et au fil du temps, sans source de vérité unique à laquelle se référer.
Cette définition repose sur deux éléments. S’écarter de la version approuvée signifie que quelqu’un s’est mis d’accord, à un moment donné, sur ce que la chaîne devait dire. L’absence de source de vérité unique signifie qu’aucun artefact ne conserve encore cet accord. Il n’y a donc rien auquel comparer le texte de manière vérifiable — et personne ne peut indiquer quand le drift a commencé.
Le drift est normal, pas exceptionnel. Tout produit qui comporte plusieurs surfaces et plusieurs personnes chargées de l’éditer dérive, sauf si un mécanisme structurel l’en empêche.
Ce que le copy drift n’est pas
Trois problèmes sont souvent confondus, alors qu’ils nécessitent des corrections différentes. Se tromper de diagnostic envoie les équipes s’attaquer au mauvais problème.
Une chaîne codée en dur est un texte écrit directement dans un composant au lieu de figurer dans un catalogue. Elle est invisible pour vos outils et pour la traduction — mais sa formulation peut être parfaitement correcte. C’est un autre problème, traité dans pourquoi les outils de code IA ajoutent sans cesse des chaînes codées en dur.
Des fichiers de traduction désynchronisés sont des catalogues qui existent, mais qui ne sont plus alignés. La source est correcte ; les copies dérivées sont obsolètes.
Le copy drift n’est ni l’un ni l’autre. La chaîne peut avoir une clé, les fichiers peuvent être synchronisés, et le produit peut tout de même afficher « Commencer l’essai gratuit » à un endroit, « Essayer gratuitement » à un autre et « Démarrer » sur le bouton qui déclenche réellement l’action.
Les trois problèmes peuvent coexister. Ils ne se corrigent pas mutuellement.
Quelles sont les causes du copy drift?
Trois mécanismes, classés approximativement selon les dégâts qu’ils causent.
Des surfaces gérées par des personnes différentes et modifiées dans des outils différents. Le copy marketing vit dans un CMS. La landing page évolue le plus vite, car elle fait l’objet d’expérimentations constantes. Les chaînes produit vivent dans les composants. Chaque surface peut être cohérente en interne alors que le produit, dans son ensemble, ne l’est pas — et personne ne voit les trois d’un seul coup.
De petites modifications que personne ne considère comme des changements de copy. Quelqu’un raccourcit un libellé pour tenir dans un breakpoint mobile. Quelqu’un met un titre en casse phrase pour l’aligner sur l’écran voisin. Chaque modification est défendable isolément. Aucune ne passe par quoi que ce soit qui ressemble à une copy review, car pour les outils, ce n’est qu’une chaîne littérale dans un attribut JSX.
Les coding agents. Un agent chargé d’ajouter un état de chargement peut aussi réécrire un libellé présent dans le fichier — pour lui, nettoyer une chaîne ressemble exactement à nettoyer du code. La réponse de la communauté, jusqu’ici, consiste en un fichier de règles : AGENTS.md, .cursorrules, ou un bloc de règles de copy UI dans le prompt. C’est utile et cela mérite d’exister. Mais une convention n’est pas un contrôle. Elle réduit la fréquence à laquelle votre copy est réécrit ; elle ne vous indique pas quand cela s’est produit malgré tout.
Pourquoi rien ne détecte-t-il le copy drift?
Parce que rien ne casse.
Un libellé modifié compile. Il s’affiche. Le type checker voit une chaîne valide et le linter voit une syntaxe valide. Si un snapshot test échoue, la réaction habituelle consiste à mettre à jour le snapshot, ce qui enregistre le drift au lieu de le signaler. Aucun build ne passe au rouge, aucune alerte ne se déclenche, aucun dashboard ne vire à l’ambre.
Le drift n’est visible que pour un outil qui sait quelle était la formulation approuvée. La plupart des toolchains ne conservent aucune trace de ce type. Le premier détecteur est donc généralement une personne : une réponse du support qui cite des mots différents de ceux de l’interface, un client qui demande si « Espace de travail » et « Projet » désignent la même chose, ou un traducteur qui demande laquelle des trois formulations anglaises doit être traduite.
Quel est le coût réel du copy drift?
Pour être honnêtes : personne ne l’a mesuré, nous compris, et nous n’allons pas inventer un chiffre.
Cela mérite d’être dit clairement, car cette catégorie regorge de chiffres qui ne résistent pas à l’examen de leur source — statistiques d’enquête sur le branding et le chiffre d’affaires, coûts du support par ticket, pourcentages de tickets attribués à une documentation incohérente. Nous en avons écarté plusieurs en interne plutôt que de les reprendre. La mesure qui répondrait réellement à cette question — l’ampleur du drift dans les codebases réelles et ses effets en aval — n’a encore été réalisée par personne.
Ce que l’on peut décrire sans chiffre, c’est le mécanisme. Et ce mécanisme est cumulatif:
- Il reste invisible jusqu’à ce qu’il coûte cher. Rien ne fait remonter le drift tant qu’il est peu coûteux à corriger. Il devient visible quand quelqu’un a besoin que les mots soient identiques, généralement sous pression.
- Chaque surface nécessite une correction distincte. Modifier une formulation signifie retrouver chaque endroit où elle a été reprise, sans disposer de la liste de ces endroits.
- La localisation le multiplie. C’est là que le problème devient critique. Envoyez trois formulations d’une même idée en traduction et vous obtenez trois traductions, dans chaque langue. Une incohérence limitée à l’anglais se réplique alors dans toutes vos locales et donne à un locuteur natif l’impression de désigner trois fonctionnalités différentes.
C’est pourquoi la cohérence du copy et la localisation ne sont pas deux projets distincts. Si vous ne pouvez pas déterminer quelle formulation est approuvée, vous ne pouvez traduire correctement aucune d’entre elles — la source était ambiguë avant même d’arriver au traducteur. L’architecture qui corrige les deux problèmes est la même ; nous la présentons dans le copy produit natif au code.
Comment éviter le copy drift?
Donnez une seule source à vos formulations et rendez leurs modifications révisables. Tout le reste en découle.
Un seul catalogue. Chaque chaîne visible par l’utilisateur vit au même endroit, plutôt qu’en ligne dans les composants. Il existe enfin une référence commune pour assurer la cohérence.
Des clés, pas des littéraux. Les composants référencent une clé au lieu de répéter le texte. Une même formulation ne peut plus exister à deux endroits et diverger discrètement, puisqu’elle n’existe qu’une seule fois.
Les changements apparaissent dans le diff. Une modification de copy apparaît lors de la review comme n’importe quelle autre modification. C’est cette étape qui fait le vrai travail : la cohérence ne dépend plus de la mémoire de chacun du style guide ; elle devient visible au seul moment où quelqu’un regarde de manière fiable.
Les surfaces extérieures au produit — marketing, landing pages — constituent la moitié la plus difficile. Soyons clairs sur l’état actuel : standardiser le copy du marketing, des landing pages et du produit dans un système unique est l’objectif vers lequel nous construisons globalize.now, pas une fonctionnalité que vous pouvez activer aujourd’hui. Le mécanisme est le même que celui décrit plus haut, étendu au-delà des limites de l’app : si chaque surface référence la chaîne approuvée par sa clé au lieu de la répéter, modifier une formulation devient une seule décision plutôt que trois.
Les équipes qui livrent avec des outils de code IA rencontrent ce problème en premier. C’est pourquoi nous en parlons aux développeurs et aux personnes qui construisent avec des outils IA.
Un style guide suffit-il à corriger le copy drift?
Non — un style guide et une source de vérité ne résolvent pas le même problème, et les équipes achètent régulièrement le premier en espérant obtenir la seconde.
Un style guide décrit ce à quoi ressemble un bon copy : le ton, la casse, la terminologie, les cas où employer « supprimer » plutôt que « retirer ». Il est réellement utile, et chaque équipe devrait en avoir un. En revanche, il ne peut pas vous indiquer qu’une chaîne a changé. Il ne conserve pas la formulation précédente et n’est pas connecté au moment de la modification. Il ne peut donc être appliqué que par une personne qui regarde précisément le bon écran au bon moment.
Le drift est un problème d’état, pas de goût. La correction doit vivre là où l’état est stocké.
Le drift commence dès que les mêmes mots existent à deux endroits. globalize.now les centralise dans le repo que vous connectez et dérive chaque langue à partir de cette formulation unique.
globalize.now transforme le texte codé en dur de votre application en fichiers de traduction prêts à l'emploi et les maintient à jour au fur et à mesure de vos déploiements.
Essayer globalize.now gratuitement