# Kyno pricing

Kyno deploys an app your AI agent built and gives it a private URL with a real
login, secrets, a database, and HTTPS. Connect an agent at
`https://console.kyno.work/mcp`.

**You pay primarily for live apps.** Free includes two concurrent invited
workspace members; paid plans include unlimited workspace members.

## Plans

| Plan | Price | Live apps | Workspace members | Infrastructure |
|---|---|---|---|---|
| Free | $0 | 1, sleeps after 15 minutes idle | owner + 2 invited members | shared |
| Starter | $39/month | 3 | unlimited | shared |
| Team | $129/month | 15 | unlimited | shared |
| Enterprise | Contact sales | sized to infrastructure | unlimited | dedicated, private runtime |

### Free — $0

- 1 app
- sleeps after 15 minutes idle
- 2 concurrent invited workspace members; revoke one to reuse the seat

### Starter — $39/month

- 3 live apps
- sleeps after 30 minutes idle
- unlimited workspace members
- shared infrastructure
- deployment from GitHub, Claude, Codex, Cursor, Gemini, or any MCP client
- scheduled, cron, webhook, and lifecycle automations

### Team — $129/month

Everything in Starter, plus:

- 15 live apps
- Owner, Admin, Editor, and User workspace roles
- priority support

### Enterprise — Contact sales

Everything in Team, plus:

- app capacity sized to your infrastructure
- dedicated infrastructure
- private runtime
- guaranteed capacity
- dedicated resources

## Add-ons

| Add-on | Price | Notes |
|---|---|---|
| Extra live app | $30/month | beyond the plan allowance |

New self-serve accounts can select Free immediately. Paid plans are
activated and invoiced directly during beta. Annual plans are ten months for
twelve.

## What every app gets

- one Firecracker microVM per app: its own kernel, uid, network namespace, and cgroup
- a private HTTPS URL, `https://<app-id>.apps.kyno.work`
- workspace-based access with Owner, Admin, Editor, and User roles
- a persistent SQLite database at `DATABASE_URL=sqlite:////data/app.db`
- runtime variables and AES-GCM-encrypted, write-only secrets
- outbound web/API access; direct SMTP and cloud metadata are blocked
- logs, a per-app audit trail, and start/stop/destroy from the dashboard, CLI, or an agent

## Per-app limits

These are enforced, not guidance. Check them before deploying.

| Limit | Value |
|---|---|
| Application image | 512 MB |
| Runtime memory | 512 MB |
| CPU | 1 vCPU |
| Persistent data | 1 GB |
| Processes | 64 |
| Source upload | 100 MB, 5000 files, 50 MB per file |

HTTP apps sleep after 30 minutes without an authenticated request and start
again on the next request. Scheduled and webhook automations remain available
through Kyno's lightweight control-plane listeners.

**Deploys well:** Flask, FastAPI, Django (small), Express, Fastify, Hono,
Next.js with `output: 'standalone'`, admin dashboards, approval flows, SQLite
CRUD tools, scheduled reports, webhook handlers.

**Does not fit today:** pandas, numpy, or scipy; Playwright or Puppeteer; ML
inference; Postgres or Redis inside the image; Next.js without standalone output;
JVM runtimes; image or video processing.

## Application contract

An app needs a Dockerfile whose final image:

- listens on `0.0.0.0`
- uses the `PORT` environment variable (currently `8080`)
- stores persistent state under `/data`
- treats `DATABASE_URL` as its provisioned database

Only the root Dockerfile's final image runs — not every service in a monorepo.

## Current limits of the platform

- beta infrastructure: one region, one host per customer group, no high availability
  and no uptime guarantee yet
- redeploy briefly restarts the app after its replacement image is built and
  rolls back if the replacement does not answer
- app URLs currently use a Kyno-assigned subdomain and cannot be renamed
- no managed database beyond per-app SQLite
- backups and recovery are still being built and are not guaranteed; keep an
  independent copy of important data
- not suitable for high-traffic, GPU, batch, or multi-region workloads

## Getting started

Open [console.kyno.work](https://console.kyno.work/) and continue with Google or
an email magic link. Create a company, select a plan, and optionally invite a
teammate. Paid plan activation remains manual during beta.
