From zero to a running ɳSelf stack in under ten minutes. This guide walks through every step: creating an account, picking a plan, adding payment, provisioning your server, and connecting your local CLI.
brew install nself-org/tap/nselfmyco.cloud.nself.org# 1. Authenticate with Cloud
nself cloud login
# 2. Provision a new instance (5–8 min)
nself cloud create myapp --plan pro --region fsn1
# 3. Switch context to the new instance
nself cloud use myapp
# 4. Verify everything is running
nself cloud status
# 5. Run any nself command against the Cloud instance
nself status
nself logs hasura --followSign up at cloud.nself.org/signup. You can register with email and password, or continue with Google or GitHub OAuth. Accounts for users under 18 cannot purchase paid plans without a parent or guardian co-signing.
Verify your email before provisioning. The verification link is sent immediately and expires after 24 hours. Resend it from the login page if needed.
Plans map to Hetzner VPS sizes. You pay a flat management fee (covers provisioning, monitoring, updates, 24×7 alerting, and support) plus Hetzner infrastructure at published retail rates — no markup.
| Plan | Server | RAM | vCPU | SSD | Total ~ | Best for |
|---|---|---|---|---|---|---|
| Starter | Hetzner CX11 | 2 GB | 1 | 20 GB | $13.29/mo | Personal projects, staging |
| Pro | Hetzner CX21 | 4 GB | 2 | 40 GB | $26.49/mo | Small production APIs |
| Business | Hetzner CX31 | 8 GB | 2 | 80 GB | $53.99/mo | Teams of 5–20 |
| MAX | Hetzner CX41+ | 16 GB+ | 4+ | 160 GB+ | from $107.99/mo | High traffic + ɳTV Cloud |
All plans include ɳSelf+ — every paid plugin bundle is active from day one. You never pay separately for plugin licenses on Cloud.
Yes. Upgrades take effect at the next maintenance window and resize your Hetzner VPS live. Downgrades apply at the end of the current billing cycle. See Billing for proration details.
ɳSelf Cloud uses Stripe for all billing. Enter a credit or debit card, choose monthly or annual billing (annual saves roughly 17%), and confirm. You receive an email receipt immediately.
Your Stripe customer portal is always available from Dashboard → Settings → Billing. From there you can update cards, download PDF invoices, and update your billing address. We never store raw card numbers.
From the Cloud dashboard, click New Server. You will be prompted for:
myapp, resulting in myapp.cloud.nself.org. Or bring your own domain — point a CNAME at myapp.cloud.nself.org first, then enter it here.fsn1 (Falkenstein DE), hel1 (Helsinki FI), ash1 (Ashburn VA), or sin1 (Singapore).Or provision from the CLI:
# Provision from CLI (5–8 minutes)
nself cloud create myapp --plan pro --region fsn1
# With plugins pre-installed
nself cloud create myapp --plan business --region fsn1 --plugins ai,mux,claw
# With a custom domain
nself cloud create myapp --plan starter --region hel1 --domain api.mycompany.comThe control plane then runs this 8-step pipeline automatically:
running statenself init/health until all services return 200You can watch each step complete in real-time on the server detail page. Total time is 5–8 minutes for a default stack, up to 12 minutes if you selected every plugin bundle.
The welcome email contains:
admin.<your-domain>Log in to the admin console and verify all services are healthy. Then connect your local CLI:
# Authenticate with Cloud
nself cloud login
# Switch to your new instance
nself cloud use myapp
# Confirm context is set
nself cloud context
# → Active: myapp (myapp.cloud.nself.org)
# Run nself commands — they target the Cloud instance
nself status
nself logs hasura
nself plugin listYour Cloud instance exposes the same endpoints as a self-hosted stack:
# Endpoints for your instance
API: https://myapp.cloud.nself.org/graphql
Auth: https://myapp.cloud.nself.org/auth
Storage: https://myapp.cloud.nself.org/storage
Console: https://myapp.cloud.nself.org/console # Hasura console
# Pull env vars into your local project
nself cloud exec myapp -- nself env export > .env.cloudIf provisioning stalls or fails, the dashboard shows the exact step and error. Common causes:
| Error | Cause | Fix |
|---|---|---|
| Hetzner capacity error | Region at capacity | Pick a different region or retry in 5 min |
| Subdomain conflict | Name already taken | Choose a different subdomain |
| SSL timeout | DNS propagation lag | Wait 2 min and click Retry |
| Plugin install error | Transient registry hiccup | Click Retry |
If retry does not resolve the issue, open a support ticket from the dashboard. Provisioning failures are never billed — if your server never reached the health check step, no charge is recorded.
nself cloud commands