Multi-tenant SaaS Next.js-szel: sablontól a termelésig
Egy multi-tenant Next.js SaaS referenciaarchitektúrája 2026-ból: custom domain, RLS, per-tenant feature flag és billing. Nincs lufi.
Egy multi-tenant Next.js SaaS referenciaarchitektúrája 2026-ból: custom domain, RLS, per-tenant feature flag és billing. Nincs lufi.
Szakmai ellenőrzés:Mező Dezső· Alapító · Mérnök, DField Solutions· 2026. márc. 10.
Ha a te SaaS-ed 10+ tenant fölé skálázik, a multi-tenant architektúra nem luxus, hanem túlélés. Itt az általunk használt referencia-stack Next.js-szel és Postgres Row-Level Security-vel. Ugyanezt szállítjuk a Web és webalkalmazás szolgáltatásunk keretében.
A subdomain (acme.app.com) a default. A custom domain (app.acme.com) szerepel a Growth csomagban. Next.js middleware-ben feloldjuk a tenant-et és hozzá-csapjuk a request-hez.
// middleware.ts — tenant resolution
import { NextResponse, type NextRequest } from "next/server";
export async function middleware(req: NextRequest) {
const host = req.headers.get("host") || "";
const subdomain = host.replace(/\.app\.com$/, "");
const tenant = await resolveTenantBySubdomain(subdomain);
if (!tenant) return NextResponse.redirect(new URL("/404", req.url));
const res = NextResponse.next();
res.headers.set("x-tenant-id", tenant.id);
return res;
}Postgres RLS (PolicyScope) jól működik ~500 tenant-ig. Efölött schema-per-tenant (vagy cluster-per-tenant nagy ügyfeleknek). Mi default RLS-t használunk, kritikus ügyfeleknek dedikált schema-t.
A Growth csomag más feature-t lát, mint az Enterprise. Ezt NEM if-elseif-ben csináljuk — PostHog feature flag + tenant group. A kód tiszta marad.
Ne egy globál queue-ban fussanak a tenant-job-ok. BullMQ per-tenant queue vagy Temporal namespace. Így egy csapkodó tenant nem dönti be a többit.
Ez az architektúra 2–8 hét alatt felállítható. Ha most indítasz SaaS-t, kezdettől multi-tenant legyen — később átállni sokkal többe kerül.

Szerző
Alapító, DField Solutions
Fintechtől kreátor-toolingig építek produkciós termékeket — startupoknak és vállalatoknak egyaránt, Budapesttől San Franciscóig.
Folytatás