Guide de déploiement

Migrer de Mailchimp vers Mautic self-hosted sur VPS

Déployer sur un VPS Cloud →

Tutoriel

Migrer de Mailchimp vers Mautic self-hosted sur VPS

E-mail professionnel9 min de lecture15 étapes

Chaque nouveau palier Mailchimp correspond à une hausse de facture, quelle que soit l'activité réelle des contacts. Mautic, déployé sur un VPS, supprime ce plafond : vous gérez vos listes, vos automatisations et votre réputation d'expéditeur sur votre propre infrastructure. Ce guide couvre l'export depuis Mailchimp, l'installation de Mautic via Docker, l'import segmenté et la configuration DNS avant le premier envoi.

Sommaire· Pourquoi quitter Mailchimp maintenant1/11
  1. 01Pourquoi quitter Mailchimp maintenant
  2. 02Bénéfices concrets de Mautic self-hosted
  3. 03Prérequis chiffrés
  4. 04Export des contacts depuis Mailchimp
  5. 05Installation de Mautic via Docker sur VPS
  6. 06Import des contacts dans Mautic
  7. 07Configuration DNS avant le premier envoi
  8. 08Coexistence Mailchimp et Mautic pendant la bascule
  9. 09Dépannage courant
  10. 10Mailchimp vs Mautic self-hosted
  11. 11Prochaines étapes

Pourquoi quitter Mailchimp maintenant

Mailchimp facture par palier de contacts actifs. Un contact désabonné compte toujours dans le total jusqu'à suppression manuelle, et le passage au palier supérieur se déclenche automatiquement dès que la liste le franchit. Pour une agence qui gère dix clients, chaque liste est un abonnement séparé : la somme dépasse rapidement ce que le service justifie.

Mautic est une plateforme d'automatisation marketing open source. Déployée sur un VPS, elle n'a aucun plafond de contacts et aucun surcoût logiciel. Vous conservez l'accès aux données, vous choisissez le serveur d'envoi et vous contrôlez l'intégralité de la configuration DNS d'authentification.

Bénéfices concrets de Mautic self-hosted

  • Coût prévisible — le VPS coûte {{vps.start.price}} par mois, indépendamment du nombre de contacts ou d'envois.
  • Contrôle total des données — les listes, les segments et l'historique d'engagement restent sur votre infrastructure ; aucun prestataire tiers n'y accède.
  • RGPD simplifié — un seul sous-traitant (votre hébergeur VPS), pas de transfert vers des serveurs hors UE non déclarés.
  • Réputation d'IP dédiée — votre adresse IP d'envoi n'est pas partagée avec des milliers d'autres expéditeurs, ce qui élimine les effets de voisinage sur la délivrabilité.
  • Automatisations sans plafond — workflows, scoring de leads, formulaires embarqués, A/B testing : aucune fonctionnalité n'est réservée à un tier payant.
  • Intégration native — API REST, webhooks, connecteurs CRM : Mautic s'intègre aux outils existants sans supplément.

Prérequis chiffrés

Mautic nécessite au minimum 2 vCPU et 2 Go de RAM pour une liste de taille modeste. Pour des listes supérieures à 50 000 contacts ou des envois fréquents, comptez 4 vCPU et 4 Go de RAM. Le plan {{vps.start.name}} suffit pour démarrer ; le plan {{vps.power.name}} est recommandé pour des volumes plus élevés.

Logiciels requis : Docker et Docker Compose (inclus dans les images VPS ServOrbit), un domaine pointé sur le VPS, une base de données MySQL 8 ou MariaDB 10.6+ (fournie dans la stack Docker ci-dessous).

Prévoyez un sous-domaine dédié à Mautic, par exemple mailing.votre-domaine.com, distinct du domaine principal. Cela facilite la gestion des enregistrements DNS d'authentification sans risquer de modifier les enregistrements du site web.

Export des contacts depuis Mailchimp

  1. Accéder à la liste à exporter

    Dans Mailchimp, cliquez sur Audience dans la barre latérale gauche, puis sélectionnez All contacts. Si vous gérez plusieurs audiences, répétez l'opération pour chacune.

  2. Lancer l'export CSV

    Cliquez sur Export Audience (bouton en haut à droite), puis choisissez Export as CSV. Mailchimp prépare le fichier et vous envoie un lien de téléchargement par e-mail. Téléchargez le fichier et ouvrez-le dans un tableur pour vérifier les colonnes.

  3. Identifier les colonnes à conserver

    Le CSV Mailchimp inclut typiquement : Email Address, First Name, Last Name, MEMBER_RATING, OPTIN_TIME, OPTIN_IP, CONFIRM_TIME, MEMBER_RATING, UNSUB_REASON, TAGS. Pour Mautic, les colonnes essentielles sont Email Address, First Name, Last Name et les champs personnalisés que vous avez définis. Les colonnes de gestion interne Mailchimp (OPTIN_IP, MEMBER_RATING) peuvent être conservées comme champs personnalisés ou supprimées.

  4. Filtrer les contacts désabonnés

    Le CSV Mailchimp contient tous les statuts : subscribed, unsubscribed, non-subscribed, cleaned. Filtrez sur subscribed avant d'importer dans Mautic pour ne pas importer les contacts qui ont demandé à se désabonner. Conserver les désabonnés violerait le RGPD et dégraderait la réputation d'envoi.

  5. Préparer un fichier par segment si nécessaire

    Si Mailchimp gère plusieurs segments ou tags sur la même audience, exportez les segments séparément (filtre Tag dans la vue Contacts, puis export). Cela facilite la recréation des segments dans Mautic à l'import.

Installation de Mautic via Docker sur VPS

  1. Créer le dossier de projet et le fichier docker-compose.yml

    Connectez-vous à votre VPS en SSH et créez un dossier dédié :

    mkdir -p /opt/mautic && cd /opt/mautic

    Créez le fichier docker-compose.yml avec le contenu suivant :

    version: '3.8'
    services:
      db:
        image: mysql:8.0
        restart: unless-stopped
        environment:
          MYSQL_ROOT_PASSWORD: ${DB_ROOT_PASSWORD}
          MYSQL_DATABASE: mautic
          MYSQL_USER: mautic
          MYSQL_PASSWORD: ${DB_PASSWORD}
        volumes:
          - db_data:/var/lib/mysql
    
      mautic:
        image: mautic/mautic:5
        restart: unless-stopped
        depends_on:
          - db
        ports:
          - "8080:80"
        environment:
          MAUTIC_DB_HOST: db
          MAUTIC_DB_USER: mautic
          MAUTIC_DB_PASSWORD: ${DB_PASSWORD}
          MAUTIC_DB_NAME: mautic
          MAUTIC_TRUSTED_PROXIES: "0.0.0.0/0"
        volumes:
          - mautic_data:/var/www/html
    
    volumes:
      db_data:
      mautic_data:
  2. Créer le fichier de variables d'environnement

    Créez le fichier .env dans le même dossier :

    DB_ROOT_PASSWORD=mot-de-passe-root-fort
    DB_PASSWORD=mot-de-passe-mautic-fort

    Remplacez les valeurs par des mots de passe aléatoires longs. Ne commitez jamais ce fichier dans un dépôt.

  3. Démarrer les conteneurs

    Lancez la stack :

    docker compose up -d

    Attendez une minute, puis vérifiez que les conteneurs sont démarrés :

    docker compose ps

    Les deux services db et mautic doivent afficher l'état running.

  4. Configurer le reverse proxy nginx

    Créez un vhost nginx qui pointe vers le port 8080 et ajoute le SSL via Certbot. Exemple minimal pour mailing.votre-domaine.com :

    server {
        listen 80;
        server_name mailing.votre-domaine.com;
        location / {
            proxy_pass http://127.0.0.1:8080;
            proxy_set_header Host $host;
            proxy_set_header X-Real-IP $remote_addr;
            proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
            proxy_set_header X-Forwarded-Proto $scheme;
        }
    }

    Obtenez ensuite le certificat SSL :

    certbot --nginx -d mailing.votre-domaine.com
  5. Finaliser l'installation via l'interface web

    Ouvrez https://mailing.votre-domaine.com dans un navigateur. L'assistant d'installation de Mautic vous demande de confirmer les paramètres de base de données (pré-remplis depuis les variables d'environnement) et de créer le compte administrateur. Conservez les identifiants dans un gestionnaire de mots de passe.

Import des contacts dans Mautic

  1. Accéder à l'import dans Mautic

    Dans l'interface Mautic, cliquez sur Contacts dans le menu supérieur, puis sur le bouton Importer (icône flèche vers le haut, en haut à droite de la liste des contacts).

  2. Téléverser le fichier CSV

    Sélectionnez le fichier CSV filtré sur les contacts subscribed. Mautic accepte les CSV en UTF-8. Si votre fichier contient des caractères spéciaux (accents, arabes), vérifiez l'encodage avant l'import : un fichier encodé en Latin-1 affichera des caractères corrompus sur les noms.

  3. Mapper les colonnes

    Mautic affiche un écran de correspondance colonne-par-colonne. Faites correspondre Email AddressEmail, First NamePrénom, Last NameNom. Pour les champs personnalisés Mailchimp, créez les champs correspondants dans Mautic (Réglages → Champs de contact) avant l'import.

  4. Activer l'option « Update if exists »

    Cochez l'option Mettre à jour les contacts existants (Update if exists). Cette option est essentielle lors d'imports successifs ou de réimports correctifs : sans elle, Mautic crée des doublons au lieu de fusionner les données. Elle utilise l'adresse e-mail comme clé d'upsert.

  5. Vérifier l'absence de doublons après l'import

    Une fois l'import terminé, recherchez un contact importé par son adresse e-mail. Vérifiez que le profil est unique et que les champs sont correctement renseignés. Pour détecter d'éventuels doublons en masse, utilisez le filtre Contacts dupliqués dans le module de segments (Contacts → Segments → Nouveau segment → Filtre email dupliqué).

Configuration DNS avant le premier envoi

Envoyer des campagnes sans authentification DNS conduit à des rejets SMTP ou à un classement en spam. Les trois enregistrements à poser sont SPF, DKIM et DMARC.

SPF — publiez un enregistrement TXT à la racine de votre domaine d'envoi. Si votre VPS envoie directement par Postfix, la valeur ressemble à v=spf1 ip4:<IP-DE-VOTRE-VPS> ~all. Remplacez <IP-DE-VOTRE-VPS> par l'adresse IPv4 de votre serveur.

DKIM — dans Mautic, accédez à Paramètres → Configuration → Paramètres email → Signature DKIM. Cliquez sur Générer une clé DKIM. Mautic affiche la clé publique à publier en enregistrement TXT dans votre zone DNS, sur le sélecteur mautic._domainkey.votre-domaine.com.

DMARC — créez un enregistrement TXT sur _dmarc.votre-domaine.com avec la valeur v=DMARC1; p=none; rua=mailto:[email protected]. Le mode p=none est le bon point de départ : il génère des rapports sans bloquer d'e-mails pendant la période de rodage.

Après deux à quatre semaines de rapports, passez à p=quarantine puis à p=reject une fois que toutes les sources légitimes passent l'alignement.

Coexistence Mailchimp et Mautic pendant la bascule

Ne coupez pas Mailchimp le jour de l'import. Laissez les campagnes actives continuer sur Mailchimp pendant que Mautic chauffe son IP d'envoi. La réputation d'une nouvelle IP se construit progressivement : commencez par envoyer des volumes faibles vers les contacts les plus engagés (ouvertures récentes), augmentez graduellement sur deux à quatre semaines. Pendant cette période, les deux plateformes coexistent sans conflit : un contact peut recevoir des e-mails des deux, l'important est que les désabonnements soient traités dans les deux systèmes en parallèle.

Dépannage courant

Bounces durs dus au SPF manquant. Si l'enregistrement SPF n'inclut pas l'IP de votre VPS, les serveurs destinataires rejettent les e-mails avec un code 550. Vérifiez avec dig TXT votre-domaine.com que l'enregistrement SPF est bien publié et que l'IP du VPS y figure.

Erreur SMTP : port 25 bloqué. La plupart des hébergeurs VPS bloquent le port 25 sortant par défaut pour limiter le spam. Utilisez un relai SMTP (port 587 avec authentification STARTTLS) comme Amazon SES, Mailgun ou Brevo en tant que passerelle d'envoi. Dans Mautic, configurez ce relai sous Paramètres → Configuration → Paramètres email → Transport SMTP.

Images non chargées dans les e-mails. Mautic héberge les images des e-mails sur son propre domaine. Vérifiez que l'URL de base de Mautic est bien configurée sur votre sous-domaine public (https://mailing.votre-domaine.com) et non sur localhost. Ce paramètre se modifie dans Paramètres → Configuration → Paramètres système → URL de base.

Signature DKIM non vérifiée. Une clé DKIM mal publiée ou un sélecteur incorrect donne dkim=fail dans les en-têtes. Vérifiez avec dig TXT mautic._domainkey.votre-domaine.com que l'enregistrement est présent et correspond à la clé affichée dans Mautic.

Erreur 403 ou page blanche après la mise à jour. Mautic 5 requiert PHP 8.1+. Si vous utilisez une image Docker officielle, la version PHP est gérée automatiquement. En cas de montée de version, purgez le cache Mautic après la mise à jour : docker compose exec mautic php bin/console cache:clear.

Mailchimp vs Mautic self-hosted

Faites défiler le tableau

CritèreMailchimpMautic self-hosted (VPS)
CoûtPar palier de contacts ; augmente automatiquementCoût fixe du VPS (`{{vps.start.price}}`/mois), sans surcoût logiciel
Données et RGPDStockage sur serveurs US ; transfert à déclarerDonnées sur votre VPS (datacenters européens) ; un seul sous-traitant
Contrôle techniqueInterface limitée ; DNS non modifiableAccès root complet ; configuration SMTP, DKIM, reverse proxy au choix
DélivrabilitéIP partagée avec d'autres expéditeursIP dédiée ; réputation construite par vous
AutomatisationsLimitées selon le tierWorkflows et scoring sans plafond, open source
MaintenanceAucune (SaaS)Mises à jour Docker à planifier ; sauvegardes à configurer

Prochaines étapes

Une fois Mautic opérationnel et les premiers envois de chauffe réussis, l'étape suivante est la configuration des formulaires d'inscription sur votre site pour alimenter Mautic directement, et la création des segments d'automatisation qui remplacent les journeys Mailchimp.

Pour les agences qui gèrent plusieurs clients, l'offre revendeur ServOrbit permet de provisionner un VPS Mautic par client depuis un seul espace de gestion, avec des accès WHM séparés et une facturation centralisée. Chaque client dispose de son infrastructure isolée, de son IP dédiée et de sa propre configuration DNS d'authentification.

Consultez la page solutions agences pour les détails de l'offre revendeur.

Gérez l'infrastructure e-mail de vos clients depuis un seul espace

Avec l'offre revendeur ServOrbit, chaque client dispose de son propre VPS Mautic, de son IP dédiée et de sa facturation séparée. Vous tenez l'infrastructure, vous gérez la relation.

Besoin d'aide ?

Parcourez notre centre d'aide et notre FAQ, ou contactez notre équipe — rappel, WhatsApp ou e-mail. Support en français, anglais et arabe.

Écrire sur WhatsApps'ouvre dans un nouvel onglet