Un avion en papier posé au sol, la pointe éclairée en cyan.

Logiciel de newsletter open source auto-hébergé : lequel choisir

Trois logiciels libres envoient des newsletters depuis un serveur que l'on administre soi-même, et ce qui les sépare d'abord, c'est le chemin que prend chaque message. listmonk et Keila gèrent les listes et les campagnes, puis confient l'envoi à un relais SMTP ou à un service comme Amazon SES : les messages partent des serveurs de ce relais. BillionMail installe son propre serveur mail et envoie depuis l'IP de la machine, ce qui demande un port 25 sortant ouvert et un PTR posé chez l'hébergeur. Les trois sont sous AGPL-3.0. Seul Keila est aussi vendu en version hébergée, et BillionMail n'a publié aucune version depuis décembre 2025.

Gestionnaire de listes ou serveur mail complet

listmonk tient dans un binaire Go, serveur et interface compris, adossé à PostgreSQL. Il remet chaque message à un ou plusieurs serveurs SMTP déclarés dans ses réglages, et choisit depuis sa v6.2.0 le serveur d'après l'adresse ou le domaine d'expédition. Sa documentation ne décrit que l'envoi en SMTP, Amazon SES compris, et des « messengers » HTTP, pour des SMS, des notifications push ou des passerelles communautaires vers Resend et Mailersend.

Keila n'a pas non plus de serveur mail. Chaque expéditeur passe par un serveur SMTP ou par l'API d'AWS SES, SendGrid, Mailgun ou Postmark, et son README propose, pour une petite newsletter, d'envoyer depuis sa propre boîte mail. Le service d'envoi de l'éditeur, Send with Keila, n'existe que sur l'offre hébergée.

BillionMail est un serveur mail complet doublé d'un outil de campagnes. Le même Compose installe Postfix pour le SMTP, Dovecot pour l'IMAP et le POP3, Rspamd contre le spam et le webmail Roundcube : la machine héberge aussi les boîtes aux lettres des domaines déclarés. Le projet se présente comme un moyen de ne plus configurer ces briques à la main.

Côté campagnes, les trois ont une API d'envoi transactionnel : /api/tx chez listmonk, POST /messages chez Keila depuis la 0.30.0, un envoi unitaire ou par lot avec clé X-API-Key chez BillionMail. La segmentation diffère davantage. listmonk filtre les abonnés par des expressions SQL PostgreSQL, y compris sur des attributs JSON libres, Keila sait depuis la 0.18.0 les trier selon leurs interactions avec les campagnes passées, et BillionMail les filtre par tags, avec exclusion.

Délivrabilité : ce qui reste à la charge de l'expéditeur

Avec listmonk ou une instance Keila auto-hébergée, l'authentification du domaine se fait chez le relais et dans la zone DNS. Ni les réglages ni la documentation de listmonk ne parlent de SPF, de DKIM ou de DMARC. La documentation de Keila décrit ces enregistrements pour son offre hébergée seulement, quatre CNAME vers ses serveurs et un DMARC en p=none, et précise que ces consignes ne fonctionnent pas sur une instance auto-hébergée. Keila Cloud réécrit aussi une adresse d'expédition prise sur un domaine partagé : test@mailbox.org part de test.mailbox.org@keilamails.com, l'adresse d'origine servant pour les réponses.

listmonk laisse aussi les rebonds à brancher. Leur traitement est désactivé à l'installation ; l'activer demande une boîte POP3 derrière l'adresse d'expédition ou un Return-Path dédié, ou les webhooks d'Amazon SES, SendGrid, Postmark et d'autres relais, qui arrivent sur des routes publiques de l'instance. Son débit se règle pour rester sous les quotas du relais : 10 workers à 10 messages par seconde au plus par défaut, et une fenêtre glissante à activer, de 10 000 messages par heure dans sa configuration initiale. Même avec un relais, la documentation prévient que des hébergeurs comme Hetzner bloquent les ports sortants 25 et 465.

Avec BillionMail, les messages partent de l'IP du serveur, et la réputation de cette IP devient l'affaire de l'expéditeur. Le port 25 sortant doit être ouvert, et la documentation rappelle que la plupart des serveurs cloud le bloquent par défaut, AWS EC2 et DigitalOcean cités en exemple. Le PTR de l'IP se pose chez l'hébergeur ou l'opérateur réseau, pas dans l'outil. L'interface guide la pose de SPF, DKIM et DMARC, vérifie depuis la v4.8 si le domaine ou l'IP figure sur une liste noire, et peut dédier depuis la v4.4 une IP sortante à chaque domaine. Pour sortir d'une liste noire, la documentation renvoie à la procédure de retrait de Spamhaus. Si le port 25 reste fermé ou si l'IP est mal notée, BillionMail se branche à son tour sur un relais, AWS SES, Mailgun ou un autre, un seul par domaine.

Ce que chaque outil demande pour tourner

Relevé dans les dépôts et les documentations le 7 octobre 2026.

OutilLicenceÀ faire tournerEnvoiOffre hébergéeDernière version
listmonkAGPL-3.0un binaire Go, PostgreSQL 12 ou plusun ou plusieurs serveurs SMTP externesaucune, hébergeurs tiersv6.2.0, 26 juin 2026
KeilaAGPL-3.0 ou ultérieure, hors dossier extra/un conteneur et PostgreSQL ; un reverse proxy qui laisse passer les WebSocketsSMTP, AWS SES, SendGrid, Mailgun, PostmarkKeila Cloud, de 8 à 256 € par mois0.30.3, 6 sept. 2026
BillionMailAGPL-3.0sept conteneurs, dont Postfix, Dovecot, Rspamd, PostgreSQL et Redis ; 1 cœur, 1 Go de RAM et 20 Go de disque au minimumson propre Postfix depuis l'IP du serveur, ou un relais par domaineaucune annoncéev4.9, 11 déc. 2025

listmonk se résume à deux services, le binaire et PostgreSQL, que le docker-compose.yml du dépôt lance ensemble en appliquant les migrations à chaque démarrage. Sa documentation ne fixe aucun minimum de mémoire. Son site cite une campagne de plus de 7 millions d'e-mails envoyée avec une fraction d'un cœur et 57 Mo de RAM au plus, un chiffre du projet. À cette échelle, les pages d'administration qui comptent les abonnés peuvent mettre des dizaines de secondes à s'afficher, et une option met ces chiffres en cache.

La documentation d'installation de Keila ne cite qu'une dépendance à son image : PostgreSQL. La configuration exige une SECRET_KEY_BASE d'au moins 64 caractères et un serveur SMTP pour les e-mails système, et l'inscription reste ouverte tant que DISABLE_REGISTRATION=true n'est pas posé. Le fichier Compose du dépôt se dit fait pour les tests locaux, pas pour la production, et aucun besoin en mémoire n'est documenté.

BillionMail expose neuf ports (25, 465, 587, 110, 143, 993, 995, 80 et 443) et ne s'installe que sous Linux amd64 ou arm64. Son cœur Go monte le socket Docker en lecture seule. Le script install.sh tire au sort l'identifiant et les mots de passe, puis active un pare-feu. La voie Docker part d'un fichier env_init où l'admin vaut billion/billion et où les mots de passe PostgreSQL et Redis sont écrits dans le dépôt public : le README demande de les changer avant le premier lancement.

Où en sont les projets

listmonk est le plus ancien : dépôt créé en juin 2019, v1.0.0 en mai 2021, puis trois versions en 2026, la v6.0.0 le 2 janvier, la v6.1.0 le 29 mars et la v6.2.0 le 26 juin. Le dernier commit date du 3 octobre. Le propriétaire du dépôt, knadh, signe 1 422 commits, le contributeur humain suivant 32. Chacune des trois versions de 2026 corrige des failles propres aux instances à plusieurs utilisateurs, et revenir à une version antérieure impose de restaurer la base d'avant la migration.

Keila, dont le dépôt date de janvier 2021, est encore en 0.x. La 0.30.3 du 6 septembre 2026 est sa neuvième version de l'année, après près de dix mois sans version entre la 0.17.1 de mars 2025 et la 0.18.0 de janvier 2026. Un développeur signe 1 234 des 1 388 commits de la branche principale. Les tests A/B et les automatisations marketing figurent sur la feuille de route du site, pas dans le logiciel.

BillionMail, maintenu par aaPanel, a publié 21 versions entre avril et décembre 2025, et la v4.9 du 11 décembre reste la dernière. Sa branche par défaut a encore reçu 74 commits de février à avril 2026, puis deux en juin pour la connexion unique depuis aaPanel, et aucun depuis. Le dépôt compte 227 tickets ouverts.

Licences et offres payantes

listmonk, Keila et BillionMail sont tous trois sous AGPL-3.0 : qui modifie l'un d'eux et le fait tourner en service réseau doit fournir le code modifié à ses utilisateurs. La licence de Keila ajoute « ou toute version ultérieure » et exclut le logo et le dossier extra/. Ce dossier contient le code propre à Keila Cloud, facturation, comptes et Send with Keila, publié depuis la 0.18.0 à titre informatif : son README interdit de l'utiliser ou de le modifier.

Keila se présente comme une alternative open source à Mailchimp et à Brevo, et c'est le seul des trois à vendre une version hébergée. Keila Cloud tourne en Allemagne et en France, et se vend en six formules facturées au volume d'envoi, de 8 € par mois pour 2 000 e-mails à 256 € pour 250 000, sans offre gratuite. listmonk n'a ni offre payante ni version hébergée par le projet, et sa documentation renvoie vers des hébergeurs tiers comme PikaPods, Elestio ou Cloudron. BillionMail n'annonce ni prix ni offre hébergée.