Open WebUI
Open WebUI is the browser-based interface most self-hosted AI chatbot setups end up wrapped in: chat history, multiple models, file uploads, and a layout that feels like ChatGPT, except every conversation stays on your own disk. On its own it doesn’t run anything; it needs a model backend to talk to. This page is a quick reference: what Open WebUI actually is, its real license, a one-line Docker install, and the features worth knowing about. For the full walkthrough, hardware sizing, and a production Docker Compose stack, see our complete Ollama + Open WebUI setup guide.
You’ll need a backend first. Open WebUI has no model runtime built in, it’s an interface, not an engine. Pair it with Ollama, our dedicated page covers what it is, its MIT license, and a one-line Docker install, though Open WebUI connects just as easily to OpenAI, Anthropic, or any OpenAI-compatible API instead. No backend running yet? Start with Ollama, then come back here.
Quick facts: Open WebUI is built by Open WebUI Inc. It started in 2023 as a small companion project for Ollama, originally called Ollama WebUI, and has since passed 145,000 GitHub stars. It’s free to self-host, run, and modify, though it isn’t a plain open-source license anymore (more on that below).
What is Open WebUI?
Strip away the feature list and Open WebUI is a web app that sits between you and one or more AI models, handling accounts, chat history, and everything that makes a model usable day to day instead of merely reachable over an API. It doesn’t much care which model is behind it: point it at a local Ollama instance, an OpenAI or Anthropic key, a llama.cpp or vLLM server, and the chat window looks the same either way. That backend-agnostic streak explains a lot of its popularity: plug in whatever you’re running, and it behaves the same either way.
Runs on: macOS, Linux (x86_64 and ARM64, including Raspberry Pi and Nvidia DGX Spark boards), and Windows, with Kubernetes available for larger deployments. The Python package supports 3.11 and 3.12; 3.13 isn’t supported yet.
The license, and why it matters
Open WebUI’s code was plain BSD-3-Clause through version 0.6.5. From 0.6.6 onward, it moved to a custom “Open WebUI License”: still BSD-3-Clause at its core, but with a clause added that prohibits removing or altering the “Open WebUI” branding in any deployment or distribution. That’s still exactly the case in the license file on the project’s GitHub repo today: current releases are well past 0.9, and the branding clause hasn’t moved an inch.
The branding clause has three carve-outs. You’re exempt if your deployment serves 50 or fewer end users within any rolling 30-day period, if you’ve gotten specific written permission from Open WebUI Inc., or if you hold an enterprise license that explicitly allows it. Outside those cases, stripping the name or logo out of a deployment counts as a license breach. None of this changes what running Open WebUI costs, still nothing, but it’s no longer an OSI-approved open-source license in the strict sense. See the official license page for the full text.
Key features at a glance
- Multi-model chat: run models side by side and switch mid-conversation
- RAG and knowledge bases: upload documents, hybrid BM25 plus vector search across nine vector databases
- Notes and Channels: a writing workspace plus persistent chat where models get tagged in directly
- Open Terminal: hand a model an actual sandboxed shell to run and fix its own code
- Extensibility: Python tools and pipelines, native MCP support, OpenAPI tool auto-discovery
- Enterprise auth: RBAC, SSO/OIDC/LDAP, and SCIM 2.0 provisioning
- Voice, image generation, and web search, all without leaving the chat window
Quick Docker install
For the full picture, security hardening, and a docker-compose.yml pairing this with Ollama, use the complete setup guide. To get Open WebUI itself running against a backend you already have:
docker run -d -p 3000:8080 -v open-webui:/app/backend/data --name open-webui ghcr.io/open-webui/open-webui:main
That pulls the official image from GitHub Container Registry (mirrored identically on Docker Hub as openwebui/open-webui) and serves the UI at http://localhost:3000. If Ollama is already running on the same machine, Open WebUI finds it automatically; otherwise, set the OLLAMA_BASE_URL environment variable to point at it.
Want one container instead of two? The :ollama image tag bundles Open WebUI and Ollama together, so a single docker run gets you both. Our Ollama + Open WebUI guide covers that variant, plus GPU passthrough and reverse-proxy security.
Open WebUI vs the alternatives
Open WebUI isn’t the only self-hosted chat front-end, and that branding clause is exactly what sends some people looking elsewhere. LibreChat is the closest comparison license-wise: plain MIT, no branding requirement, a broadly similar feature set. LM Studio sits at the other end, a polished desktop app with its own bundled model runtime, built for one person on one machine rather than a household or a team.
| Open WebUI | LibreChat | LM Studio | |
|---|---|---|---|
| License | Open WebUI License (branding clause) | MIT | Proprietary, free |
| Needs a separate backend? | Yes (Ollama, OpenAI, etc.) | Yes (same idea) | No, bundles its own runtime |
| Multi-user / RBAC | Yes, built for teams | Yes | No, single-user desktop app |
| Best for | Feature depth, RAG, agents, enterprise auth | Teams wanting a permissive license | Solo desktop use, simplest GUI |
- Backend-agnostic: Ollama, OpenAI, Anthropic, or any OpenAI-compatible API, all from one interface
- Genuinely deep feature set: RAG, notes, channels, and code execution, not just a chat box
- Built for multi-user from day one, with RBAC, SSO, and SCIM provisioning
- The branding clause means you can’t white-label it past 50 users without permission or an enterprise license
- No model runtime of its own, so it’s always a second piece of software to install and maintain
- The feature surface can feel like overkill if you just want a plain chat window
FAQ
Is Open WebUI free to use?
Yes, free to self-host, run, and modify, nothing gated behind a paywall for that. What changed with version 0.6.6 is the license text, not the price: a branding clause was added, but self-hosting still costs nothing.
Do I have to use Ollama with Open WebUI?
No. Ollama is the most common pairing, and the one our setup guide walks through, but Open WebUI connects just as easily to OpenAI, Anthropic, or local runtimes like llama.cpp and vLLM. Most homelabbers start with Ollama since it’s the simplest backend to stand up first.
Is it safe to expose Open WebUI to the internet?
Only behind proper authentication and TLS. The project’s own hardening guide describes Open WebUI as built for private, trusted networks, similar to other self-hosted infrastructure like databases and CI servers. A reverse proxy or a mesh VPN like Tailscale in front of it is the standard setup; don’t forward the port directly.
Already running a backend and just want the browser piece? Use the Docker command above. Starting from zero, our Ollama page is where to begin, and the complete Ollama + Open WebUI setup guide walks through both together with hardware sizing and security. For the wider self-hosted AI picture, n8n, Immich, and Home Assistant included, see our Best Self-Hosted AI Tools roundup. Full source is on GitHub.