Have Open WebUI or Onyx operated in Germany? WZ-IT takes over hosting and operations for Open WebUI and Onyx: updates, backups, monitoring and the connection to models. Teams under professional secrecy will also find Open WebUI as the AI platform. Book an initial consultation
Open WebUI and Onyx are often mentioned in the same breath but solve different tasks. Open WebUI is a self-hosted chat interface for language models with knowledge bases. Onyx, formerly Danswer, is a platform for enterprise search and RAG with connectors to business systems and, in the Enterprise Edition, reconciliation of document permissions. The central question is therefore: a chat platform with knowledge bases, or enterprise search across Confluence, SharePoint, Jira, Slack and further systems with document permissions?
This article compares both by the criteria that matter in operation. All figures come from the GitHub API, license files, source code and vendor documentation, as of 21 October 2026.
For the comparison against further platforms, see Open WebUI vs. LibreChat and Open WebUI vs. AnythingLLM, plus the overview Open-source AI chat platforms compared.
Table of contents
- Short answer
- Basic data
- License and branding
- Deployment and architecture
- Sign-in, SSO and provisioning
- Permissions, groups and document permissions
- Connectors, index and knowledge base
- Models and providers
- Agents, MCP and code
- Telemetry and data flow
- Security advisories of the last twelve months
- Vendor, support and costs
- Which platform for which use case
- Common misconceptions
- Data and methodology
- How WZ-IT works
- Further guides
- Sources
Short answer
| Open WebUI | Onyx | |
|---|---|---|
| Focus | Chat interface for language models with knowledge bases | Enterprise search and RAG with connectors to business systems |
| License | Open WebUI License (BSD-3-Clause plus branding clause), not OSI-compliant | MIT outside the ee directories, Onyx Enterprise License inside them |
| Connecting sources | File selection from Google Drive and OneDrive/SharePoint; oikb (separate MIT project) with 40+ sources | 56 tiles in the documentation overview |
| Document permissions of the sources | not part of Open WebUI according to its docs; ACLs on knowledge bases | Permission sync for 14 connectors, only in the license-bound Enterprise Edition |
| Index and search | Hybrid search (BM25 and vector), reranking, 13 vector databases | Hybrid index on OpenSearch, optional reranking |
| Operations | one container, SQLite and embedded ChromaDB | Lite (5 services) or Standard (including PostgreSQL, OpenSearch, Redis, SeaweedFS) |
| Sign-in | OAuth/OIDC, LDAP, trusted header, SCIM; SAML via proxy | Google OAuth, OIDC, SAML 2.0, JWT header; SCIM Enterprise only; no LDAP in the docs |
| Telemetry | disabled in the Docker image | on by default, DISABLE_TELEMETRY |
| Security advisories (12 months) | 163, of which 1 critical | 4, of which 1 critical |
| Vendor | Open WebUI Inc. | DanswerAI, Inc. |
Rule of thumb: Open WebUI when the chat with models is the focus and knowledge bases are built from files, drive selection or a sync tool such as oikb. Onyx when business systems such as Confluence, SharePoint, Jira or Slack are connected and search results should respect the access rights of the sources; this permission reconciliation belongs to the Enterprise Edition.
Basic data
| Open WebUI | Onyx | |
|---|---|---|
| Repository | open-webui/open-webui | onyx-dot-app/onyx |
| Latest stable version | 0.12.3 (16 Oct 2026) | 4.9.2 (15 Oct 2026); alongside 5.0.0-beta.1 (17 Oct 2026) and 5.0.0-beta.2 (20 Oct 2026, prerelease) |
| GitHub stars | about 156,400 | about 32,700 |
| Archived | no | no |
| Activity | last push 21 Oct 2026; 0.12.0 to 0.12.3 between 10 and 16 Oct 2026 | last push 21 Oct 2026; Helm chart 0.9.18 from 20 Oct 2026 |
| Vendor | Open WebUI Inc. | DanswerAI, Inc. (copyright line of the LICENSE) |
| Desktop app | own repository, AGPL-3.0, early alpha | listed among the deployment options |
Until the end of 2024, Onyx was called Danswer. The rename appears in the repository history as the commit "welcome to onyx" from 13 Dec 2024. The documentation already mentions "Onyx 5.0" (MCP under plugins), although on 21 October 2026 only the beta 5.0.0-beta.2 exists; the stable version is 4.9.2. The documentation runs ahead of the release.
License and branding
Onyx is mixed-licensed. According to the LICENSE, everything outside the ee directories is under "MIT Expat". The contents of the directories backend/ee, web/src/app/ee and web/src/ee are under the Onyx Enterprise License. It permits production use only with Onyx Subscription Terms or a valid enterprise license for the correct number of seats. Copying and modifying for development and testing is allowed without a subscription; redistribution is prohibited. GitHub shows the license as NOASSERTION, the README badge shows "MIT". Commercial use of the MIT part is free. User limits arise only through the seat count of the subscription, and white-labeling is a feature of the Enterprise Edition.
According to the Enterprise Edition documentation, the Enterprise Edition includes:
- OIDC and SAML (the plan assignment is contradictory, see section Sign-in)
- Permission-syncing connectors
- White-labeling
- User groups and RBAC as well as group-based permissions from v4.7 (custom groups and configurable group permissions)
- Usage analytics (plan assignment see section Permissions)
- Encrypted secrets, EE APIs and hook extensions
The EE features are license-bound. Which of them sit in the Business plan and which in the Enterprise plan is assigned partly differently by the billing page, the pricing page and the code. According to license_enforcement_config.py, query history, usage report, analytics, service account keys, groups/RBAC and gateway are on tier BUSINESS, while SCIM, hooks, log export and token rate limits are on ENTERPRISE. The billing page and the pricing page list "Inherit Document Permissions" and "Permission Inheritance" in the Business plan (USD 20); the billing docs name "Self-hosting (Optional)" under Business, while the pricing page lists "On-Premise Deployments" under Enterprise. In this article, "Enterprise Edition only" means a license-bound EE feature, not the Enterprise plan.
Onyx Cloud contains all Enterprise Edition features. At Onyx, the license boundary runs along individual features, not along the installation. The LICENSE was last revised on 14 Feb 2026 (commit note "No change, just touchup"); the repository history shows "Initial EE features" from 3 Oct 2023 and "Prepare EE to merge with MIT" from 15 Feb 2024.
Open WebUI has been under the Open WebUI License since version 0.6.6: BSD-3-Clause plus clause 4. The clause prohibits changing, removing, obscuring or replacing the "Open WebUI" branding. Three cases are exempt:
| Exception | Condition |
|---|---|
| Small deployment | no more than 50 end users within any rolling 30-day period |
| Permission | prior written permission from the rights holder |
| Enterprise license | signed enterprise license with the corresponding permission |
With unchanged branding, the license page states that use is also permitted commercially, with no user cap for internal deployments. White-label, co-branding and a mere "Powered by Open WebUI" require an enterprise license. The Terminals service for Open Terminal sits in its own repository under the Open WebUI Enterprise License and may be used in production only with a license. GitHub shows the license as NOASSERTION ("Other"). The companion projects oikb and Open Terminal are under MIT, the desktop app under AGPL-3.0. The license history: MIT up to version 0.5.4, BSD-3-Clause from 0.5.5 to 0.6.5, the Open WebUI License from 0.6.6; code up to and including 0.6.5 remains under BSD-3-Clause. Details are in the article Open WebUI license and branding.
The difference in essence: with Open WebUI the restriction applies to the branding, with Onyx to individual features.
Deployment and architecture
| Open WebUI | Onyx | |
|---|---|---|
| Recommended path | Docker, one container | Docker Compose, Kubernetes/Helm (chart onyx/onyx), Terraform modules (AWS, GCP, Azure), Onyx CLI |
| Services in Standard | no further services: SQLite and embedded ChromaDB | api_server, background (worker), web_server, mcp_server, inference_model_server, indexing_model_server, PostgreSQL 15.2, OpenSearch 3.6.0, Redis 7.4, SeaweedFS, nginx, code-interpreter (can be disabled) |
| Lite mode | not applicable, the standard setup needs no further services | 5 services; PostgreSQL handles files, cache and sessions; no indexing of documents |
| Minimum values per docs | not stated as a minimum; the Docker docs give about 300 MiB RAM at idle (slim image, explicitly not a minimum requirement), the development docs at least 4 GB RAM for the frontend build | Lite: 2 vCPU, 2 GB RAM, 10 GB (recommended 4 vCPU, 4 GB, 50 GB); Standard: 4 vCPU, 10 GB RAM, 32 GB plus about 2.5 times the indexed data (recommended 8+ vCPU, 16+ GB RAM) |
| Helm | Helm chart available | defaults add up to about 12 CPU and 24 GB |
| GPU | optional (:cuda image) for the built-in embedding, reranking and Whisper models, which run on the CPU by default; otherwise only for local LLMs |
recommended for self-hosted embedding models |
Open WebUI starts without external services; the bundled :ollama image additionally contains Ollama. According to the scaling documentation, the embedded ChromaDB (default) is not suitable for multiple workers or replicas; anyone scaling horizontally switches to PGVector, Milvus or Qdrant.
For multiple instances, Open WebUI needs PostgreSQL, an external vector database, Redis and shared file storage.
According to the resource documentation, Onyx has two modes: Lite uses under 1 GB of memory at baseline and starts five services, but does not index documents. Anyone who wants to index documents from connectors runs Standard mode with OpenSearch as the document index. Vespa was gradually replaced by OpenSearch from version 3; the README still mentions MinIO, while the Compose file uses SeaweedFS as object store.
Sign-in, SSO and provisioning
| Method | Open WebUI | Onyx |
|---|---|---|
| Email and password | yes, first account becomes administrator | active by default, first user becomes admin; can be disabled from v4.5 (and from 4.4.5 in the 4.4 series) |
| OAuth/OIDC | Google, Microsoft, GitHub, generic OIDC | Google OAuth and OIDC in the admin panel (Organization, SSO Providers) |
| SAML | not native, via trusted-header proxy | SAML 2.0 in the admin panel, not in Onyx Cloud |
| LDAP/Active Directory | yes | not present in the docs |
| Trusted header / JWT | trusted header (oauth2-proxy, Authentik, Authelia, Cloudflare Access) | JWT header sign-in (JWT_PUBLIC_KEY_URL) in the Community Edition |
| SCIM 2.0 | yes, via environment variables | yes (tested with Okta and Entra ID), Enterprise only |
For Open WebUI, the documentation does not mark any of the sign-in methods as an enterprise feature, while the README lists LDAP, SSO and SCIM under the heading "Enterprise Authentication & Provisioning". According to the Open WebUI comparison page, a SAML connection runs through a trusted-header proxy that terminates SAML. The documentation on SCIM describes setup exclusively through environment variables.
In Onyx, SSO providers have been configurable only in the admin panel since v4.4.0; according to the docs, multiple providers at the same time are available from Business. The vendor's statements contradict each other here: the SSO page states "Configuring a single SSO provider is available on every plan". The Enterprise Edition page and the pricing page list OIDC and SAML SSO as an Enterprise feature. A third statement contradicts both: the security FAQ says "SAML and OIDC are supported as part of the Community and Enterprise Editions" and still lists SCIM as a roadmap item; it is therefore recognizably older. Which statement applies to a self-operated Community image is unresolved. According to the docs, SCIM is an Enterprise feature ("This feature requires an Enterprise plan").
Permissions, groups and document permissions
The question of who sees which documents in an answer is where the two platforms differ the most.
| Open WebUI | Onyx | |
|---|---|---|
| System roles | admin, user, pending | default groups Basic and Admin, Group Manager (scoped) |
| Permission model | roles, permissions (feature switches), groups; additive, nested groups | group-based since v4.7; custom groups and configurable group permissions Enterprise Edition only |
| Access to knowledge | ACLs for knowledge bases, sharing with groups and users | connectors with the access types Private, Public and Auto-Sync-Permissions; search results respect document access |
| Reconciliation of source permissions | not part of Open WebUI according to its docs | permission sync for 14 connectors, only in the license-bound Enterprise Edition |
| Access to agents and models | ACLs for private models | custom agents, shareable with groups |
| Audit log | AUDIT_LOG_LEVEL from NONE to REQUEST_RESPONSE, default NONE |
JSON event stream (logger onyx.audit) for SIEM from v4.3, always on, docs without plan note |
| Usage statistics | admin analytics (messages, tokens, activity), can be disabled | usage analytics and query history |
The 14 connectors with permission sync in Onyx: Confluence, Jira, Google Drive, Gmail, Slack, Salesforce, GitHub, Box, Canvas, SharePoint, Teams, Outlook, Zoom and YouTrack. The docs state: "Permission-syncing connectors are an Enterprise Edition feature." Without a vendor license, an Onyx deployment remains with the access types Private and Public per connector.
In Open WebUI, the application's permission model applies: a knowledge base receives access rights for groups and users (roles and permissions documentation); access applies to the knowledge base as a whole. The Open WebUI comparison page explicitly calls automatically mirrored permissions from Slack, Drive or Confluence "Not a current Open WebUI feature". For oikb as well, permission sync is not described in the README, docs/guide.md and source code; oikb works with the user's API key and does not bypass the knowledge base's access control. Anyone who mirrors documents from Confluence or SharePoint into an Open WebUI knowledge base sets up the access rights on the knowledge base. Further permission features of Open WebUI: only administrators create MCP servers, which can then be restricted by ACL; administrator access to chats and the export can be disabled, and temporary chats can be enforced.
For the audit log, the Onyx event stream is always on according to the audit page, while in Open WebUI AUDIT_LOG_LEVEL defaults to NONE. Whether the Onyx event stream is active in the Community Edition has not been checked.
For usage analytics and query history, the vendor's statements initially contradicted each other: the feature page marks them as Enterprise, while the billing page lists them under Business. The code (license_enforcement_config.py) assigns query history, usage report and analytics to tier BUSINESS.
Connectors, index and knowledge base
Connecting sources
| Open WebUI | Onyx | |
|---|---|---|
| Included integrations | file selection from Google Drive and OneDrive/SharePoint | documentation overview with 56 tiles (70 individual pages including variants) |
| Further sources | oikb: separate MIT project, knowledge bases from 40+ sources (GitHub, Confluence, Jira, Slack, SharePoint, Notion and more) | Confluence, SharePoint/OneDrive, Notion, Google Drive, Gmail, Slack (indexed and federated), Teams, GitHub, GitLab, Bitbucket, Jira, Zendesk, Salesforce, HubSpot, Dropbox, Box, S3, web crawler |
| Files | extraction engines Tika, Docling, Document Intelligence, Mistral OCR, PaddleOCR-vl, external loaders | file connector: txt, pdf, docx, pptx, xlsx, csv, md, mdx, conf, log, json, tsv, xml, yml, yaml, eml, epub, zip |
| Reconciliation of source permissions | not part of Open WebUI according to its docs | 14 connectors, only in the license-bound Enterprise Edition |
| Web search | docs with 28 entries in the provider folder (SearXNG, Brave, Google PSE, Tavily, Exa, Kagi and more) | Serper, Exa, Brave, Google PSE, SearXNG, Firecrawl; own crawler |
The vendor's figures for the number of Onyx connectors differ: the pricing page says 40+, the README 50+, and the documentation overview shows 56 tiles. This article uses the countable figure, 56 tiles as of 21 Oct 2026. For Open WebUI, the README names "45+ sources" for oikb, the oikb README 47 supported sources and the Open WebUI docs 44 connectors.
Index and search
| Open WebUI | Onyx | |
|---|---|---|
| Architecture | in the core of the application | hybrid index (vector plus keyword) on OpenSearch |
| Vector databases | 13 per the environment variable docs (README: 9): ChromaDB (default), PGVector, Milvus, Qdrant, Elasticsearch, OpenSearch, Weaviate and more | OpenSearch as document index |
| Search | hybrid of BM25 and vector, reranking with CrossEncoder, full-text mode | hybrid; reranking optional (search configuration) |
| Embeddings | configurable in the core | model selectable: cloud providers such as Cohere or Google, or self-hosted (GPU recommended) |
Open WebUI provides the settings for search and extraction in the application itself and leaves the choice of vector database open. Onyx uses a hybrid index on OpenSearch and ships the connectors to fill it. Anyone choosing a cloud embedding model checks the data flow to the respective provider.
Models and providers
| Provider | Open WebUI | Onyx |
|---|---|---|
| Ollama, LM Studio, vLLM, llama.cpp | yes, directly or via OpenAI-compatible URL | Ollama and LM Studio as built-in integrations; vLLM per README |
| OpenAI and Azure OpenAI | yes | yes |
| Anthropic | via OpenAI-compatible endpoint | yes |
| via OpenAI-compatible endpoint, tool calling differs | Google Vertex AI (Gemini) | |
| AWS Bedrock | via OpenAI-compatible interfaces: Bedrock Access Gateway, stdapi.ai, LiteLLM or AWS Bedrock Mantle (AWS's own endpoint, no installation of your own) | Amazon Bedrock |
| Others | Open Responses | OpenRouter, LiteLLM Proxy, Bifrost, any OpenAI-compatible provider |
According to the FAQ, Onyx can be fully air-gapped as long as a local model runs. In Open WebUI, OFFLINE_MODE disables the update check, automatic model downloads and plugin package installation; connections to models and external services remain. Models operated in Germany are connected to both via an OpenAI-compatible URL, for example through LLM hosting.
Agents, MCP and code
| Open WebUI | Onyx | |
|---|---|---|
| Extensions | Filters, Actions, Pipes, Tools, Skills (Python on the server) | custom agents (shareable with groups), Deep Research, plugins (MCP client, OpenAPI, Craft apps) |
| MCP as client | since 0.6.31, Streamable HTTP, OAuth 2.1; can be added by administrators only | via plugins; MCP catalog includes Slack, HubSpot, Asana, Linear, Notion, Sentry, Atlassian (docs describe this under Onyx 5.0) |
| MCP as server | not documented (bridge MCPO) | yes, with OAuth, for Claude Code, Codex and ChatGPT |
| Code execution | Pyodide and Jupyter are considered legacy; Open Terminal (MIT); Terminals (Enterprise) | code interpreter (Python sandbox without network) |
| Images | OpenAI DALL-E, Gemini, ComfyUI, AUTOMATIC1111 | five models via OpenAI, Azure and Vertex |
| Voice | STT and TTS, voice and video call mode | Voice Mode (STT and TTS) |
| Further features | memory, artifacts (HTML, SVG, JavaScript, Mermaid) | Craft (sandbox coworker), coding agent, Slack and Discord bot, Chrome extension, website widget, projects; memory mentioned only in passing in the docs (incognito chats do not write to memory; security hardening, changelog), no dedicated feature page |
| API | OpenAI-compatible (/api/chat/completions), docs call it "experimental" |
own REST API with bearer token (service account key or personal access token); LLM gateway with OpenAI and Anthropic endpoints: the gateway page says Enterprise, the billing page and the code assign it to the Business plan |
The API documentation describes a REST API with JSON and SemVer. The gateway page calls the LLM gateway an Enterprise offering; the billing page and the code (configs.py) assign it to the Business plan. Onyx additionally acts as an MCP server; for Open WebUI this role is not described in the docs.
Telemetry and data flow
| Open WebUI | Onyx | |
|---|---|---|
| Vendor telemetry | the Docker image sets SCARF_NO_ANALYTICS=true, DO_NOT_TRACK=true and ANONYMIZED_TELEMETRY=false (not checked for pip installation) |
on by default; can be disabled with DISABLE_TELEMETRY=true |
| Storage location | SQLite or PostgreSQL, files local or S3, GCS, Azure Blob | PostgreSQL, OpenSearch (index), SeaweedFS (object store) |
Onyx 4.9.2 sends an anonymous usage payload (including customer_uuid, user_id, record, data) to telemetry.onyx.app; in the Enterprise Edition instance_domain is added, the email domain of the first user. The beta versions 5.0.0-beta.1 and 5.0.0-beta.2 additionally contain Fleet Telemetry, introduced with a commit from 9 Oct 2026, at an interval of 5 minutes and also disabled through DISABLE_TELEMETRY. According to fleet-telemetry.md in the repository, it covers resource, queue and heartbeat data, query events (channel, mode, outcome, timing, error category, tool usage, LLM cycles), indexing counters, connector settings, tenant_domain (domains of sign-up emails) and the presence of a license. According to the documentation, names, paths, URLs, email addresses, user IDs, document content, query text and error messages are never sent.
In Open WebUI, ENABLE_VERSION_UPDATE_CHECK is on by default; OFFLINE_MODE disables the update check, automatic model downloads and plugin package installation, and OpenTelemetry runs only with ENABLE_OTEL.
The Onyx 4.9.2 telemetry code is in telemetry.py, Fleet Telemetry in fleet_telemetry.py. There is no dedicated page on telemetry in the product docs. It is mentioned in the security pages (data processing, FAQ), in the changelog (v4.5.0: daily version heartbeat) and in the DISABLE_TELEMETRY entry of the configuration list; the 5.0 beta's Fleet Telemetry is described in deployment/fleet-telemetry.md in the repository. In isolated environments, DISABLE_TELEMETRY=true belongs in the base configuration of Onyx, in addition to firewall rules for outbound connections.
Security advisories of the last twelve months
Published GitHub security advisories from 21 Oct 2025 to 21 Oct 2026:
| Open WebUI | Onyx | |
|---|---|---|
| Advisories total | 163 | 4 (5 published in total) |
| critical | 1 (LDAP sign-in with empty password, CVE-2026-44551) | 1 (cross-user OAuth token leak via /api/mcp/servers* with per-user MCP servers, CVE-2026-71424, 20 Jul 2026) |
| high | 70 | 0 |
| medium | 85 | 3 (curator IDOR on group membership CVE-2026-63178; file IDOR /chat/file/{id} CVE-2026-42277; stop-chat-session IDOR CVE-2026-42276) |
| low | 7 | 0 |
| Distribution | 62 between 4 and 11 May 2026, 28 in August, 26 in September | 2 on 20 Jul 2026, 2 on 29 Apr 2026 |
| Focus areas (keyword count, slightly varying with the keyword list) | XSS 21 to 26, sign-in/OAuth/LDAP 14 to 15, SSRF 13, hangs/DoS 17 to 19 | IDOR 3, MCP 1 |
The number says nothing about the quality of a project. It shows how much was reported and published and depends on size, attack surface and reporting culture. Only published advisories are counted, not all fixed flaws, for example fixes without an advisory. Earlier, Onyx had one critical report on Slack bot tokens (CVE-2024-32881, 24 Apr 2024). In its documentation, Open WebUI additionally provides 26 assessments of third-party CVEs, for example "Rejected, not a vulnerability".
The critical report concerned the LDAP sign-in for Open WebUI and access between users via MCP servers for Onyx. Three of the four Onyx reports concern access between users (IDOR). The same applies to both platforms: apply updates promptly, release MCP servers and external tools only to administrators, and do not expose the instance to the internet without sign-in.
Vendor, support and costs
| Open WebUI | Onyx | |
|---|---|---|
| Vendor | Open WebUI Inc. | DanswerAI, Inc. |
| Software | free with unchanged branding | MIT part free |
| Commercial offering | enterprise license for white-label and Terminals, support with an account manager | Onyx Cloud (2 weeks free, no credit card); Business at USD 20 per user and month with annual billing, also for self-hosted use via the admin panel with Stripe and a signed license; Enterprise |
| Enterprise | price not public, request with seat count | on request: OIDC/SAML SSO, on-premises, regional deployments, white-labeling, hook extensions, SLA |
| Isolated operation | OFFLINE_MODE |
air-gap with a manual license file |
The Onyx pricing page lists for Business 40+ connectors, RBAC, permission inheritance, secret encryption, query history, basic auth and Google OAuth. Arithmetically, USD 20 per user and month for 100 users comes to USD 2,000 per month, or USD 24,000 per year with annual billing. The Open WebUI enterprise license has no public price; the enterprise page asks for a request with seat count and grants licenses only to registered organizations. Vendor support is consulting, not implementation work; the partner program is generally aimed at companies older than five years. Both programs carry no license fee for self-installation without enterprise features. Operating costs arise from hosting, updates, backups, monitoring and the connection to models; for Onyx in Standard mode, additionally from the resource demand of the index.
Which platform for which use case
| Use case | Best fit | Points to note |
|---|---|---|
| Chat with models, knowledge bases from files or drive selection | Open WebUI | Branding clause; multi-instance operation needs PostgreSQL, Redis and a vector database |
| Search across Confluence, Jira, SharePoint and Slack with the access rights of the sources | Onyx with vendor license | Permission sync for 14 connectors is Enterprise Edition only |
| Connecting many sources, access rights of the sources are not carried over | Onyx (56 tiles) or Open WebUI with oikb (40+ sources) | Access is set anew in the application: ACLs on the knowledge base in Open WebUI, Private/Public per connector in Onyx |
| Smallest operating form | Open WebUI | the embedded ChromaDB is not suitable for multiple workers; Onyx Lite does not index documents |
| LDAP sign-in | Open WebUI | Onyx: LDAP not present in the docs |
| SAML without an additional service | Onyx | plan assignment contradictory; Open WebUI via proxy |
| SCIM | Open WebUI (no enterprise marking in the docs) | Onyx Enterprise only |
| Custom groups for permissions | Open WebUI | Onyx Enterprise Edition only |
| Audit event stream for SIEM | Onyx | activation in the Community Edition not checked; Open WebUI default NONE |
| Access from Claude Code, Codex or ChatGPT to the platform | Onyx as MCP server | Open WebUI as MCP server not documented |
| Operation without a GPU | both possible | Open WebUI: the built-in models then run on the CPU; Onyx: GPU recommended for self-hosted embeddings |
| White-labeling | both only with a vendor license | Open WebUI: enterprise license; Onyx: Enterprise Edition |
Common misconceptions
- "Onyx is entirely MIT-licensed." No. The ee directories are under the Onyx Enterprise License, and GitHub shows NOASSERTION. The README badge shows only "MIT".
- "Onyx has permission sync in the free edition." No. The docs list permission-syncing connectors as an Enterprise Edition feature.
- "Open WebUI carries over document permissions from Confluence or SharePoint." Not part of Open WebUI according to its docs. Access is controlled by groups and ACLs on the knowledge base.
- "Open WebUI and Onyx are interchangeable." Both offer chat, agents and knowledge bases. Onyx brings connectors and a hybrid index on OpenSearch, Open WebUI a broad user administration and operation as a single container; the focus differs.
- "Onyx has 50+ connectors." The vendor's figures say 40+ (pricing page) and 50+ (README), and the documentation overview shows 56 tiles.
- "Onyx runs on Vespa." Vespa was replaced by OpenSearch from version 3.
- "Self-hosted means nothing goes to the vendor." Onyx sends anonymous telemetry by default, which can be disabled with
DISABLE_TELEMETRY=true. - "Danswer and Onyx are different projects." It is the same project; the rename appears in the repository history as a commit from 13 Dec 2024.
Data and methodology
As of: 21 October 2026. The data basis is the GitHub API (license, version, stars, published security advisories), the LICENSE files of the repositories including backend/ee/LICENSE, the Open WebUI and Onyx documentation, the source code of the Onyx telemetry modules and the Onyx pricing page. Stars are rounded and change daily. Statements such as "not found in the docs" or "not documented" mean that the documentation does not describe the feature; the function may exist in the code. The advisories cover the period from 21 October 2025 to 21 October 2026; the focus areas are a keyword count of the titles. The Onyx features were not tested in a test installation.
Contradictions in the vendors' statements that this article does not resolve:
- Onyx, SSO plan: The SSO page names one SSO provider on every plan; the Enterprise Edition page and the pricing page list OIDC/SAML as an Enterprise feature; the older security FAQ lists SAML and OIDC in the Community Edition.
- Onyx, number of connectors: 40+ (pricing page), 50+ (README), 56 tiles and 70 individual pages in the documentation overview.
- Onyx, plan assignment: Usage analytics and query history are Enterprise on the feature pages and Business on the billing page and in the code (
license_enforcement_config.py); the code thereby resolves the contradiction. The gateway page calls the LLM gateway Enterprise, the billing page and the code Business. The audit page names no plan. "Self-hosting" appears under Business in the billing docs, "On-Premise Deployments" under Enterprise on the pricing page. - Onyx, version: The docs describe Onyx 5.0, while 4.9.2 is stable. Fleet Telemetry exists only in the 5.0 beta versions.
- Open WebUI, vector databases: 13 per the environment variable docs, 9 per the README.
For Open WebUI, the telemetry defaults are documented only for the Docker image. The statement that Open WebUI has no reconciliation of document permissions rests on the Open WebUI comparison page on Onyx and on the README, docs/guide.md and source code of oikb; it is a finding from documentation and source code, not a test.
Tables and figures may be reused with attribution and a link to this article.
How WZ-IT works
WZ-IT operates Open WebUI and Onyx as a hosting and operations offering in Germany: updates, backups, monitoring and the connection to models. For Open WebUI, the original branding remains visible, and WZ-IT does not present Open WebUI as its own product; we clarify the license questions on user numbers and branding before rollout. As the AI platform, Open WebUI is available with models operated in Germany by German providers, SSO and a Section 203 supplementary agreement.
For Onyx, WZ-IT operates the freely licensed edition (MIT outside the ee directories). Features under the ee directories, for example permission sync, SCIM, custom groups and white-labeling, are not part of the offering. WZ-IT supports the procurement of a vendor license on request. Whether reconciliation of document permissions is required decides between the two platforms and whether a vendor license is needed for Onyx. Models operated in Germany can be connected through LLM hosting.
Further guides
- Open WebUI vs. LibreChat, the comparison of two chat interfaces.
- Open WebUI vs. AnythingLLM, the comparison with the third widespread platform.
- Open-source AI chat platforms compared, all platforms at a glance.
- Onyx self-hosted: installation, licensing and comparison with Open WebUI, setup and editions.
- Synchronize the Open WebUI knowledge base automatically, connecting sources with oikb.
- Open WebUI license and branding, the clause in detail.
- AI platforms for businesses compared, hosted offerings by GDPR and Section 203.
Choose or have Open WebUI or Onyx operated? We classify sources, document permissions, sign-in and models and operate both platforms in Germany. Book an appointment
Sources
- Open WebUI, repository
- Open WebUI, LICENSE
- Open WebUI Terminals, LICENSE
- Open WebUI oikb, repository
- Open WebUI oikb, LICENSE
- Open WebUI Docs, Knowledge base sync (oikb)
- Open WebUI Docs, Docker (source)
- Open WebUI Docs, Development
- Open WebUI Docs, Vendor dispositions for third-party CVEs
- Open WebUI Docs, License
- Open WebUI Docs, Enterprise
- Open WebUI Docs, Comparison with Onyx
- Open WebUI Docs, Single Sign-On
- Open WebUI Docs, LDAP
- Open WebUI Docs, SCIM
- Open WebUI Docs, Roles and permissions
- Open WebUI Docs, Scaling
- Open WebUI Docs, Environment variables
- Open WebUI Docs, RAG
- Open WebUI Docs, MCP
- Open WebUI Docs, API endpoints
- Open WebUI Docs, Admin analytics
- Open WebUI, Security advisories
- Onyx, repository
- Onyx, LICENSE
- Onyx, ee LICENSE (Onyx Enterprise License)
- Onyx, docker-compose.yml
- Onyx, telemetry.py (v4.9.2)
- Onyx, fleet_telemetry.py
- Onyx Docs, Enterprise Edition
- Onyx Docs, Billing
- Onyx Docs, Subscribing
- Onyx Docs, Resourcing
- Onyx Docs, Docker
- Onyx Docs, Kubernetes
- Onyx Docs, SSO providers
- Onyx Docs, SCIM
- Onyx Docs, JWT
- Onyx Docs, Understanding permissions
- Onyx Docs, Connectors
- Onyx Docs, File connector
- Onyx Docs, Audit logs
- Onyx Docs, Query history
- Onyx Docs, Search configuration
- Onyx Docs, AI models
- Onyx Docs, FAQ
- Onyx Docs, Agents
- Onyx Docs, MCP plugins
- Onyx Docs, Code interpreter
- Onyx Docs, Image generation
- Onyx Docs, Web search
- Onyx Docs, Developer API
- Onyx Docs, LLM gateway
- Onyx Docs, Configuration
- Onyx, Pricing
- Onyx, license_enforcement_config.py
- Onyx, gateway configs.py
- Onyx, fleet-telemetry.md (v5.0.0-beta.2)
- Onyx Docs, Data processing (self-hosted)
- Onyx Docs, Security FAQ
- Onyx Docs, Security hardening
- Onyx Docs, Changelog
- Onyx, Security advisories












