Show HN: Cairo – Open-source multi-tenant data segregation for GTM
The latest feature solves a problem every agency faces: keeping client data separated without complex configuration.
How it works:
- Name campaigns with client identifiers: "ACME Corp - Q1 2024" - System automatically detects "ACME Corp" and routes to isolated tables - Each namespace gets its own {namespace}\_user_source table - Complete API for managing namespaces programmatically
Technical highlights:
- Node.js + PostgreSQL - Dynamic table creation with proper indexes - Smart caching layer (5-min TTL) - Zero-downtime migration from single to multi-tenant - ~3ms overhead for namespace detection
We're dogfooding this with 12 clients and it's eliminated hours of manual data wrangling weekly.
Happy to answer questions about the architecture, multi-tenancy patterns, or anything else!
No comments yet