Hybris SEO: what SAP Commerce Cloud already does for search, and the defaults to check before launch
SEO on SAP Commerce Cloud (the platform many teams still call Hybris), read from SAP's own documentation on 22 October 2026: server rendering, meta tags, robots, canonical URLs, routes, structured data, sitemaps and redirects.
Published by AI Knows Us · Updated 21 October 2026
Hybris SEO today means SEO on SAP Commerce Cloud, and on most new builds that means its composable storefront, an Angular single-page app. The platform gives you the parts that matter: server-side rendering, a title, description, robots and canonical tag per page, JSON-LD for products and breadcrumbs, configurable product and category URLs, and a robots.txt and redirect manager in the Cloud Portal. Most SEO problems on these sites come from a handful of defaults nobody checked. Server rendering has to be on and working, the robots value has to be set in the CMS, the error handling has to send real status codes, and the product URL pattern has to be decided before launch. Each is below, from SAP's help portal as read on 22 October 2026.
Which storefront you are on decides most of the answer
SAP Commerce Cloud has had two front ends. The older one is the Accelerator storefront, a set of templates that ships with the platform. The newer one is the composable storefront, which is the official SAP release of the open-source project called Spartacus. SAP's Spartacus documentation says that from version 5.0 the composable storefront is "included in the SAP Commerce Cloud license at no extra cost." You will still see the old name in the code, where Java packages begin with de.hybris.platform.
SAP has deprecated the Accelerator UI templates. In June 2026 it changed its plan: the templates will no longer be removed in a fixed future release, and there is "no longer a fixed de-release date". The same notice says customers "are still strongly encouraged to go headless". So an Accelerator site is not forced to move this year, but new SEO work on these sites is mostly about the composable storefront, and the rest of this page is written for it.
The levers and where each one lives
| Lever | Where you set it | The default to check |
|---|---|---|
| Server-side rendering | Storefront app (Angular) | Added with a schematic; a PWA service worker can bypass it |
| Status codes on errors | Storefront app (SSR error handling) | On by default only from version 2211.29 for new apps |
| Title, description, image | Page meta resolvers, driven by product and CMS data | Product title is built from product name, first category and brand |
| Robots meta tag | CMS page data (SAP Commerce Cloud 2005 or newer) | FOLLOW, NOINDEX when no value is provided |
| Canonical URL | Page meta configuration | HTTPS, trailing slash, query parameters removed, no forced www |
| Product and category URLs | Route configuration in the storefront | product/:productCode/:name |
| Structured data | JSON-LD builders in the storefront | Only written during server rendering |
| robots.txt and redirects | Cloud Portal | Per primary domain, with optional per-domain overrides |
Server rendering: the first thing to confirm
The composable storefront is an Angular single-page app, so without server rendering a crawler receives a mostly empty page and has to run JavaScript to see the products. SAP's guide recommends server-side rendering for pages "crawled by site indexers or bots", pages whose content does not change often, and pages without personalised content. It is added with one command: ng add @spartacus/schematics --ssr.
Two traps sit in the same documentation. First, SAP notes that once the storefront runs as a progressive web app, a service worker serves a cached index.html, and "this results in SSR being completely skipped" for that visitor. Second, Angular's own server rendering ignores most errors that happen while a page renders. SAP's error-handling page explains that without its fix a failed API call can return "malformed HTML" with a 200 status, and an unknown URL returns an error page "with a misleading 200 status". SAP's answer is an engine wrapper called CxCommonEngine. It is on by default for apps created from version 2211.29, and for apps upgraded to 221121.2 or newer. If your storefront is older than that, enabling it is the single most useful SEO ticket you can raise, because without it Google can index broken pages and soft 404s.
Meta tags, robots and canonical URLs
The storefront writes six things into a page: the <title>, the page heading (an h1 inside the breadcrumb component), the meta description, an og:image on product pages, the robots meta tag and a canonical link. Values come from back-end data wherever possible. For a product page, SAP's guide says the title is built from the product title, the first category and the brand. Read a sample of real titles, because long product names push the brand out of view.
The robots tag is where launches go wrong quietly. SAP's guide states that the PageMetaService uses FOLLOW, NOINDEX whenever no robots value is provided. From SAP Commerce Cloud 2005 you can store the robots value on the CMS page, and the checkout page is set to noindex, nofollow on purpose. Before launch, view the source of a home page, a category page, a product page and a content page, and check that the pages you want in Google say INDEX.
Canonical URLs became part of the default configuration from composable storefront 4.0. The defaults force HTTPS, add a trailing slash, remove query parameters and do not force www, because the storefront cannot reliably detect your subdomain. If your live domain uses www, change forceWww or every canonical will point at a host you do not serve. For variant products, the product page can point the canonical at the base product, so sizes and colours do not compete with each other. The canonical resolver is set to run on the server only. That fits Google's advice not to let JavaScript change a canonical to something different from the one in the original HTML.
Product and category URLs: decide before launch
Routes are set in the storefront, not in the back office. Content pages take their URL from a CMS page label. Product, category and brand URLs can only be configured in the storefront, and a product route must contain :productCode. The default product path is product/:productCode/:name. A feature toggle, defaultProductPageRouteAllowsNoProductName, adds product/:productCode as an accepted alias, so the same product can answer on two URLs. That is fine as long as the canonical points to one of them.
You can add the product name or a category to the path, for example product/:category/:name/:productCode. SAP's guide flags a known gap: products returned by the search endpoint do not include categories, so you need a second, shorter route alias as a fallback. Its routing page also lists limits worth knowing early: translating routes into several languages is not supported, and neither is routing with Angular's hash strategy. Settle the pattern in the build, because changing it later means a redirect for every product.
Structured data
The storefront writes JSON-LD for BreadcrumbList, Product, Review, Offer and Rating. You must import JsonLdBuilderModule for it to appear, and SAP says schema creation is "limited to the Server-Side Rendering process". So if server rendering fails or is skipped, the structured data is missing too. Check one product URL in Google's Rich Results Test and confirm the price and availability match what a shopper sees.
Sitemaps, robots.txt and redirects
SAP's sitemap documentation sits under the Accelerator modules. It generates a sitemap index per site, language and currency, with page types for the home page, products, categories, category landing pages, store finder pages, content pages and a list of custom URLs. When we searched the composable storefront guide on 22 October 2026, it had no sitemap topic of its own, so ask your implementation partner exactly how your sitemap is generated, and check that it lists the storefront's real product URLs, not Accelerator paths.
In the Cloud Portal, robots.txt is edited under Unified Domain Management. You set it once for the primary domain, and a custom domain can override it with its own file. Website redirects are uploaded as redirect sets: rules written in Apache syntax and saved as a .txt file.
Questions about Hybris SEO
Is SAP Hybris good for SEO?
The platform has the controls you need: server rendering, editable meta tags, robots values in the CMS, canonical URLs, configurable routes and JSON-LD. Results depend on the build, especially whether server rendering and error handling are working on every page you want indexed.
Is Hybris the same as SAP Commerce Cloud?
Yes. SAP Commerce Cloud is the current product name. The old name survives in the code, where packages start with de.hybris.platform, and in how many teams still talk about the platform.
Do I need to move off the Accelerator storefront for SEO?
Not for SEO alone. SAP has deprecated the Accelerator UI and, since June 2026, has no fixed removal date, while still recommending headless. A move is a replatform project, so plan redirects for every URL that changes.
Why are some of my pages marked noindex?
The storefront falls back to FOLLOW, NOINDEX when a page has no robots value. Set the value on the CMS page, then check the live source of each page template.
When a shopper asks an assistant instead
Google's JavaScript SEO guide says server-side or pre-rendering "is still a great idea" because "not all bots can run JavaScript", and on this platform the product schema exists only in the server-rendered HTML. The crawlers that feed AI assistants are bots too, so a product page that server-renders cleanly is the version every reader gets. Whether an assistant then names your brand when a buyer asks it for the best option in your category is a separate question from ranking. That is what AI Knows Us measures, and our page on AI visibility tools for ecommerce brands compares the options.