Manage categories
Taxonomy in Optimizely Content Management System (SaaS), also called CMS (SaaS), provides a structured system for organizing content. A taxonomy consists of terms that classify and categorize content. CMS (SaaS) supports hierarchical terms called categories. Categories form parent-child relationships with multiple nesting levels, which enables taxonomic organization, browsable navigation paths, and logical grouping of related content.

Category benefits
Categories provide the following benefits:
- Structured organization – Create multi-level hierarchies that reflect your content taxonomy, making it easier to organize large volumes of content according to business logic.
- Enhanced discoverability – Let users find content through category-based filtering, hierarchical navigation, and search in Content Manager.
- Flexible classification – Support both broad parent categories and specific leaf categories so you can classify content at the appropriate level of granularity.
- Graph integration – Optimizely Graph indexes category terms, which enables content queries in headless scenarios.
- Scalability – As your content library grows, categories provide consistent classification patterns that scale with your needs.
When to use categories
Use categories in the following scenarios:
- Content taxonomy – Organize content according to a predefined taxonomy structure, such as Sport > Running > Training Plans.
- Departmental structure – Map organization structure to content ownership and reflect this structure in content classification.
- Hierarchical navigation – Provide users with browsable navigation paths through related content.
- Multi-level classification – Classify content at different granularity levels, with high-level categories and detailed subcategories.
Create a category
- Go to Settings > Categories.
- Choose whether to create a standalone, parent, or child category:
- Standalone or parent category – Click Create to add a top-level category with no parent.

- Child category – Select More > Create child on an existing category to add a subcategory.

- Enter the following information:
- Display name – A human-readable label that displays in the UI. Localizable. Required. Maximum 255 characters.
- Key – A unique identifier for the category in APIs and code. Required. Maximum 100 characters.
- Description – (Optional) An explanation of the purpose or usage of the category. Localizable. Maximum 500 characters.
- Parent – Displays the parent category. CMS (SaaS) populates this field automatically based on where you start the create action. Read-only.
- Visible – Controls whether the category displays in category selection UI.
- Selectable – Controls whether CMS users can assign this category to content.
- Usage – Metadata that indicates the intended scope of the category. Select Public for general use or Internal for internal classification. This metadata guides developers. Optimizely Graph indexes both Public and Internal categories and includes them in queries.
Note
You cannot create a Public category as a child of an Internal parent.
- (Optional) Click + to continue creating categories at the same level (parent or child).
- Click Create.

To assign categories to a content item, go to Categorize content.
Visible and Selectable flags
The Visible and Selectable flags control category behavior in different contexts:
- Visible – Determines whether the category displays in category selection windows and UI components.
- Selectable – Determines whether CMS users can assign the category directly to content items.
These flags apply to individual categories and do not cascade to child categories. Configure each category according to its purpose. The following patterns are common:
- Active categories – Select both Visible and Selectable for categories that users should see and assign.
- Deprecated categories – Clear both Visible and Selectable to hide a category without deleting it.
- Historic categories – Select Visible and clear Selectable to show a category in the UI without letting users assign it to content. Use this pattern for a category that remains visible for organizational purposes, such as a past marketing campaign.
Usage field
The Usage field is metadata that indicates how you intend to use a category:
- Public – Categories intended for public-facing use cases, such as website navigation and public content organization.
- Internal – Categories intended for internal classification, such as workflow states, internal department codes, and editorial notes.
The Usage field does not restrict access or indexing. Optimizely Graph still indexes Internal categories and includes them in Graph queries. Users can still assign Internal categories to content in CMS. Developers decide which categories to use and filter on the Usage field. For example, an admin project can use Internal categories, and a website project can use Public categories.
Edit a category
- Go to Settings > Categories.
- Select More > Edit on a single category.

To bulk edit categories, select the checkbox for each category, and then select Actions > Edit. Select the checkbox in the header row to select all categories on the page. Selecting a parent category automatically selects all child categories.

- Update any of the following fields:
- Display name
- Description
- Visible
- Selectable
- Usage
- Click Save.
Changes to a category affect how it displays in selection UI and filtering. They do not change content already tagged with the category.
Delete a category
Warning
Deleting a category removes it from the system along with its translations, and content tagged with the category loses that classification. To deprecate a category without losing historical associations, clear Visible and Selectable instead.
- Go to Settings > Categories.
- Select More > Delete on a single category.

To bulk delete categories, select the checkbox for each category, and then select Actions > Delete. Select the checkbox in the header row to select all categories on the page. Selecting a parent category automatically selects all child categories.

If content uses the category, a warning displays. Review the associated content, and then confirm or cancel the deletion.

- Confirm the deletion.
Organize hierarchies
Categories support multi-level parent-child relationships, so you can build deep taxonomies that reflect your content structure.
Note
After you create a category, you cannot change its parent. To move a category to a different location in the hierarchy, delete the category and create a new one with the parent you want.
Best practices for hierarchies
Follow these best practices:
- Logical grouping – Organize categories in a way that reflects how users think about and search for content.
- Appropriate depth – Avoid hierarchies deeper than three or four levels because deeper hierarchies make navigation cumbersome.
- Consistent granularity – Ensure categories at the same level represent similar levels of specificity.
Localize categories
Localize categories to provide translated display names and descriptions for different languages. The languages enabled for CMS content determine which languages are available.
To provide translations:
- Go to Settings > Categories.
- Select a language from the language drop-down list.

- Select More > Edit on the category.
- Enter translated values in the Display name and Description fields. The edit form displays placeholder text with the default language values, such as "(en) Electronics".
- Click Save.
The category Key remains constant across all languages because it serves as the technical identifier in APIs. CMS (SaaS) localizes only Display name and Description. Categories without translations in a language display an em dash (—) in the Display name column for that language. The Key column displays the identifier value.
Ask Opal to maintain categories
Opal can configure and maintain the categories that organize your content. Ask Opal to list your existing categories or look up a specific one. Opal can also create, update, and remove categories, including nested categories under a parent. Describe the organization you want instead of configuring each category by hand.
Opal recognizes the words you already use. Requests that use the terms categories, labels, or tags reach the category tools. These tools manage categories only. They do not set the separate Tags field on a content item.