Why This Comparison Matters
Agora and Onyx occupy similar territory: both are AI platforms that connect to your companyβs internal knowledge and let teams interact with it through chat, search, and agents. Both offer self-hosting. Both let you choose your LLM provider.
But theyβre built on different architectural assumptions. Onyx is a developer-friendly chat interface with an open-source community behind it. Agora is enterprise infrastructure designed for production workloads, multi-tenant operations, and autonomous agent execution.
This comparison is for teams evaluating both and wondering which one matches their actual deployment requirements.
At a Glance
| Capability | π’ Agora | π Onyx |
|---|---|---|
| Deployment | Docker Compose + Kubernetes/Helm | Docker Compose only |
| Air-gapped | Yes, fully air-gapped | Self-host possible, no K8s |
| Auto-scaling | HPA per-service (2β6 replicas) | Manual |
| Multi-tenancy | Native org-scoped isolation | Single-tenant |
| Agent execution | Autonomous + interactive | Interactive only |
| LLM flexibility | Any provider + self-hosted | Any provider + self-hosted |
| Vector DB | Bring your own (Qdrant default) | Vespa (tightly coupled) |
| Connectors | 7+ core connectors | 40+ connectors |
| Open source | No | Yes (30k stars) |
| User model | Federated + local, custom roles | Group-based (RBAC paid) |
| Desktop app | No | Yes |
Deployment
Onyx
Onyx deploys via Docker Compose with an install script:
curl -fsSL https://onyx.app/install_onyx.sh | bash
Two modes available:
| Mode | Resources | Includes |
|---|---|---|
| Lite | <1GB memory | Chat, agents, file uploads |
| Standard | Full stack | + Vespa, Redis, MinIO, background workers |
For production, you run multiple Docker containers on a single host or small cluster. Scaling means manually adjusting container counts.
Agora
Agora supports two deployment paths:
Quick start - same simplicity as Onyx:
docker compose up
Production - where Agora separates from the pack:
helm install agora ./agora-k8s
This deploys an enterprise-grade stack with automatic scaling:
| Service | Memory | CPU | Auto-Scaling |
|---|---|---|---|
| Core API & Agents | 512Miβ1.5Gi | 500mβ2 cores | 2β6 pods |
| Document Processor | 2β8Gi | 1β4 cores | 1β4 pods |
| Markdown Chunker | 256Miβ1Gi | 200mβ1 core | 1β3 pods |
| Admin UI | 64β128Mi | 50β200m | 2 pods |
| Chat Interface | 64β128Mi | 50β200m | 2 pods |
Key difference: Both platforms get you started with Docker Compose. But when you need production reliability - auto-scaling, health probes, rolling updates, zero-downtime deploys - Agora has a Kubernetes path Onyx doesnβt offer.
AI Agents
How agents work in each platform
| Capability | π’ Agora | π Onyx |
|---|---|---|
| Custom instructions & knowledge | β | β |
| Multi-step reasoning | β | β |
| MCP tool connections | β | β |
| MCP server exposure (external AI tools) | β | β |
| Code execution in chat | β | β |
| Webhook/event triggers | β | β |
| Scheduled execution | β | β |
| Background operation (no user) | β | β |
| Real-time execution monitoring | β | β |
| Human-in-the-loop review | β | β |
| Slack/Discord bot | β | β |
The fundamental difference
Onyx agents activate when a user talks to them. Theyβre interactive assistants.
Agora agents can run autonomously. They fire on webhooks, schedules, or external events - processing data and taking actions without human initiation.
Example: A customer sends a message on an external platform β webhook fires β Agora agent processes it with full context β generates and sends a response in seconds. No human initiated anything.
Vector Database
| π’ Agora | π Onyx | |
|---|---|---|
| Default | Qdrant | Vespa |
| Replaceable? | β Yes - any vector DB | β No - βsignificant effortβ (their docs) |
| Data portability | Your embeddings, your infrastructure | Locked to Vespa |
| If you leave | Vector data stays with you | Re-index from scratch |
What Onyx says about their own coupling:
βVespa is tightly integrated with the context retrieval functionalities and replacing it would require significant development effort to maintain the same functionality.β
- Onyx Documentation, System Description
Agoraβs approach:
Agora uses Qdrant by default, but the vector layer is decoupled. Bring your own instance, switch to Pinecone, Weaviate, Milvus, or pgvector. Your embeddings and indexes belong to you.
Multi-Tenancy & Access Control
| π’ Agora | π Onyx | |
|---|---|---|
| Tenancy | Multi-tenant (org-scoped) | Single-tenant |
| Multiple teams | One deployment, isolated data per org | Separate deployment per org |
| User types | Federated (SSO) + Local (air-gapped) | SSO only |
| Roles | Custom roles per org (primary + secondary) | Admin / Basic (free), Groups (paid) |
| Feature access | 11 toggleable modules, role-gated | Panel-level (Enterprise only) |
| SSO | β Included | π° Enterprise Edition (paid) |
| RBAC | β Included | π° Enterprise Edition (paid) |
| Permission sync | β Included | π° Enterprise Edition (paid, 4 sources) |
For agencies and MSPs: One Agora deployment can serve multiple independent clients with full data isolation. With Onyx, each client needs their own deployment.
Retrieval Pipeline
Both platforms use hybrid retrieval. Hereβs how the pipelines compare:
Onyx - 6 stages
| Stage | What it does |
|---|---|
| 1 | LLM generates multiple parallel queries (semantic + keyword + broad) |
| 2 | Hybrid search (vector + BM-25) with Reciprocal Rank Fusion |
| 3 | LLM reviews chunks and selects most relevant |
| 4 | Contextual retrieval |
| 5 | Knowledge graph relationships |
| 6 | Grounded answer with citations |
Agora - 5 stages
| Stage | What it does |
|---|---|
| 1 | Dense vector search (1536-dim embeddings) |
| 2 | BM25 full-text search |
| 3 | Reciprocal Rank Fusion combination |
| 4 | Cross-encoder reranking for precision |
| 5 | Grounded generation with source citations |
Onyxβs published benchmarks
| vs Competitor | Onyx Win Rate |
|---|---|
| ChatGPT Enterprise | 64% |
| Claude Enterprise | 68.1% |
| Notion AI | 76% |
99 questions, 220K documents, blind LLM evaluation. Self-reported.
Both platforms use similar core techniques. Onyx has invested in public benchmarking (a marketing advantage). Agoraβs pipeline is proven in production across enterprise deployments.
Data Source Connectors
Connector count by category
| Category | π Onyx | π’ Agora |
|---|---|---|
| Knowledge bases & wikis | 11 | 3 |
| Cloud storage | 7 | 3 |
| Messaging | 6 | 0 |
| Ticketing & tasks | 8 | 0 |
| Sales CRM | 5 | 0 |
| Code repos | 3 | 0 |
| File upload | 1 | 1 |
| Web scraping | 1 | 1 |
| Total | 42 | 8 |
Where Agora goes deeper on content processing
| Content Type | π’ Agora | π Onyx |
|---|---|---|
| PDF with OCR | β | β |
| Audio transcription (Whisper) | β | β |
| Video frame extraction + transcription | β | β |
| Handwritten text (TrOCR) | β | β |
| Custom chunking logic | β | β οΈ Limited |
| Perceptual hash deduplication | β | β |
The tradeoff: Onyx connects to more apps. Agora processes more content types. If your knowledge lives in Jira or Salesforce, Onyx has the connector today. If it lives in recorded meetings, scanned documents, or training videos, Agora extracts it natively.
Open Source vs Controlled Source
| π’ Agora | π Onyx | |
|---|---|---|
| License | Proprietary | MIT (open source) |
| GitHub stars | N/A | 30,000+ |
| Code visibility | Deployment flexibility, not code exposure | Full transparency |
| Fork risk | None | Anyone can fork |
| Enterprise features | β All included | π° Gated behind paid license |
| Support model | Direct relationship | Community + paid tiers |
Onyxβs advantage: Open source builds trust. Anyone can audit the code, contribute, or self-support from GitHub issues. Their community backing is substantial - Onyx raised $10M in seed funding led by Khosla Ventures and First Round Capital.
Agoraβs advantage: Same deployment freedom (self-host anywhere) without exposing the codebase. All features included regardless of tier.
Enterprise Features: Included vs Paywalled
| Feature | π’ Agora | π Onyx Free | π Onyx Enterprise |
|---|---|---|---|
| Custom roles & RBAC | β | β οΈ Basic only | π° |
| SSO (OIDC/SAML) | β | β | π° |
| Permission sync | β | β | π° |
| Usage analytics | β | β | π° |
| Encrypted secrets | β | β | π° |
| Whitelabeling | β On request | β | π° |
| Multi-tenancy | β | β | β |
| Local user accounts | β | β | β |
| Autonomous triggers | β | β | β |
| Execution monitoring | β | β | β |
Onyx gates critical enterprise features behind their Enterprise Edition license. Agora includes RBAC, SSO, analytics, and multi-tenancy in every deployment.
Decision Matrix
Choose Onyx when:
| Requirement | Why Onyx fits |
|---|---|
| Open-source is mandatory | MIT license, full code access |
| Need 40+ connectors now | Salesforce, Jira, HubSpot, Slack, etc. |
| Primary use is interactive chat | Deep Research, Code Execution, chat-first UX |
| Lightweight quickstart needed | <1GB Lite mode, single Docker Compose |
| Single team, simple permissions | Basic roles work fine for small teams |
| Desktop app matters | Native app for Windows/macOS/Linux |
| Community support is sufficient | GitHub issues, open-source community |
Choose Agora when:
| Requirement | Why Agora fits |
|---|---|
| Production K8s deployment | Helm chart, HPA, health probes, rolling updates |
| Autonomous agent operations | Webhook triggers, scheduled execution, background agents |
| Multi-tenant architecture | Multiple orgs/clients from single deployment |
| Air-gapped with local users | No external identity provider required |
| Portable vector DB | Swap Qdrant for Pinecone/Weaviate/Milvus anytime |
| Real-time agent monitoring | Task board, execution streaming, suggestion review |
| Webhook-driven automation | External events trigger agents without human initiation |
| Enterprise features included | RBAC, SSO, analytics without paywall |
| Rich content processing | Audio, video, handwritten OCR natively |
The Bottom Line
Onyx and Agora solve the same core problem - connecting AI to internal knowledge - but theyβre built for different operational realities.
Onyx is a great AI chat platform with strong community backing. It excels at interactive search, has broad connector support, and gets you running fast. Itβs what you deploy when your team needs a smart search assistant they can talk to.
Agora is enterprise infrastructure built for production workloads. Itβs what you deploy when you need agents running autonomously, multiple teams served from one platform, Kubernetes-grade reliability, and full control over every component - including the vector database.
The question isnβt which platform answers questions better. Itβs whether you need a chat tool or an operations platform.
Frequently Asked Questions
Is Onyx open source?
Yes. Onyx (formerly Danswer) is fully open source under the MIT license with 30,000+ GitHub stars. You can inspect, fork, and self-host the entire codebase. However, enterprise features like SSO, RBAC, and permission sync are gated behind their paid Enterprise Edition.
Can Onyx be deployed on Kubernetes?
No. Onyx only supports Docker Compose deployments. There is no Helm chart, no HPA auto-scaling, and no built-in support for Kubernetes orchestration. Scaling requires manually adjusting container counts on a single host or small cluster.
How much does Onyx cost?
Onyx offers a free self-hosted tier (Docker Compose, basic features). Their paid Business tier starts at $20/user/month and includes priority support. Enterprise pricing (SSO, RBAC, permission sync) requires contacting sales.
Can you swap the vector database in Onyx?
Not easily. Onyx uses Vespa as its vector store, and according to their own documentation, replacing it would require βsignificant development effort.β Your embeddings and indexes are locked to Vespa.
More Comparisons
- Agora vs Glean: Enterprise AI Search
- Agora vs Guru: Enterprise AI Knowledge Platforms
- Agora vs Greg AI: Knowledge Infrastructure vs Autonomous Operations
Ready to see the difference? Book a demo to see Agoraβs autonomous agents and production deployment in action.