How to migrate from Glean to Onyx without losing search quality
Onyx can replace Glean-style search over company content, but the move is a connector-by-connector rebuild, permission verification and a measured pilot, not a data export. Each source Glean searches has to be connected to Onyx again, and each connector has to be checked for the permissions users actually hold in that application. Onyx lists connectors for SharePoint, OneDrive, Outlook, Microsoft Teams, Google Drive, Gmail, Confluence, Jira, Slack, Salesforce and other sources, but the exact set you need depends on your Glean configuration, so start by inventorying every source Glean indexes today and marking each one as covered, partly covered or missing.
In most cases an internal platform team does this work, sometimes with an implementation partner for the connector set-up and hardening. The reason is operational. Glean's documented Glean Hosted and Customer Hosted models both keep Glean responsible for infrastructure and application management, including upgrades, patching and monitoring. After a move, your team owns those tasks, along with the Postgres, index, Redis and model server components that Onyx documents. Ask the vendor and your partner to confirm who handles each of those duties on day one, and who is on call for index or sync failures. Effort and risk depend mainly on how many sources you have, how complex their permission models are, and how many custom agents you need to recreate.
Plan the pilot before you turn anything off. Choose a group that represents the query mix, including search for policies, tickets, shared drives and chat history, and run the same questions through Glean and Onyx side by side. Judge relevance and whether each answer cites only documents that the asker can already open in the source application. Test a removed user and a changed group membership, because Onyx's permission sync is the control that keeps answers inside existing access rights. Pick the model providers for the pilot deliberately, since Onyx supports self-hosted models through Ollama, LiteLLM and vLLM as well as hosted providers, and the choice affects both answer quality and cost. Keep the pilot running until the renewal date gives you enough evidence to decide, and confirm your Glean contract's notice and data return terms in writing well before that date.
Which Glean capabilities map cleanly to Onyx and which need rework
This table maps the Glean capabilities most teams rely on to their Onyx equivalents and marks each as clean, needs rework or gap. Read each row against your own list of Glean sources, admin workflows and agents, because connector parity and Glean-specific features must be confirmed one by one before you commit to a migration plan.
| Glean capability | Onyx equivalent | Status and what to check |
|---|---|---|
| Enterprise search across connected sources | Indexing of 50+ applications and connectors such as SharePoint, Confluence, Jira, Slack and Google Drive | Clean for sources listed in the connectors directory. Confirm each source in your Glean list has an Onyx connector and the scope you use today. |
| Permission-aware results | Onyx syncs source permissions so answers only draw on documents the user can already see | Needs rework. Test permission sync on a pilot group with restricted folders and spaces, since mapping of group and share settings differs by source. |
| Assistant chat | Onyx AI chat with citations over indexed content | Clean for core question answering. Compare answer quality on your own real queries before cutting over users. |
| Agents and actions | Onyx agents and actions, covered by Onyx Community Edition | Needs rework. Glean agents must be recreated by hand, including their prompts, sources, tools and access rules. |
| SSO | Google OAuth, OIDC or SAML sign-in | Clean if your identity provider supports OIDC or SAML. Confirm group claims and session behavior with your identity team. |
| User provisioning (SCIM) | SCIM user provisioning listed among Onyx enterprise features | Needs rework. Confirm which Onyx edition you need and test deprovisioning, since offboarding must remove access to chats and indexed content. |
| Role-based access and admin audit | RBAC and query history auditing in the Enterprise Edition | Needs rework. These sit in the paid Enterprise Edition, so confirm the log fields your auditors expect and how you export them. |
| Model choice | Ollama, LiteLLM or vLLM for self-hosted models, plus Anthropic, OpenAI and Gemini | Clean for a broad model range. Glean model commitments and cloud-specific models must be mapped to the models you will run and pay for. |
| Glean-specific features such as Glean Shortcuts, custom integrations or admin dashboards | No direct equivalent confirmed in supplied facts | Gap until verified. List each feature your users rely on and confirm it with Onyx or build a replacement before renewal. |
What moves, what gets re-indexed and what must be rebuilt
Moving from Glean to Onyx is less a data transfer than a rebuild in four parts. Content is re-indexed from the source systems, permissions are synced again per connector, identities come through your identity provider, and agents and integrations are recreated by hand. No documented Glean export path to Onyx was supplied, so treat every component as something to confirm before the pilot starts.
Source content is re-indexed
Onyx pulls documents from the original systems through its own connectors, so the migration is a fresh index build, not a copy out of Glean. Start by listing every Glean data source in use and matching each one to an Onyx connector in the connectors directory. Where no connector exists, the work is custom connector development. Check which sources Glean indexes that your team has never inventoried, such as shared drives or wikis added by individual teams.
Permissions sync per connector
Onyx syncs permissions from each source application, so answers only draw on documents a user can already see in that application. Permission behavior can differ between connectors, so test each one separately with accounts that hold different access levels. Compare results against what Glean returned for the same users. Permission drift is the highest-risk item in this migration, so do not sign off on a source until its access tests pass.
Identities and groups via SSO and SCIM
User sign-in moves to Onyx through Google OAuth, OIDC or SAML, and SCIM user provisioning keeps accounts and group membership in step with your identity provider. Confirm which of these Onyx features are in the Community Edition and which need the Enterprise Edition. Map each Glean group to an Onyx group or role before the pilot, and confirm that deprovisioned users lose access to both the index and the chat history.
Agents, prompts and integrations
Glean agents, saved prompts and action integrations do not carry over automatically, so each one must be recreated in Onyx as an agent or action. Inventory them with their owners, the sources they read and the systems they write to. Retire agents nobody has used recently, and rebuild the rest with the same instructions, then compare outputs on the same test prompts. Confirm the write permissions of every action before enabling it for users.
Export path to confirm with Glean
No documented Glean export path to Onyx was supplied, so do not plan on importing Glean's index, query history or agent definitions. Ask Glean what it can export, in what format, and whether any of it covers permissions. Then confirm with Onyx what it can import. Whatever is missing from either answer becomes a manual rebuild item in your project plan.
Migration sequence from inventory to decommission
This sequence moves Glean search and assistant use to Onyx in controlled stages, so each source and group is cut over only after the team has measured Onyx against its own queries. Each step produces a written artifact that the next step depends on.
Inventory Glean connectors, agents, users and groups
Platform or IT owners export the list of Glean connectors, their permission scopes, the agents or saved assistants in use, the user directory groups that map to them, and usage patterns such as the most frequent query types and the teams that rely on each source. Ask Glean for the admin-side exports your contract allows, and confirm with your own identity team which groups grant access to which sources. The step is done when every connector and agent has an owner, a named source system, and a group mapping, and when the team agrees which sources drive the most daily work.
Deploy a pilot Onyx with the highest-value sources
Deploy Onyx Community Edition or the Enterprise Edition in your own cloud account or data center, using the Docker, Kubernetes, Helm or Terraform path described in the Onyx deployment overview. Connect the highest-value sources from the inventory first, and configure SSO and SCIM provisioning against your identity provider so that permission sync reflects real group membership. Select a model provider or a self-hosted model server for the pilot and record the choice. The step is done when each pilot connector completes an indexing run, when a test user sees only the documents they can see in the source application, and when the team has a written list of connectors that are not yet covered.
Agree the scoring method before the parallel run
Before any pilot user runs a query, the evaluation lead, a few power users from each team, and the security owner agree on a set of representative questions drawn from real work, the expected source for each answer, and a scoring rubric covering correctness, citation quality, permission correctness and response time. Decide who grades results, how disagreements are resolved, and how queries with sensitive content are handled. The step is done when the rubric and query set are signed off, because changing them after results arrive makes the comparison hard to trust.
Run a parallel pilot on real queries
A pilot group uses Glean and Onyx side by side for normal work over a period both teams agree on in advance. Pilot users log the queries they run, grade both answers against the agreed rubric, and flag gaps such as missing connectors, stale indexes, wrong permissions or weak answers from agents. Platform staff review permission sync results with the security owner, and record connector gaps as backlog items with an owner. The step is done when the scored results are compiled, the gaps are either fixed or accepted, and the team has a documented go or no-go decision for each source and group.
Cut over by source and by group
Move one source at a time, starting with the sources that scored well in the pilot, and move the groups that depend on them in the same change. Recreate the agents that matter in Onyx, retire duplicates, and point users to the new entry point with short guidance on what changed. Keep Glean connected for the cut-over sources until the team has confirmed that search results and permissions match in production. The step is done when each source has a dated cut-over record, a rollback plan, and a confirmed owner for ongoing connector health.
Decommission Glean after renewal and data terms
Before turning Glean off, confirm with Glean in writing the renewal or termination terms, the handling and deletion of indexed content and query data, and any export your organization needs for records. Confirm with your legal and compliance owners what retention applies to the Onyx query history and logs you keep. Remove Glean connectors, revoke its service accounts and tokens, and check that the source systems no longer grant it access. The step is done when Glean's data handling is confirmed in writing, its access is revoked, and the team has an archived record of the decision and of the parallel run results.
How to run Glean and Onyx in parallel before renewal
Run Onyx beside Glean for a fixed pilot group before the renewal decision, and make the decision on measured search quality and permission correctness rather than on demos. Start by choosing a pilot group of users who hold different roles in the connected sources, such as a finance analyst, an engineer with access to restricted Jira projects and a general employee, so the test covers the access differences that matter. Build the query set from real usage: export or sample recent Glean query history with your administrators, remove sensitive content, and group the queries by source and by task type. Ask each pilot user to run the same queries in both tools and score the answers against an agreed rubric covering whether the answer is correct, cited to the right document and complete. Confirm with your Glean account team how query and usage logs can be exported, since that determines how much of the comparison you can automate.
Test permission leakage separately from answer quality. Create test accounts in each connected source (SharePoint, Confluence, Jira, Google Drive or others) with deliberately different access levels, including a user who should see nothing in a restricted space. For each account, run queries that target documents only the restricted account can see, and confirm that Onyx returns no snippet, title or citation from them. Onyx states that it syncs permissions from the source application, so verify this on each connector and rerun the tests after every permission change in the source, because a stale sync can show content to people who lost access. Record each failure as a blocking defect for that source.
Roll cutover source by source rather than all at once. Move one connector at a time from pilot to general use once its queries and permission tests pass, and keep Glean active for the remaining sources until each one has cleared. Set the go or no-go criteria in writing before the pilot starts, and agree the date for the decision in relation to your contract notice period, which only your contract states. If Onyx does not meet the criteria for a source, you can keep that source on Glean and renew only what you need. Keep the pilot records, scores and permission test results as evidence for the decision and for any later review by your security or compliance team.
How the migration differs by starting point and model choice
Glean Hosted runs on Glean's Google Cloud environment, and Glean remains responsible for infrastructure and application management, including upgrades, patching and monitoring. Moving to Onyx means your team takes over that operating role, so the migration plan must start with a clear picture of which Glean-managed duties will become yours.
- Inventory connectors first: List every source Glean indexes today and confirm each one has an Onyx connector in the connectors directory, since a missing connector is a gap you must fill or accept.
- Re-create permission sync per source: Test that Onyx honors each source's document permissions before any user sees results, because search quality means little if access boundaries differ.
- Plan the hosting account: Decide whether Onyx runs in your own cloud account or on-premises, since Glean Hosted does not give you that choice.
- Assign operating ownership: Name who handles upgrades, patching and monitoring, and document the Glean behavior you are replacing.
- Export usage history: Confirm what query history and analytics Glean exposes so you can keep a comparable baseline during the pilot.
Before renewal, confirm with Glean and your own environment exactly which data, logs and admin exports you can retrieve, and run the pilot group on the same queries you use today.
Glean's Customer Hosted model, formerly called Cloud-Prem, runs in your own GCP or AWS account, but Glean still manages infrastructure and application upgrades and patching. Migrating to Onyx moves that operating responsibility to your team or a partner, so the change in day-to-day work is larger than the change in hosting location.
- Reuse the cloud account: Onyx can be deployed with Docker, Kubernetes, Helm or Terraform, so existing Terraform and Kubernetes practices in your account carry over.
- Replace managed services deliberately: Onyx Standard uses Postgres, Vespa or OpenSearch, Redis, model servers and object storage, so decide which of these you run yourself and which you already operate.
- Choose Onyx Lite for narrower scope: If you do not need the vector index and background sync workers, Onyx Lite covers chat and agents without them, which lowers what you must operate.
- Verify SSO and provisioning: Confirm your identity provider works with Onyx through OIDC, SAML or Google OAuth and that SCIM provisioning matches your joiner and leaver process.
- Review enterprise features: Role-based access control and query history auditing sit in the Enterprise Edition, so confirm they meet your requirements before choosing a license path.
Ask your team to map each Glean-managed function to a named owner, then confirm the Onyx edition and feature set in writing.
An air-gapped requirement rules out any model path that sends prompts or documents to an external API, and Glean's Customer Hosted model still depends on Glean-managed services in GCP or AWS. Onyx documents an air-gappable deployment in which the index, database and processing run in a self-contained set of services, so the model path becomes the central decision.
- Pair Onyx with local models: Ollama or vLLM provide model serving inside the isolated network, so no prompt leaves the enclosure.
- Plan updates offline: Container images, Helm charts and model weights must be transferred through your approved process, so define that workflow before the pilot.
- Isolate vLLM nodes: The vLLM security docs state that inter-node communication in multi-node runs is insecure by default and must sit on an isolated network.
- Restrict endpoints: The
--api-keyoption does not protect/metrics,/healthor/invocations, so place a reverse proxy in front that allowlists only user-facing endpoints. - Confirm connector access: Connectors that need internet reachability to SaaS sources may not work in an enclosed network, so confirm the source type for each connector.
Confirm with the Onyx and model vendors which components can operate with no outbound connections in your environment before committing to a timeline.
Using hosted proprietary models through Onyx keeps the retrieval, permissions and chat layer under your control while sending prompts to a model provider such as OpenAI, Anthropic or Gemini. This path avoids running GPUs but adds a provider contract, data handling terms and a per-token cost that scales with usage.
- Check provider data terms: Review each provider's retention and training terms, since Onyx does not change what the provider does with prompts.
- Set spend controls: If you route through a gateway, LiteLLM virtual keys support per-key, per-user and per-team budgets and model restrictions, which need a PostgreSQL database.
- Plan provider failover: LiteLLM's router supports retries, cooldowns and priority ordering, which you configure rather than receive by default.
- Confirm residency: Verify the region where each provider processes inputs, because residency options differ by vendor.
- Budget the usage: Ask providers for their current pricing in writing and model expected query volume from the pilot, not from published estimates.
Confirm the provider list, data terms and budget model with your procurement and privacy teams before connecting any production source.
Self-hosted models keep prompts and retrieved content inside your environment, but they make you responsible for serving, scaling and securing the inference layer. Onyx connects to Ollama, LiteLLM or vLLM, and each has configuration that must be set deliberately rather than left at defaults.
- Serve with OpenAI-compatible endpoints: vLLM started with
vllm serveexposes/v1/chat/completionsand/v1/embeddings, which Onyx can call once the endpoint is reachable. - Size accelerators and parallelism: vLLM uses tensor parallelism within a node and pipeline parallelism across nodes, so GPU count and topology drive your hardware plan.
- Gateway with LiteLLM: LiteLLM needs PostgreSQL as its primary database and Redis 7.0 or newer once more than one proxy instance runs, and its master key, which starts with
sk-, belongs in a secret manager. - Monitor serving: vLLM exposes Prometheus metrics at
/metrics, which should be scraped on an internal network only. - Enable SSO carefully: LiteLLM SSO is free for up to 5 users, and Enterprise licensing is required beyond that, so confirm the user count before you choose the gateway configuration.
Test throughput and latency with your own query set on the planned hardware before committing to a model size, and confirm each license and support obligation in writing.
What drives migration cost and duration
Migration cost is set by a handful of components, and most of them scale with how much content, how many workflows and how many people you bring across. Ask for each component separately in any quote so you can see which ones recur and which are one-time.
Connectors and permission models
Each source you replace Glean connectors for needs its own connector setup, sync schedule and permission mapping. Onyx syncs source permissions so answers only draw on documents a user can already see, so the cost depends on how cleanly each source maps users and groups. Ask the implementer to list every source, its permission model, and any custom or unsupported connectors that will need build work. Confirm connector coverage against the current connectors directory before scoping.
Agents and workflows to rebuild
Glean agents, saved prompts and action flows do not move automatically. Each one must be recreated, tested and handed over, and the effort grows with the number of tool calls and external systems involved. Inventory every agent by owner, data sources and actions before scoping. Ask for effort per agent class, not one lump sum, so you can decide which ones to retire instead of rebuilding them.
Model hosting and inference capacity
Onyx works with self-hosted models through Ollama, LiteLLM or vLLM, or with hosted providers such as Anthropic, OpenAI and Gemini. Self-hosting shifts cost to GPU or accelerator capacity you buy or rent, plus the infrastructure around it. Hosted providers add per-token usage charges. Ask for sizing based on your concurrent users and document volume, and confirm which model tiers the pilot needs.
Onyx edition and license scope
Onyx Community Edition is MIT licensed and covers RAG, AI chat, agents and actions. Code in ee directories falls under the Onyx Enterprise License, and Enterprise Edition adds features such as RBAC. Confirm which features you need, such as SCIM provisioning or RBAC, and whether they sit inside the community license or the enterprise one. Ask the implementer to name the edition in the quote and to put license fees on a separate line.
Operations staff and support
Someone must run upgrades, backups, monitoring, index maintenance and incident response after go-live. Glean handles those tasks in its hosted and Customer Hosted models, so this cost moves to your team or a support retainer. Count the internal hours per month you can staff, and ask whether ongoing support, upgrades and continuous testing are priced as a retainer. Confirm who holds on-call duty and how upgrades are scheduled against the Onyx release cadence.
Pilot evaluation effort
A pilot group comparing search quality on real queries takes effort to design, run and score. Your team must pick representative queries, label expected answers and review results across sources. This work is usually one-time but it decides whether you can retire the Glean contract. Ask the implementer to define the pilot scope, success criteria and the number of users in writing, and confirm who collects the feedback and who signs off on the result.
Questions buyers ask before moving from Glean to Onyx
How much effort and cost does moving from Glean to Onyx involve?
The effort depends mostly on how many sources you index, how many of them need permission sync, and how many agents you rebuild. Cost has four parts: the infrastructure for the index, database and model servers; model inference, whether you pay a provider per token or run your own GPUs; the connector and permission work; and operations staff or support. Glean's per-user licensing and Model Hub commitments are one-time to renew and recur every year, while your own costs recur monthly for hosting and inference and are largely one-time for the initial build. Ask any implementation partner for a fixed-scope quote that lists each connector, each agent and the test plan separately. Onyx Community Edition is MIT licensed, so the software itself adds no license fee.
How long does a pilot with Onyx usually take, and what sets its length?
No researched figure exists for a typical Onyx pilot, so confirm the duration with your partner or run it against your own environment. The length is set by the number of connectors in scope, how complex your permission model is, how many users join the pilot group, and how long it takes to collect enough real queries to judge answer quality. Plan the pilot to finish before your Glean renewal decision so you have comparable results. Agree on the success criteria in writing before the pilot starts.
What does our internal team need to supply for the migration?
Your team needs to supply access to each source application with an account that can read the content and permissions, a named owner for identity and SSO settings, and a Kubernetes, Docker or Helm environment in your own cloud or data center. You also need someone who can decide which model providers or self-hosted models are allowed, and a group of pilot users who will run real queries. Onyx supports SSO through Google OAuth, OIDC or SAML and SCIM provisioning, so your identity team must confirm which of these your environment uses. Record the source owners and access grants in the scope document.
Can we do the Onyx migration without an implementation partner?
Yes, if your team has the skills to deploy and operate the stack, but the work is substantial. Onyx documents Docker, Kubernetes, Helm and Terraform deployment options, and the Onyx Standard stack includes Postgres, Vespa or OpenSearch, Redis, model servers and object storage, so you must operate each component. Glean remains responsible for upgrades and patching in its managed models, so after the move your team owns patching, backups and upgrades. DeployOpen plans, implements, integrates, hardens, backs up, upgrades and documents self-hosted platforms in your own infrastructure, and offers ongoing support as a retainer. Ask whichever team you choose to show how they handle upgrades and recovery.
Can we export our data from Glean before we move?
Confirm the export options with Glean in writing before you commit, since this page does not have a researched export procedure for Glean. Focus on what you need to rebuild: the list of connected sources, the permission model in each source, saved agents or prompts, and query history for your evaluation set. Onyx does not import Glean configuration, so you will recreate connectors and agents in Onyx. Onyx syncs permissions from each source, so answers draw only on documents users can already see in the source application.
Does Onyx Community Edition cover what we need, or do we need Enterprise Edition?
Onyx Community Edition is MIT licensed and covers RAG, AI chat, agents and actions, and its connectors include SharePoint, Google Drive, Confluence, Jira, Slack and others. Enterprise features such as role-based access control, usage analytics and query history auditing are part of the self-hosted Enterprise Edition, which is governed by the Onyx Enterprise License. Code in the ee directories follows that separate license. If your audit, RBAC or analytics requirements are strict, decide on Enterprise Edition before design starts, and confirm pricing and terms with Onyx directly. Check the LICENSE file in the repository with your legal team.
How do we compare Onyx and Glean search quality fairly?
Build a test set from real queries your users ran in Glean during the pilot period, and include questions where the right answer sits in a specific source. Run the same queries against both systems with the same user accounts, so permissions match. Score each answer against a list of expected documents written before testing, and record whether each result respected source permissions. Compare results per source as well as overall, because connector coverage varies. Keep model settings documented, since Onyx lets you choose among Ollama, LiteLLM, vLLM and proprietary providers, and the model affects answer quality.
How DeployOpen scopes and runs a Glean to Onyx migration
DeployOpen plans, implements, integrates, hardens, documents and supports self-hosted open-source platforms inside your own cloud accounts, data centers or air-gapped networks. For a Glean to Onyx move, that means agreeing connector coverage, permission sync and a pilot plan in writing before any build starts, then handing over a system your team can operate.
How we scope
- Inventory every Glean connector and data source in use, and map each one to an Onyx connector or a documented gap.
- Confirm how permissions must sync per source so answers only draw on documents each user can already see.
- Agree in writing the model choices, pilot group, query set for comparison and the exit criteria for renewal.
How we build
- Deploy Onyx in your environment with Docker, Kubernetes, Helm or Terraform, using the topology your security team approves.
- Configure SSO and SCIM provisioning, recreate agents and wire self-hosted or proprietary models to Onyx.
- Test connector sync, permission enforcement and answer quality against the agreed query set before the pilot opens.
How we hand over
- Document the architecture, connector configuration, permission mappings, model routing and backup procedures for your team.
- Provide runbooks for upgrades, connector failures and user onboarding so operations do not depend on the build team.
- Deliver the pilot comparison results and the cutover checklist so your renewal decision rests on evidence.
How we support
- Ongoing support, upgrades and continuous testing are available as retainers after handover.
- Retainers can cover Onyx version upgrades, new connectors and periodic permission and access reviews.
- Compliance readiness work prepares systems, controls and evidence, while independent auditors issue any assessment.

