HomeDev GuideRecipesAPI Reference
Dev GuideAPI ReferenceUser GuideGitHubNuGetDev CommunityOptimizely AcademySubmit a ticketLog In
Dev Guide

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.

👍

Early access preview

This content is an early access preview and may change before general availability. Use the thumbs up or down at the end of this article to share feedback and help shape the final release.

Compare features between Optimizely Search & Navigation and Optimizely Graph. It highlights configuration differences, query behavior, language handling, and feature availability to help you evaluate migration impact and plan required changes.

Optimizely Graph provides a modern, API-first search architecture built for headless, composable, and multi-channel experiences. While some Search & Navigation features are implemented differently, 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.

FeatureSearch & NavigationOptimizely Graph
ConfigurationProgrammatic API and Admin UIREST API only
FormatC# objects, CSVPlain text (comma-separated)
SlotsOne set per languageTwo slots per language (ONE, TWO)
Query Usage.UsingSynonyms()synonyms: [ONE, TWO] parameter
Admin UISupportedNot supported
Query Operator SupportAllMost operators (see operator compatibility)
All LanguagesSupports All languages optionMust configure per language

Operator Compatibility

Optimizely Graph applies synonyms only to supported query operators to preserve relevance and predictable results.

OperatorSupports SynonymsNotes
containsYesIn-sentence matching supported
matchYesRecommended for full-text search
eqYesExact match with synonym expansion
inYesWorks with array values
likeNoSynonyms ignored
startsWithNoSynonyms ignored
endsWithNoSynonyms ignored
gt/gte/lt/lteNoSynonyms ignored
existNoSynonyms 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 synonyms to be configured per language, enabling more precise, language-specific relevance control.

Default language behavior

  • Search & Navigation – Applies synonyms to All languages when no language is specified.
  • Graph – Applies synonyms only to the standard language when language_routing is not specified.

Migration impact

If your Search & Navigation configuration uses the All languages option, or does not specify a language, you must 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 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)
🚧

Important

If you only upload to Optimizely Graph without specifying language_routing, your synonyms will only work for the standard language, not all languages like Search & Navigation.

Feature availability comparison

Features available in both Search & Navigation and Graph

Both platforms support:

  • Full-text search
  • Filtering
  • Faceting
  • Sorting
  • Pagination
  • Synonyms
  • Stopwords
  • Boosting
  • Best bets and pinned results
  • Geospatial search
  • Content versioning

Key architectural differences

AspectSearch & NavigationGraph
API styleLINQ-like .NETGraphQL
AnalyzersCustom AnalyzersPre-configured analyzers

Features available only in Graph

Optimizely Graph additionally provides:

  • Semantic search
  • GraphQL API
  • Recursive queries
  • Inline fragments
  • Preview tokens (JWT)
  • Delta import
  • Headless CMS support

Features managed differently in Graph

  • Administrative configuration is API-based rather than UI-driven.
  • Analytics and tracking are handled through application-level or external analytics tools.
  • Personalization is designed to integrate with Optimizely experimentation and decisioning services.