
Insivo.ai
Marketing site for an AI-powered employee-research SaaS. A static export with a sandboxed live demo — visitors press a record button on the hero and see synthesis return in real time. The pitch is the product.
Most SaaS marketing sites lead with claims. Insivo.ai leads with the actual interaction — a sandboxed call to the same Whisper + Claude pipeline that powers the product, gated behind a friendly captcha and rate-limited to keep cost bounded. The site is a static export of Next.js, MDX-authored, deployed to Vercel's EU edge.
01 · Architecture
Static export + sandboxed demo proxy.
The marketing site builds to fully static HTML and CSS via next export — no server runtime on the marketing surface itself. Every page is pre-rendered, hashed, and served from Vercel's EU edge. TTFB stays under 90ms globally.
The interactive demo lives on a separate edge function with its own subdomain. It proxies to the real product backend with a throwaway tenant context, rate-limited per IP, gated by a friendly captcha. The demo and the marketing build are entirely decoupled — one deploy can't break the other.
02 · The Demo Proxy
Rate-limited. Tenant-throwaway. Cost-bounded.
Every demo invocation hits an edge function that injects a throwaway tenant ID, enforces a token budget, and propagates the captcha token. If any check fails, the function short-circuits before reaching the model — no wasted spend on bots.
// edge function: demo.insivo.ai/api/transcribe
export const runtime = 'edge';
export const regions = ['fra1', 'cdg1', 'arn1'];
export async function POST(req: Request) {
// 1. Captcha enforcement
await assertCaptcha(req.headers.get('x-turnstile'));
// 2. Per-IP rate limit (3 requests / 10 min)
await ratelimit.check(getIP(req), { window: '10m', max: 3 });
// 3. Throwaway tenant + token budget guard
const ctx = makeDemoTenant({ budgetTokens: 4_000 });
// 4. Proxy to real backend with demo context
return await proxyToBackend(req, ctx);
}
Demo traffic stays under €30/month in model spend at current visitor volumes. The marketing team can A/B which CTAs lead to most demo activations through a tiny event log that writes to the analytics pipeline — no third-party trackers on the marketing surface.
/ The principle
Simulate, don't describe.
Visitors press a record button on the hero, ask a question, and see a synthesised theme card return. The pitch is the product — not a screenshot of it.
Aa
Palette
Indigo on paper.
Stack
Marketing team owns content, no devs in the loop.
- 01Next.js 14Static export, no Node runtime on the marketing surface
- 02MDXPages authored in MDX, ships via GitHub PR + preview deploy
- 03Vercel EU EdgePre-rendered HTML served from fra1 · cdg1 · arn1
- 04Edge FunctionDemo proxy on its own subdomain with rate limit + captcha
- 05Cloudflare TurnstileCookie-less captcha, friendly to compliance posture
- 06Upstash RatelimitSliding-window rate limits keyed by hashed IP
- 07Schema.org JSON-LDStructured markup per page for AI-search readiness
- 08Playwright VisualSnapshot tests on each marketing page before ship
03 · Engineering Decisions
Boring stack, sharp edges.
-
Static export over SSR
Marketing sites don't need per-request rendering. Static + edge cache gives 84ms TTFB globally and a recurring hosting cost of zero. Loses ISR flexibility — accepted because the marketing team prefers explicit deploys.
-
Demo on a separate subdomain
If the demo function breaks under load, the marketing site keeps serving from cache. If a marketing deploy fails, the demo keeps working. Independent SLOs, independent rollout cadences.
-
MDX over a headless CMS
Headless CMS systems trade implementation speed for ongoing cost and lock-in. MDX in the repo means content lives next to the code, ships through the same review process, and survives infrastructure migration.
-
Cookie-less analytics
No GA, no Plausible, no third-party trackers. Demo activations log to a first-party endpoint that only stores anonymous event types. The compliance block in the footer doesn't have to lie.
DSGVO posture, ready for procurement.
Trust as a UI element
The most-screenshotted section.
Logos of pilot customers, evidence cards (AVV PDF download, DSGVO badge, EU hosting graphic), and an explicit "no data leaves the EU" promise rendered as a structured block. Sales prospects forward this section to their procurement team. We render it on the page rather than tucking it into a /security route because the procurement step often happens before someone bothers to click around.
Performance you can ship to procurement.

