Au début, les éditeurs WYSIWYG peuvent sembler être la solution parfaite : même sans connaissances en HTML ou programmation, des documents (Web) adaptés à la publication peuvent être générés sur ordinateur. Mais pour diverses raisons, certains utilisateurs préfèrent utiliser un éditeur comme Notepad++, pour lequel du code doit être directement entré. Cela leur donne un contrôle total sur ce à quoi ressemblera le résultat final. C’est également vrai en dehors du HTML : vous en avez certainement déjà fait l’expérience pénible sur Word. Le programme effectue un formatage que l’utilisateur ne peut influencer qu’en naviguant dans de nombreuses fenêtres et menus.
Ce n’est pas le cas lorsque l’on saisit du code HTML ou d’autres langages de balisage : les développeurs peuvent voir exactement ce qui doit arriver au texte pendant la compilation. Par conséquent, certains utilisateurs utilisent pour créer des textes à imprimer ou à convertir en PDF le langage macro TeX ou le progiciel LaTeX. Développé à l’origine pour les travaux scientifiques, TeX permet de respecter des spécifications précises de mise en forme et d’insérer facilement des formules mathématiques et scientifiques.
De plus, on note des problèmes spécifiques à Internet : même avec le WYSIWYG, le résultat rendu n’est pas toujours tel qu’il est affiché au préalable à l’écran. Différents systèmes et divers navigateurs produisent parfois un contenu différent, en plus des appareils mobiles qui ont encore des modes d’affichage spécifiques. C’est pourquoi la promesse « What you see is what you get » ne tient pas forcément sa promesse, du moins pour les sites Internet. Les concepteurs Web testent donc généralement leurs pages sur différents systèmes avant de mettre leur travail en ligne.
Les éditeurs WYSIWYG créent du code HTML en arrière-plan. Cependant, ils ne garantissent pas que le code ainsi créé soit optimal. Par le passé, les concepteurs Web ont critiqué à maintes reprises ces programmes pour avoir produit des codes source inutilement gonflés ou qui comportent des erreurs. Ces derniers peuvent entraîner de longs temps de charge ou de faux messages d’erreur.