# ADR 0006 — Enterprise self-hosted first; SaaS only after we run it ourselves **Status:** Accepted, 2026-09-02. ## Decision The product is a **self-hostable server for enterprises, small businesses and builders.** A hosted offering is not a v1 goal and may never exist. If it does, it comes only after we have run OpenMail ourselves, in production, long enough to have a deliverability track record worth selling. ## Why this ordering and not the reverse - **Deliverability cannot be shortcut.** A hosted product's entire value is inbox placement, which is months of IP warmup, feedback-loop enrolment and suppression-list discipline. Selling that before we have it is selling something we do not own. - **Self-hosted is the differentiator.** Every competing agent-mailbox product is hosted-only. Leading with a SaaS puts us on their ground, competing on the thing they have already spent years on. - **Auditability is the purchase condition.** Enterprises will not point MX at a closed box. Public source under Apache-2.0 is why they can say yes, and the self-hosted path is the one that requires no trust in us at all. - **We become our own first serious user.** The bugs that matter in mail — silent DANE downgrades, an MTA-STS policy cached wrong for a year — surface only under real traffic. Running it ourselves before selling it is how we find them on our own mail instead of a customer's. ## Consequences - `pods` (tenancy) stays in the schema from v0.1 even though nothing uses it. It is the piece that keeps the SaaS path open without a migration. **Do not remove it as dead code.** - No billing, no Stripe, no hosted control plane in the tree. When someone proposes one, this ADR is the answer. - Docs, defaults and error messages are written for an operator running one box, not for a tenant of ours. - The website (`website/`) sells self-hosting and links to the repo. It does not collect signups for a product that does not exist.