Intermédiaire ⏱ 30 min de mise en œuvre Mis à jour le 11 août 2026

Héberger Formbricks : formulaires et enquêtes (alternative à Typeform)

Les réponses de vos formulaires contiennent des données personnelles. Formbricks les garde chez vous plutôt que sur un SaaS étranger. Voici comment héberger cette alternative à Typeform.

Créer des formulaires, mesurer la satisfaction client ou recueillir du feedback produit implique souvent de transmettre des informations personnelles à une plateforme SaaS. Adresses e-mail, coordonnées, commentaires libres et réponses comportementales quittent alors votre infrastructure, parfois sans visibilité suffisante sur leur localisation ou leur sous-traitance.

Formbricks est une plateforme open source de formulaires, d’enquêtes et d’« experience management ». Auto-hébergée sur un serveur situé en France, elle constitue une alternative souveraine à Typeform ou Qualtrics. Vous conservez la maîtrise de l’application, de sa base PostgreSQL et des réponses collectées, tout en disposant des fonctions nécessaires aux équipes produit, marketing et relation client.

Chez TalCloud, les futurs VPS seront hébergés en France avec stockage NVMe, protection Anti-DDoS Netrix et support humain. Ce type d’infrastructure permet de déployer Formbricks au plus près de vos exigences de confidentialité et de conformité au RGPD.

Ce que permet Formbricks

Formbricks couvre plusieurs scénarios de collecte. Les enquêtes par lien fonctionnent comme des formulaires classiques : vous construisez un questionnaire, publiez une URL et la diffusez par e-mail, sur les réseaux sociaux ou depuis votre site.

Les enquêtes in-app s’intègrent directement à un site web ou à une application grâce au SDK Formbricks. Elles peuvent être déclenchées selon le comportement ou le profil d’un utilisateur : visite d’une page, utilisation d’une fonctionnalité, fin d’un parcours ou appartenance à un segment. Cette approche est particulièrement utile pour interroger la bonne personne au bon moment sans interrompre toute l’audience.

La plateforme prend notamment en charge :

  • les enquêtes NPS pour mesurer la recommandation ;
  • les questionnaires CSAT après une interaction ou une livraison ;
  • les retours qualitatifs et commentaires libres ;
  • les formulaires de recherche utilisateur ;
  • la logique conditionnelle selon les réponses ;
  • les questionnaires multilingues ;
  • les intégrations et webhooks vers vos outils internes.

Formbricks permet ainsi de centraliser la création, la diffusion et l’analyse des enquêtes sans dépendre d’un service propriétaire pour stocker les résultats.

Pourquoi l’auto-hébergement renforce la maîtrise RGPD

Une réponse de formulaire peut contenir un nom, une adresse e-mail, une opinion, un identifiant client ou des informations professionnelles. Même lorsqu’aucun champ nominatif n’est demandé, le croisement d’une réponse avec une session, un profil ou une adresse IP peut permettre d’identifier une personne.

En auto-hébergeant Formbricks en France, vous choisissez l’emplacement de la base de données, contrôlez les accès administratifs et maîtrisez les sauvegardes. Vous réduisez également le nombre de sous-traitants impliqués et évitez d’envoyer automatiquement les réponses à un SaaS étranger.

L’auto-hébergement ne rend toutefois pas un traitement conforme par défaut. Votre organisation reste responsable de la finalité de la collecte, de sa base légale, de l’information des répondants et, lorsque nécessaire, de leur consentement. Elle doit aussi définir une durée de conservation, limiter les champs collectés, gérer les demandes d’accès ou de suppression et documenter les mesures de sécurité.

Prérequis techniques

Pour installer Formbricks, prévoyez :

  • un VPS Linux avec Docker et le plugin Docker Compose (voir installer Docker sur un VPS) ;
  • un nom de domaine ou sous-domaine, par exemple feedback.example.fr ;
  • un enregistrement DNS pointant vers l’adresse du serveur ;
  • PostgreSQL, déployé ici dans un conteneur dédié ;
  • un relais SMTP pour les invitations et notifications ;
  • un reverse proxy assurant la terminaison HTTPS.

Le serveur doit autoriser les connexions web sur les ports 80 et 443. Le port PostgreSQL ne doit pas être exposé publiquement. L’application écoutera uniquement sur 127.0.0.1:3000, puis le reverse proxy transmettra les requêtes HTTPS.

Générer les secrets de l’application

Formbricks utilise plusieurs secrets pour les sessions, le chiffrement et l’authentification des tâches planifiées. Générez une valeur différente pour chaque variable :

openssl rand -hex 32
openssl rand -hex 32
openssl rand -hex 32

Affectez les résultats respectivement à NEXTAUTH_SECRET, ENCRYPTION_KEY et CRON_SECRET. Ne les placez pas dans un dépôt Git, un ticket public ou une image Docker. Conservez-les dans un fichier .env protégé et dans votre gestionnaire de secrets habituel.

Créez ensuite le fichier .env :

POSTGRES_DB=formbricks
POSTGRES_USER=formbricks
POSTGRES_PASSWORD=remplacez-par-un-mot-de-passe-long

NEXTAUTH_SECRET=remplacez-par-le-premier-secret
ENCRYPTION_KEY=remplacez-par-le-deuxieme-secret
CRON_SECRET=remplacez-par-le-troisieme-secret

SMTP_HOST=smtp.example.fr
SMTP_PORT=587
SMTP_USER=formbricks@example.fr
SMTP_PASSWORD=remplacez-par-le-mot-de-passe-smtp
MAIL_FROM=Formbricks <formbricks@example.fr>

Restreignez les droits du fichier :

chmod 600 .env

Déployer Formbricks avec Docker Compose

Créez un fichier compose.yml dans un répertoire réservé à Formbricks :

services:
  postgres:
    image: postgres:16-alpine
    restart: unless-stopped
    environment:
      POSTGRES_DB: ${POSTGRES_DB}
      POSTGRES_USER: ${POSTGRES_USER}
      POSTGRES_PASSWORD: ${POSTGRES_PASSWORD}
    volumes:
      - postgres_data:/var/lib/postgresql/data
    healthcheck:
      test: ["CMD-SHELL", "pg_isready -U ${POSTGRES_USER} -d ${POSTGRES_DB}"]
      interval: 10s
      timeout: 5s
      retries: 10

  formbricks:
    image: ghcr.io/formbricks/formbricks:latest
    restart: unless-stopped
    depends_on:
      postgres:
        condition: service_healthy
    ports:
      - "127.0.0.1:3000:3000"
    environment:
      WEBAPP_URL: https://feedback.example.fr
      DATABASE_URL: postgresql://${POSTGRES_USER}:${POSTGRES_PASSWORD}@postgres:5432/${POSTGRES_DB}
      NEXTAUTH_SECRET: ${NEXTAUTH_SECRET}
      ENCRYPTION_KEY: ${ENCRYPTION_KEY}
      CRON_SECRET: ${CRON_SECRET}
      SMTP_HOST: ${SMTP_HOST}
      SMTP_PORT: ${SMTP_PORT}
      SMTP_USER: ${SMTP_USER}
      SMTP_PASSWORD: ${SMTP_PASSWORD}
      MAIL_FROM: ${MAIL_FROM}
      SMTP_SECURE_ENABLED: "false"
    volumes:
      - uploads:/home/nextjs/apps/web/uploads

volumes:
  postgres_data:
  uploads:

Remplacez feedback.example.fr par votre domaine réel. Si votre mot de passe PostgreSQL contient des caractères réservés dans une URL, encodez-les ou définissez directement une valeur DATABASE_URL correctement échappée.

Démarrez les services et contrôlez leur état :

docker compose pull
docker compose up -d
docker compose ps
docker compose logs --tail=100 formbricks

Pour une exploitation durable, remplacez latest par une version précise de Formbricks. Vous éviterez ainsi qu’un téléchargement ultérieur introduise une mise à niveau majeure non planifiée.

Effectuer le premier accès

Une fois le reverse proxy configuré, ouvrez l’adresse publique de Formbricks. Créez le premier compte administrateur, puis l’organisation et le premier projet. Utilisez une adresse professionnelle dont vous contrôlez la boîte de réception afin de vérifier immédiatement la configuration SMTP.

Pour une première enquête par lien, choisissez un modèle ou partez d’un questionnaire vide. Ajoutez les questions, configurez la logique conditionnelle, prévisualisez le parcours et publiez l’enquête. Formbricks fournit ensuite une URL que vous pouvez partager depuis votre site, une campagne ou votre outil de relation client.

Pour une enquête in-app, créez une enquête intégrée puis ajoutez le SDK Formbricks à votre site ou application. L’intégration doit initialiser le SDK avec les paramètres fournis par votre projet. Vous pourrez ensuite définir les pages, événements ou segments qui déclenchent l’enquête. Vérifiez le comportement dans un environnement de test avant toute diffusion en production.

Activer HTTPS avec un reverse proxy

Placez Nginx, Caddy ou Traefik devant le conteneur. Le proxy doit recevoir les connexions sur le port 443, gérer le certificat TLS et transmettre les requêtes vers http://127.0.0.1:3000.

La variable WEBAPP_URL doit correspondre exactement à l’URL publique, protocole compris. Une différence entre HTTP et HTTPS, ou entre deux noms d’hôte, peut provoquer des erreurs de connexion, de redirection ou de session.

N’exposez pas directement le port 3000 sur toutes les interfaces. Le lien 127.0.0.1:3000:3000 limite l’accès au serveur local et oblige les visiteurs à passer par la couche HTTPS.

Sécuriser et maintenir l’installation

Les réponses collectées doivent être traitées comme des données sensibles. Activez HTTPS, utilisez des mots de passe uniques, limitez les comptes administrateurs, gardez le port PostgreSQL fermé au niveau du pare-feu et appliquez régulièrement les mises à jour du système, de Docker, de PostgreSQL et de Formbricks.

Avant une mise à niveau, consultez les changements de version et les éventuelles migrations. Sauvegardez la base, tirez l’image choisie, puis recréez les conteneurs :

docker compose pull
docker compose up -d
docker compose logs --tail=100 formbricks

Sauvegardez PostgreSQL avec une commande exécutée dans le conteneur :

docker compose exec -T postgres pg_dump -U formbricks -d formbricks > formbricks.sql

Complétez cette sauvegarde par celle du volume uploads. Stockez les copies sur un emplacement distinct, chiffrez-les et testez régulièrement leur restauration. Notre guide sur les sauvegardes chiffrées avec restic détaille l’automatisation. Une sauvegarde jamais restaurée ne constitue pas une garantie de reprise.

Avec cette architecture, Formbricks fournit aux équipes produit et marketing des formulaires, enquêtes NPS, mesures CSAT et sondages in-app tout en gardant les réponses sous leur contrôle. Hébergée sur une infrastructure française telle que les futurs VPS TalCloud, la plateforme s’inscrit dans une démarche de souveraineté, de sécurité et de réduction des transferts de données personnelles.