Multi-tenant support / White-label features

2 Min. reading time Komplexe App-Funktionalitäten

Multi-tenant support allows a single app to serve multiple companies or brands (“tenants”) simultaneously without having to develop a separate app for each customer. With white-label features, the app can be customized for each client—for example, with their own logo, colors, text, and domain name. This saves development time and allows providers to offer a scalable solution for many clients.

🔧 Technical Explanation

In Expo-based React Native apps, multi-tenant capability is achieved through flexible configuration, dynamic content, and server-side separation.

Multi-Tenant Structure:

  1. Tenant Detection
    • E.g., based on the domain (for web), a tenant ID, or login URL
    • The app can determine which tenant it is running for using expo-constants or SecureStore, for example
  2. Dynamic Content & Design
    • Logos, colors, terminology, text, and settings are loaded from the backend
    • The app dynamically adapts to the tenant (white label via design system)
  3. Data Isolation & Security
    • Each client sees only its own data, users, and content
    • Separate databases or tables with client IDs (e.g., using Supabase, Firebase, Prisma)
  4. Release
    • Option A: One app for all clients with login selection
    • Option B: Separate builds for each client (e.g., via eas.json and branding config)

Tools & Concepts:

  • react-native-config or expo-constants for environment variables
  • ThemeProvider for dynamic styling (e.g., styled-components, tailwind-rn)
  • Client-specific navigation & content with React Navigation
  • CMS or configuration systems such as Strapi, Sanity, Contentful

💡 Use Cases

  • White-label apps for agencies or franchise chains
  • E-learning platforms with custom client structures
  • Sales systems or booking platforms for multiple clients
  • SaaS apps (Software as a Service) with separate logins for different companies
  • Marketing an app under multiple brands using the same code

Important Questions and Answers About Multi-Tenant Apps

How does a multi-tenant app differ from multiple individual apps? Instead of building a separate app for each client, a single app is developed that dynamically behaves differently depending on the tenant—in terms of design, data, and language. How does the app recognize which tenant it’s currently running for?

  • Via a custom login URL
  • Via app configurations (e.g., tenant ID)
  • By scanning a QR code, using deep links, or via subdomains Can clients have their own colors, logos, and text? Yes—that’s the essence of white-labeling. The app loads custom styles and text from the server and displays them dynamically. Is this secure? Yes—with a clear separation of data in the backend (e.g., via client ID or separate databases), each client sees only its own content and users. What’s the best way to scale a system like this?
  • Through a multi-client-capable backend
  • Centralized management of all clients in the admin panel
  • Automated CI/CD pipeline for white-label builds via EAS Build