Vérifié sur la documentation officielle le

SPF neutral : que faire ?

Un résultat « SPF neutral » veut dire que ton domaine refuse de se prononcer : le serveur qui a envoyé l'email n'est ni autorisé ni interdit. Deux causes, et deux seulement — ton enregistrement SPF se termine par ?all, ou ton domaine n'a pas de SPF du tout et le destinataire a fait une « best guess ». Dans les deux cas, la solution est la même : publier un SPF qui liste tes vrais expéditeurs et se termine par ~all. Une ligne, dix minutes, et le résultat passe à pass.

Ce n'est pas un rejet — un email en neutral n'est pas bloqué pour ça. Mais la norme SPF demande aux serveurs de traiter neutral exactement comme l'absence d'enregistrement. Autrement dit : tu as peut-être écrit une ligne SPF, mais pour le monde entier, tu n'en as pas.


D'où vient le « neutral »

SPF fonctionne avec des qualificateurs devant chaque mécanisme. Le dernier, celui qui s'applique à tout ce qui n'a pas été listé avant, décide du résultat pour les inconnus :

Fin de ligne Résultat pour un serveur non listé Ce que ça dit
-all fail « Personne d'autre n'envoie pour moi »
~all softfail « Si ça vient d'ailleurs, c'est suspect »
?all neutral « Je n'ai pas d'avis »
+all pass « Tout le monde peut envoyer pour moi » — ne fais jamais ça

Le ? est le qualificateur neutre de la RFC 7208. Certaines documentations d'hébergeurs le proposent encore dans leurs exemples ; certains outils « génèrent » un SPF en ?all par prudence. Le résultat est le même : ta ligne existe, elle ne protège de rien.

L'autre cas est celui où aucun enregistrement SPF n'existe. Gmail affiche alors quelque chose comme spf=neutral (google.com: 203.0.113.5 is neither permitted nor denied by best guess record for domain of …). Le « best guess record » est une supposition faite par Google en l'absence de ligne. Là encore, la réponse est d'en publier une.

La ligne à publier à la place

Champ Valeur
Type TXT
Nom (vide, ou @ : c'est ton domaine racine)
Valeur v=spf1 include:TON-SERVICE ~all

Ce que tu dois remplacer : include:TON-SERVICE par le ou les include: de tout ce qui envoie en ton nom — ton hébergeur de boîtes, ton outil de newsletter, ton logiciel de facturation. Les plus courants :

Ton service d'envoi À insérer
Google Workspace include:_spf.google.com
Microsoft 365 include:spf.protection.outlook.com
Boîtes OVH (MX Plan, Email Pro) include:mx.ovh.com
Brevo include:spf.brevo.com
Mailjet include:spf.mailjet.com
Un autre outil la valeur exacte affichée dans son interface

Tout dans une seule ligne : deux enregistrements SPF sur le même domaine donnent un permerror, ce qui est pire que neutral. Et si tu avais déjà une ligne en ?all, modifie-la plutôt que d'en ajouter une deuxième.

Pourquoi ~all et pas -all ? Parce que tu n'es pas encore sûr d'avoir listé tous tes expéditeurs. ~all marque les inconnus comme suspects sans faire disparaître les emails de l'outil que tu aurais oublié ; tu passeras à -all — si tu y tiens — une fois tes rapports DMARC lus pendant quelques semaines.

Ce que ça change pour DMARC

DMARC ne s'intéresse qu'à une chose côté SPF : un pass aligné sur ton domaine. neutral n'est pas un pass. Donc, si tu n'as ni SPF valide ni DKIM, chaque email que tu envoies échoue à DMARC — et avec une politique p=quarantine ou p=reject, il part en indésirable ou disparaît. Si DKIM est en place et aligné, DMARC passe grâce à lui malgré le neutral : c'est confortable, mais c'est marcher sur une jambe.

Questions fréquentes

SPF neutral, est-ce que mes emails arrivent quand même ?

Le plus souvent oui, tant que ton DMARC est en p=none ou absent : neutral n'est pas un rejet. Mais tu n'as aucune protection contre l'usurpation, et si ton DMARC est en quarantine ou reject sans DKIM valide, tes propres emails partent en indésirable ou sont refusés.

Quelle est la différence entre SPF neutral et SPF softfail ?

neutral (?all) dit « je n'ai pas d'avis » et est traité comme l'absence de SPF. softfail (~all) dit « ce serveur n'est pas dans ma liste, méfie-toi » : le destinataire peut pénaliser l'email sans le rejeter. C'est ~all qu'il faut publier tant que ta liste d'expéditeurs n'est pas certaine.

Comment savoir si mon SPF finit par ?all ?

Entre ton domaine dans le scanner ci-dessous : il affiche ta ligne SPF telle que les boîtes de réception la lisent, avec son qualificateur final. Tu peux aussi envoyer un email à une adresse Gmail, ouvrir « Afficher l'original » et lire la ligne spf= : elle donne le résultat et la raison.


Pour aller plus loin

Vérifie que c'est bon

Entre ton domaine, on regarde ce que le reste du monde voit : SPF, DKIM, DMARC, et ce qui cloche. Gratuit, sans compte, résultat en 20 secondes.