Evaluer la délivrabilité de vos mails automatiques

Ismaël Boukhars, chef de projet web & mobile chez Capsens
Ismaël Boukhars18 févr. 2021
Linkedin logo

Les emails transactionnels sont un moyen de renforcer la relation entre votre plateforme et vos utilisateurs. Ils peuvent même s’avérer critiques dans le bon fonctionnement de votre plateforme. Prenons le simple exemple d’un email de confirmation de création de compte ; si l’utilisateur ne le reçoit pas alors il ne sera pas capable de compléter son inscription.

Cet article tente de dresser une liste des bonnes pratiques à suivre afin de mettre toutes les chances de votre côté pour que vos mails automatiques ou marketing n’atterrissent pas dans les spams.
Si vous êtes un développeur web, un chef de projet ou simplement à la recherche d’information sur comment évaluer la délivrabilité d’un mail alors cet article est fait pour vous !



Quelques bonnes pratiques

Avant de procéder à l’audit de la qualité de vos emails, il y a quelques éléments indispensables à vérifier manuellement. Surtout si vous constatez que vos mails n’atteignent pas leur destination.

  • Vérifiez le format des adresses mails

    Les typos arrivent régulièrement dans le monde dactylographié. C’est donc également le cas pour vos adresses emails. Vous pouvez vous prémunir d’une part de ces erreurs en validant le format de l’adresse mail. La plupart des navigateurs proposent une validation front-end du format si vous spécifiez que le champ est de type email. Bien entendu un retraitement côté serveur est également conseillé.

  • Assurez-vous que vous avez défini un expéditeur valide
    Cette erreur arrive fréquemment lorsque vous utilisez un framework de développement backend tel que Rails ou Jango. Ils sont généralement fournis avec une adresse mail d’expédition fictive telle que “change-me-in-the-config-file@fakeemail.com”. Cela fonctionnera en environnement de sandbox du moment que les mails ne sont pas réellement envoyés. Ce ne sera pas le cas en production.
    Tips pour RubyOnRails : Si vous utilisez la gem Devise, prenez le temps de vérifier l’expéditeur défini dans son initializer.

  • Utilisez un ReplyTo du même domaine
    Si vous fournissez une adresse de réponse (reply-to), assurez-vous qu’elle appartienne au même domaine.
    Prenons l’exemple d’un email envoyé depuis “domaine.com” avec une adresse de réponse “contact@unautredomaine.com”, il y a de grandes chances qu’il soit considéré comme spam ou a minima qu’il soit livré avec un message d’avertissement. Ce cas peut-être vraiment bloquant, notamment pour les adresses Gmail.

  • Différenciez vos mails transactionnels et marketing
    Statistiquement, les listes de mails marketing auront une proportion plus élevée de déclaration en spams et de hard bounce(email inexistant). Afin d’éviter que les mails marketing qui ne sont pas critiques puissent impacter négativement votre réputation et donc la délivrabilité de vos mails transactionnels, utilisez des adresses d’expedition et IP différentes.

  • Assurez vous que vos mails ne contiennent pas de JavaScript
    Le JavaScript ouvre la porte à de nombreuses failles de sécurité, par conséquent, la plupart des messageries bloquent tous mails qui en contiendraient. Donc abstenez-vous.

Maintenant que nous avons vu les bonnes pratiques à vérifier, nous pouvons aborder l’évaluation de la délivrabilité d’un mail automatique.


Évaluer l’indice de délivrabilité d’un email

A chaque fois qu’il réceptionne un email, un client de messagerie (Gmail, Outlook, Yahoo …) va évaluer cet email et lui assigner un indice spam-score en se basant sur une liste de critères définies. Plus cette note sera haute, plus il considérera que l’email est un spam.

Il existe un grand nombre d’outils permettant de calculer le spam score d’un email. En tant que chef de projet dans une agence de développement web je suis régulièrement amené à avoir besoin de calculer ce score pour m’assurer que les mails automatiques d’un site web ne finiront pas dans les spams. Pour cela, j’utilise Mail Tester qui rempli le besoin simple de me calculer l’indice de délivrabilité d’un email en se basant sur les critères les plus importants.

Note : la note fournie par Mail Tester est l’indice de délivrabilité, elle est donc inversement proportionnelle au spam score évoqué ci-dessus.

1 a-ImuZicOtjVnqDTGnsgQ

La page d’accueil de mail-tester.com

Mail Tester est très simple à utiliser. Lorsque vous arrivez sur sa page d’accueil, il vous fournit directement une adresse email aléatoire. Il suffit alors d’y envoyer l’email automatique que vous souhaitez évaluer.
Dans la plupart des plateformes web correctement construites, les emails automatiques sont composés d’une apparence commune (en-tête, pied-de-page …) dans lequel on insère simplement le contenu qui varie d’un mail à l’autre. Ainsi, tester n’importe quel email automatique suffit à identifier les problèmes globaux.

TIPS : Je me crée un compte sur la plateforme ou application que je veux tester en renseignant l’email fournit par Mail-tester puis je déclenche un email de réinitialisation de mot de passe.

1 PbYhve3zCbQWc74DNqqaRw

Le résultat d’un audit de mail réalisé avec mail-tester.com

Dans l’exemple ci-dessus, la note est assez haute, il est donc peu probable que l’email termine dans les spams. De manière générale, si votre note est comprise entre 9 et 10, vous n’avez probablement pas besoin de changer quoi que ce soit. Néanmoins, si tout allait toujours bien je n’aurais pas écrit cet article. Je vais continuer en énumérant les problèmes couramment rencontrés.



Vérifiez la signature DNS de vos mails

N’importe qui (avec un ordinateur disposant d’une connexion internet et des connaissances en informatique) peut envoyer un email en utilisant n’importe quelle adresse email d’expédition, même si elle ne lui appartient pas. Afin de réduire le risque de phishing, les clients mails vérifient l’authenticité d’un email avec 3 signatures fournies au niveau du DNS (en d’autres termes de la configuration du nom de domaine utilisé) :

Je n’irai pas plus loin dans les explications techniques car ce n’est pas pertinent pour cet article mais si vous souhaitez approfondir vous trouverez de la documentation en suivant les liens ci-dessus.

Les principaux fournisseurs de serveurs SMTP (SendinBlue, Mailjet, Mailchimp, Sendgrid, AWS SES …) fournissent tout ce qu’il vous faut afin de les configurer.
Vous trouverez ci-dessous les tutoriels pour les principaux fournisseurs :

Si vous n’utilisez aucun des serveurs SMTP listés ci-dessus, vous trouverez facilement le tutoriel adéquat sur Google.



Comment sortir d’une Spam-blacklist

1 LIbu2oNpCQVIneeUKEXZYw

Résultat d’un audit montant que l’adresse IP utilisée est blacklisté dans une liste spam.

Être blacklisté est le pire scénario car il est assez complexe d’en sortir. Vous avez alors deux options :


Solution 1 : Contactez le support des spam-lists concernées

et prouver leur que vos mails ne sont pas des spams. Si vous n’envoyez que des mails transactionnels, vous pouvez “simplement” leur expliquer que chacun des mails envoyés est le résultat d’une action spécifique de l’utilisateur sur votre plateforme et qu’ils sont donc important pour le bon fonctionnement de celle-ci. Cela a toujours fonctionné pour ma part cependant les interfaces de support de ces spam-lists sont souvent très peu UX-friendly donc il vaut mieux être armé de patience !

Dans l’exemple ci-dessus, l’email est blacklisté par la spam-list RedHawk donc il faut se rendre sur la page de recherche de la list (Mail Tester vous fournit le lien) et saisir l’IP utilisée (Mail Tester vous la fourni également en haut de la section, “54.240.4.5” dans l’exemple). Vous serez alors capable de voir pourquoi vous êtes blacklisté ou a minima la liste des événements de spam (mails qui ont été catalogués ou déclarés comme spams). Munis de ces informations vous pouvez soit procéder aux corrections qui s’imposent ou contacter le support si vous jugez ces événements comme non pertinents.

1 ODQyhsB1DqmF8LBe-hAFkQ

RedHawk Spamslist interface

Cette solution n’est possible que si vous n’êtes blacklisté que dans quelques listes. Si vous êtes blacklisté dans un grand nombre de liste, cette manipulation sera très fastidieuse et chronophage.


Solution 2 : Changez votre adresse IP d’expédition

Cette solution est souvent plus simple. Selon votre niveau d’abonnement au fournisseur de SMTP, vous utilisez probablement une IP mutualisée pour envoyer vos mails. Cela signifie que si l’un des utilisateurs qui partage avec vous l’IP “spamme” alors cela risque de vous affecter aussi. Pour éviter cela, vous pouvez demander à bénéficier d’une IP dédiée. Le coût varie entre 50 € et 150 € par an selon votre fournisseur. Si vous n’avez pas de problèmes de blacklist ou que vous n’envoyez pas une très grande quantité de mails, cela ne vaut pas le coup de bénéficier d’un tel service. En revanche, attention à bien vous assurer d’avoir suivi au préalable la totalité des conseils de cet article, et bien évidemment enquêté sur les raisons de votre éventuel blacklisting. Dans le cas de contraire vous risqueriez de blacklister votre nouvelle adresse IP.



Et voilà ! L’audit que vous aurez effectué avec Mail Tester soulignera potentiellement d’autres problèmes tels que des liens cassés (404) ou des balises images n’ayant pas d’attributs alt mais je ne les couvrirai pas dans cet article car il s’agit de problèmes plutôt explicites et simples à corriger.

Merci pour votre lecture, j’espère que cet article vous a aidé et été suffisamment clair, dans le cas contraire les feedbacks sont les bienvenus.
🙏

Partager
Ismaël Boukhars, chef de projet web & mobile chez Capsens
Ismaël Boukhars18 févr. 2021
Linkedin logo

Blog de Capsens

Capsens est une agence spécialisée dans le développement de solutions fintech. Nous aimons les startups, la méthodologie scrum, le Ruby et le React.

Ruby Biscuit

La newsletter française des développeurs Ruby on Rails.
Retrouve du contenu similaire gratuitement tous les mois dans ta boîte mail !
S'inscrire