Multi-Tenant Mautic: White-Label Marketing Automation on Kubernetes
SaaS Platform — User Management Industry
About the Project
The client is a SaaS company providing a platform for organizations to manage their end-user databases. They wanted to offer marketing automation as a native feature of their product — fully branded, seamlessly integrated, and independently scalable.
The Challenge
The client needed a marketing automation platform that could serve hundreds of their customers as a white-labeled product. Each tenant required complete data isolation, independent configuration, and seamless integration with the existing user management system. Specifically, the platform had to:
Run as white-labeled product
Support hundreds of tenants
Scale automatically
Integrate with tenant user database via APIs
Support custom email templates with dynamic content
Be maintainable and upgradeable
The Solution
We designed and built a multi-tenant Mautic platform running on Kubernetes (AWS EKS). Each tenant gets a fully independent Mautic installation with its own database, file storage, and configuration — all managed through automated provisioning and centralized GitOps deployments.
What We Built
Automated Tenant Provisioning
A dedicated installer microservice orchestrates the entire provisioning process: creating the database, configuring DNS, setting up Kubernetes resources, deploying Mautic, and connecting monitoring. What previously took approximately one hour of manual work now completes in 7-8 minutes with zero human intervention.
Kubernetes Architecture with Intelligent Scaling
The platform runs on AWS EKS with three distinct node groups: Management (stable, always-on for critical services), Application (balanced for Mautic web instances), and Worker (spot instances for background processing). Using spot instances for worker nodes delivers 50-65% cost savings compared to on-demand pricing.
Wave-Based Deployment with Argo CD
Deployments use Argo CD sync waves to ensure correct ordering: infrastructure first, then databases, then application pods. A canary group of tenants receives updates first. Health checks validate each wave before proceeding. Automatic rollback triggers if health checks fail, ensuring zero-downtime updates across all tenants.
Custom Self-Healing Infrastructure
A custom Kubernetes operator runs health checks every 5 minutes across all tenant instances. It detects stuck pods, failed cron jobs, and resource exhaustion. Automated remediation includes pod restarts, stuck job cleanup, and alerting when intervention is needed.
Storage Performance: 500x Improvement
The default EFS storage delivered approximately 30 KB/s for Mautic workloads — completely unusable for production. After evaluating multiple options, we migrated to Amazon FSx for Lustre, achieving approximately 15 MB/s — a 500x improvement that made the platform viable for hundreds of concurrent tenants.
White-Label Mautic Customization
We built a fully rebranded Mautic interface: custom color scheme, logo placement, reorganized navigation, and a completely rebuilt dashboard. The custom email builder plugin supports 4 dynamic content block types that pull personalized data from the tenant's user database. We also managed the migration from Mautic 5 to Mautic 6.
Python Integration Services
Five AWS Lambda microservices handle the integration layer: Monthly Sync (bulk contact updates), Welcome Flows (new user onboarding sequences), Register & Verify (account activation), Auto Renew (subscription lifecycle), and Recommends (personalized content suggestions). We consolidated 15 separate repositories into a single monorepo for maintainability.
Comprehensive Monitoring
Grafana dashboards backed by Prometheus and Loki provide full observability. The monitoring stack covers ten categories — from pod health and resource usage to email delivery rates and queue depth per tenant. Custom alerts notify the team of anomalies before they impact users.
Business Impact
Product-ready marketing automation platform integrated into the client's SaaS offering
4-5 tenants live in production, architecture designed and tested for 300-500 tenants
Successful Mautic 5 to Mautic 6 upgrade across all tenant instances
15 separate integration repositories consolidated into 1 maintainable monorepo
Tech Stack
Need a Multi-Tenant Mautic Platform?
Let's discuss your requirements. We'll share what we've learned building multi-tenant Mautic at scale.
Talk to an Expert