Skip to content

Self-host Jan

updated Jul 2026prices checked · Jul 2026Install verified on Ubuntu 26.04 · Jul 2026 · how we test
We earn commissions when you shop through the links below. Full disclosure →

Offline-first, open-source ChatGPT alternative that runs LLMs locally on the desktop (llama.cpp based, GPU-accelerated where available), with an optional self-hosted Jan Server for OpenAI-compatible API access across a team.

Key facts

LicenseApache-2.0
StackGo
Min RAM8192 MB
Official imageyes
Difficulty
Our recommendation

Choose Jan when offline-first is the whole point — it's an Apache-2.0 app that runs LLMs locally with no account and no cloud by default, plus an optional self-hosted Jan Server for OpenAI-compatible API access across a team. It's the privacy-purist pick. If you want a browser-based, multi-user UI rather than a desktop-first app, Open WebUI is the better shape.

Follow the Jan deploy guide →

What you need

  • Any VPS with at least 8192 MB of RAM
  • A domain you control — most self-hosted setups need HTTPS in front of them
  • About an afternoon — budget time for troubleshooting
Where to host itaffiliate disclosure
Hetzner Cloudrun it on
From $23.59/mo · 2 vCPU / 4 GB / 80 GB · EU + US
Get Hetzner Cloud (opens in new tab)
Kamaterafree trial
From $4/mo · 1 vCPU / 1 GB / 20 GB · US + EU + Asia
Start free on Kamatera → (opens in new tab)
DigitalOceanalso works on
From $6/mo · 1 vCPU / 1 GB / 25 GB · US + EU + Asia
Deploy on DigitalOcean → (opens in new tab)

Paid link — we earn a commission if you shop through it.

Install

Run these commands on your server:

# Jan Server — official Docker Compose self-host (janhq/server)
sudo apt-get install -y make golang-go   # the quickstart builds a Go CLI
git clone https://github.com/janhq/server.git jan-server
cd jan-server
cp .env.template .env   # or: make quickstart for the interactive wizard
make up-full  #  or make up-gpu on NVIDIA hardware  →  http://SERVER_IP:8000

What you take on

Jan's offline-first promise is real, but it shapes what the tool is and isn't:

non-negotiableIt's desktop-first. The core Jan experience is a local app (Tauri-based, llama.cpp under it), not a web service — the self-hosted Jan Server exists for team API access, but it's a separate, younger piece to run.
non-negotiableLocal inference wants the hardware. The 8 GB minimum is a starting point; real models want more RAM and are far happier with a GPU — offline doesn't mean lightweight.
non-negotiableIt's a fast-moving project. Jan is still maturing — pin versions and read the release notes, and don't assume feature or config stability across updates.

An alternative to

More in AI Chat Interfaces

We use analytics cookies (Google Analytics, PostHog) to see which guides are useful. No ad networks, no cross-site tracking. See our privacy policy.