Open WebUI vs LibreChat: The Licence Is the Decision
September 5, 2026

If you're comparing Open WebUI and LibreChat on features, you'll go round in circles. Both are mature, both self-host with Docker, both route to any OpenAI-compatible provider, both run agents, both speak MCP, both have role-based access control. The feature lists have converged to the point where whichever one you read second looks like a copy of the first.
The difference that actually decides it is the licence, and it only bites at a specific size.
- LibreChat is MIT. Rebrand it, resell it, embed it. No conditions beyond keeping the notice.
- Open WebUI is BSD-3 with an added branding clause. Below fifty users you can do essentially anything. Above fifty, removing its branding is a material breach.
Everything else is a preference. That one is a constraint.
Quick comparison
| Open WebUI | LibreChat | |
|---|---|---|
| Licence | BSD-3 plus a branding clause | MIT |
| Rebranding at scale | Restricted above 50 end users in 30 days | Unrestricted |
| Extension model | Filters, Actions, Pipes, Tools, Skills, plus MCP and OpenAPI tool servers | Agents, Skills, MCP, Code Interpreter, Agent Plugins |
| Notable extras | Granular RBAC and user groups, community preset imports | Sandboxed multi-language Code Interpreter, subagents, scheduled chats |
| Offline story | Built to run entirely offline | Runs offline against a local endpoint |
| Install | pip, uv, Docker, Kubernetes | Docker, plus one-click deploys on several hosts |
Read the Open WebUI licence clause properly
It deserves quoting accurately rather than paraphrasing, because most write-ups either miss it or overstate it.
Open WebUI's licence file adds a fourth clause to the standard BSD-3 terms. It prohibits altering, removing, obscuring or replacing any "Open WebUI" branding — name, logo, or other visual, textual or symbolic identifiers — in any deployment or distribution, with three exceptions: deployments where the total number of end users, meaning individual people with direct access to the application, stays at or below fifty in any rolling thirty-day period; where you have specific prior written permission; or where you hold an enterprise licence permitting it.
What that means in practice:
- Personal or small-team use: unaffected. Use it, modify it, run it however you like.
- Company deployment under fifty people: also fine, branding included or removed.
- Company deployment above fifty, with your own logo on it: you need permission or an enterprise licence.
This is a reasonable thing for a maintainer to do, and it is not the same as "not open source" — the code is public and modifiable. But if your plan involved shipping it to a few hundred colleagues under your own name, find that out now rather than after the rollout.
LibreChat has no equivalent condition.
Where they genuinely differ on capability
Two things stand out beyond the licence.
LibreChat's Code Interpreter is unusually broad. It runs sandboxed execution across Python, Node.js, Go, C/C++, Java, PHP, Rust and Fortran, with file upload and download in the loop, and it's self-hostable. If your users need code execution rather than code generation, that's a substantial head start.
Open WebUI's extension surface is more granular. Filters, Actions, Pipes, Tools and Skills are separate primitives with separate hook points, which is more to learn and more precise once learned. It also leans harder on RBAC and user groups, with per-group permissions and tailored experiences — the shape you want if you're serving several teams with different access from one instance.
Both support MCP, so the servers you've already set up should follow you either way. Our guide to MCP clients covers what to check before assuming that.
The part that's the same, and it's the important part
Neither of these makes your AI local. Both are interfaces. Point either at OpenAI, Anthropic or Google and your prompts go to OpenAI, Anthropic or Google — self-hosting the front end changes nothing about that.
To keep data on your infrastructure you need a local model behind it, which means Ollama, LM Studio's runtime, vLLM or similar. Our comparison of the local runners covers how those differ, including the fact that both of the popular ones now have a cloud path of their own.
Where Taku fits
Both of these ask you to run infrastructure: a container, a reverse proxy, updates, backups, and a decision about where the model lives. That's a fair trade for control, and it's also the point where a lot of people stop.
Taku is the other shape — a desktop workspace that mirrors an AI setup someone already got working and runs it, without a server to maintain. If you've been meaning to self-host something for eight months and haven't, that gap is the one it's aimed at. Browse the free apps to see what that looks like. Taku is in Beta, and the Mac app is available now.
FAQ
Is Open WebUI still open source?
The source is public and you can modify and redistribute it. It is not, however, an OSI-standard BSD-3 licence any more — the added branding clause restricts one specific use above fifty end users. Whether that meets your definition of open source is a judgement call; whether it applies to you is a factual one, so check your user count.
Which is easier to set up?
Both are a Docker command away for a basic instance. Open WebUI offers more install paths including pip, uv and Kubernetes. The difficulty in both cases arrives later, with authentication, TLS and upgrades.
Can I use them without a cloud API key?
Yes. Point either at a local model server and no key is needed. That's the standard pairing for people who want a private setup.
Which one has better agents?
They're different rather than ranked. LibreChat leans into agent orchestration with subagents, human-in-the-loop pauses and scheduled runs. Open WebUI leans into wrapping models with instructions, tools and knowledge, with access control per user and group.
Do I need both?
No, and running both is mostly duplicated maintenance. Pick on the licence question first, then on whether you need sandboxed code execution or granular team permissions.