Feature comparison
Compare Optimizely Search & Navigation and Optimizely Graph features, focusing on configuration, query behavior, language handling, and feature availability to assess migration impact and required changes.
Compare features between Optimizely Search & Navigation and Optimizely Graph. This article highlights configuration differences, query behavior, language handling, and feature availability so you can evaluate migration impact and plan required changes.
Optimizely Graph provides a modern, API-first search architecture for headless, composable, and multi-channel experiences. You must implement some Search & Navigation features differently in Graph, but Graph offers greater flexibility, scalability, and long-term alignment with modern CMS and frontend architectures.
Synonym handling comparison
The following table summarizes key differences between synonym handling in Optimizely Search & Navigation and Optimizely Graph.
| Feature | Search & Navigation | Optimizely Graph |
|---|---|---|
| Configuration | Programmatic API and Admin UI | REST API only |
| Format | C# objects, CSV | Plain text (comma-separated) |
| Slots | One set per language | Two slots per language (ONE, TWO) |
| Query usage | .UsingSynonyms() | synonyms: [ONE, TWO] parameter |
| Admin UI | Supported | Not supported |
| Query operator support | All | Most operators (see operator compatibility) |
| All languages | Supports All languages option | Must configure per language |
Operator compatibility
Optimizely Graph applies synonyms only to supported query operators to preserve relevance and predictable results.
| Operator | Supports Synonyms | Notes |
|---|---|---|
contains | Yes | In-sentence matching supported |
match | Yes | Recommended for full-text search |
eq | Yes | Exact match with synonym expansion |
in | Yes | Works with array values |
like | No | Synonyms ignored |
startsWith | No | Synonyms ignored |
endsWith | No | Synonyms ignored |
gt/gte/lt/lte | No | Synonyms ignored |
exist | No | Synonyms ignored |
Language behavior differences
Before migrating synonyms, review how language handling differs between Optimizely Search & Navigation and Optimizely Graph. These differences affect how synonyms apply at query time and may require additional configuration during migration.
All languages support
- Search & Navigation – Supports All languages option. A single synonym set applies to every language.
- Graph – Does not support an All languages option and requires you to configure synonyms per language, enabling more precise, language-specific relevance control.
Default language behavior
- Search & Navigation – Applies synonyms to All languages when you do not specify a language.
- Graph – Applies synonyms only to the standard language when you do not specify
language_routing.
Migration impact
If your Search & Navigation configuration uses the All languages option, or does not specify a language, upload the same synonym definitions to Graph for each supported language.
Example
Your site supports English (en), Swedish (sv), and French (fr), and you have 50 synonyms in Search & Navigation without a language specified:
- Search & Navigation behavior – One synonym set applies to all 3 languages automatically.
- Graph behavior – You must upload separately:
- English –
language_routing=en(50 entries) - Swedish –
language_routing=sv(50 entries) - French –
language_routing=fr(50 entries) - Total – 150 entries (50 × 3 languages)
- English –
ImportantIf you upload to Optimizely Graph without specifying
language_routing, your synonyms apply only to the standard language, not to all languages as in Search & Navigation.
Feature availability comparison
Features available in both Search & Navigation and Graph
Both platforms support the following features:
- Full-text search
- Filtering
- Faceting
- Sorting
- Pagination
- Synonyms
- Stopwords
- Boosting
- Best bets and pinned results
- Geospatial search
- Content versioning
Key architectural differences
| Aspect | Search & Navigation | Graph |
|---|---|---|
| API style | LINQ-like .NET | GraphQL |
| Analyzers | Custom analyzers | Pre-configured analyzers |
Features available only in Graph
Optimizely Graph also provides the following features:
- Semantic search
- GraphQL API
- Recursive queries
- Inline fragments
- Preview tokens (JWT)
- Delta import
- Headless CMS support
Features managed differently in Graph
Graph handles the following areas differently from Search & Navigation:
- Administrative configuration uses APIs rather than a UI.
- Analytics and tracking use application-level or external analytics tools.
- Personalization integrates with Optimizely experimentation and decisioning services.
Updated 11 days ago
