Kontent.ai: scouting the Czech enterprise headless CMS from outside the sales wall
Kontent.ai is the SaaS headless CMS that used to be called Kentico Kontent, sister product of the on-prem Kentico Xperience. In 2024 it dropped the Kentico prefix and re-branded itself around the AI suffix — the same marketing move Sitecore made with "SitecoreAI." We spent an evening evaluating it the same way we evaluated Sitecore XM Cloud and Contentstack the week before: read the docs, hit the Delivery API with curl, screenshot the pricing page, decide where this lands in a spreadsheet next to Contentstack, AEM, and the open-source tier we already self-host. Here is what we found, what we couldn't price without a sales call, and one thing the public Delivery API does much better than its enterprise peers.
We're the team behind SimpleReview, a Chrome extension that drafts code-fix PRs on whatever element you click on a broken admin or storefront. We are not affiliated with Kontent.ai or Kentico, not partners, not customers, never sat through a demo call. This page is a single scouting session on 2026-05-07 from outside the sales wall: real headless-Chrome screenshots of the public pricing and docs pages, a real curl against the public Delivery API, and the on-record rebrand timeline as it actually exists today. If we got something wrong, open a GitHub issue and we will fix it.
What Kontent.ai is, briefly
Kontent.ai is a cloud-only enterprise headless CMS made by a Czech company headquartered in Brno. Its parent organisation, Kentico, has been shipping CMS software since 2004, originally as an on-prem .NET / SQL Server product called Kentico CMS — later renamed Kentico Xperience. Around 2019 they spun out a separate cloud-native, content-as-a-service product as Kentico Kontent; in 2024 that product dropped the Kentico prefix and re-branded as Kontent.ai. The on-prem Kentico Xperience product still exists and is still actively sold; Kontent.ai is the cloud-first, headless-only sibling.
The .ai suffix is the same marketing pivot Sitecore made with "SitecoreAI" in roughly the same window. Underneath, the product is a structured-content CMS with content types, taxonomies, multi-language workflows, a Delivery API for read paths, and a separate Management API for writes. The .NET SDK is first-class — unsurprising for a company whose parent product is a Microsoft-stack CMS — but they also publish JS/TS, Java, PHP, Python, Ruby, and Swift SDKs. The customer wall on the homepage on 2026-05-07 — Vogue, WebMD Ignite, ESMO, DKMS, University of Oxford, R&A, PPG Paints — skews editorial / institutional, not DTC commerce. Editorial workflow, taxonomies, multilingual variants, and approvals are first-class; storefront / cart primitives are not.
https://kontent.ai/ via headless Chrome at 1280×858. The wordmark is now KONTENT.AI with the dotted "i" stylized as a wedge — that's the 2024 rebrand. The customer wall skews editorial / pharma / institutional, not commerce.Friction 1 — pricing is a slider with no published numbers
On most enterprise SaaS, the public pricing page does one of two things: it shows a Starter / Growth / Enterprise ladder where two of the three tiers have a published number, or it shows nothing and routes everything to a sales form. Kontent.ai picks a third option that we hadn't seen before: it shows a public configurator with three sliders — User seats, Content types, Content items — and a panel that updates the implied volume discount percentage as you drag, but never resolves to an actual dollar number. The sliders shape the quote; the quote itself comes from the form.
https://kontent.ai/pricing/. The sliders shape an implicit quote but never resolve to a dollar number. "Use the sliders to see your potential savings instantly. For a detailed quote, fill out the form…" The "predictable pricing" framing is honest about being custom-quoted; it's just not a number you can paste into a procurement spreadsheet without a phone call.If you're trying to put Kontent.ai into a five-vendor comparison spreadsheet, the slider gives you the variables that drive the quote (seats, types, items) but not the per-unit cost behind any of them. That is more transparent than "Contact us" — at least the dimensions are named — but it still puts you on the phone before you can model annual cost in two scenarios. Compared to Contentstack ("Contact us"), Sitecore XM Cloud ("Book a demo," /pricing path 403s), and AEM (also custom-quoted), this slider page is the most informative of the four. That is a low bar.
Friction 2 — the Delivery API is genuinely good
Pricing pages can hide numbers; production endpoints cannot. The Kontent.ai Delivery API — the public CDN-fronted REST endpoint your apps hit at runtime — is documented, addressable, and behaves cleanly even with garbage input. The base URL is https://deliver.kontent.ai/<environment-id>/items, where environment-id is a UUID provisioned per tenant. Without an account, without any credentials, you can hit the endpoint with an obviously-fake UUID and get back an exemplary error response.
$ curl -s -i \
https://deliver.kontent.ai/00000000-0000-0000-0000-000000000000/items
HTTP/2 404
content-type: application/json; charset=utf-8
strict-transport-security: max-age=63072000; includeSubdomains; preload
x-frame-options: DENY
x-content-type-options: nosniff
referrer-policy: strict-origin
access-control-allow-origin: *
x-served-by: cache-bma-essb1270074-BMA, cache-bma-essb1270026-BMA
x-cache: MISS, MISS
date: Fri, 08 May 2026 07:09:02 GMT
content-length: 352
And the body, verbatim:
{
"message": "The specified environment with the ID '00000000-0000-0000-0000-000000000000' doesn't exist. Check for the correct environment ID in Kontent.ai > Environment settings > General. See https://kontent.ai/learn/reference/delivery-api for more details.",
"request_id": "6eb03aceeefd588b",
"error_code": 105,
"specific_code": 0
}
There are five things right with this response that a depressing number of enterprise APIs get wrong:
- The error message names the missing thing in plain English ("environment with the ID 'X' doesn't exist") instead of a generic "Bad Request."
- It tells the operator where to look — "Kontent.ai > Environment settings > General" — which is the actual UI path for a person with admin access. That is a huge time-saver compared to APIs that return a stack trace fragment or "code 105" with no human anchor.
- It links to the docs.
kontent.ai/learn/reference/delivery-apiis a real, indexed, public page. The link works. - It exposes a
request_id, not a stack-trace blob, for support tickets — and a numericerror_code+specific_codefor programmatic error handling. - It's served from a CDN.
x-served-by: cache-bma-...-BMAis Fastly's Stockholm POP. (Sitecore Edge is Cloudflare-fronted; Contentstack is multi-region AWS/Azure/GCP. Kontent.ai is on Fastly.) From a Hetzner Frankfurt box the round trip is ~30 ms. The CDN edge is enforcing the tenant boundary, so an invalid UUID never touches the origin.
Compare that to the equivalent error from Sitecore Experience Edge — {"detail": "No sitecore context"} — which is technically RFC 7807 Problem Details compliant but tells a developer nothing about what to do next. Kontent.ai's response is not RFC 7807; it's a plain JSON envelope with their own conventions. But it is genuinely operator-friendly. We'd take it over the spec-compliant terse one any day.
The docs portal is where this product earns its keep
The other artifact worth looking at is the Learn portal — kontent.ai/learn/. Unlike Sitecore's recent reorganization that folded everything into a "SitecoreAI Documentation" landing aimed at executives, the Kontent.ai Learn portal is structured around the actual workflow stages a developer cares about: Try Kontent.ai, Plan, Set up, Model, Develop, Create. The Delivery API reference page (below) opens with a one-paragraph "what this is, what it does," names the related concepts (CDN, content filtering, HTTPS), and immediately surfaces the three things a new developer wants to do — Hello World, build first app, optimize performance.
kontent.ai/learn/reference/delivery-api on 2026-05-07. The "Related paths" callout — Hello World → Build your first app → Optimize the performance — is the kind of staged on-ramp that respects a new developer's time. The left nav names "Errors," "API limitations," "How the API caches your content" — not buried, not under a marketing tab, just listed where you'd expect them.The Postman collection is linked from the sidebar, the SDK list is one click away, and the API-keys, authentication, and rate-limit pages are sibling documents — not behind three nav levels. Rating just the docs experience, Kontent.ai lands above Contentstack and well above the post-rebrand Sitecore docs landing.
How Kontent.ai compares to the alternatives
We've now done the same scouting walk on a handful of CMSes. The honest comparison isn't "which is better" — it's "which procurement category are you in and which trade-offs match." Kontent.ai sits in the upper-mid tier of the headless market, alongside Contentstack and a step below Sitecore XM Cloud / Adobe AEM in marketed scale, but at meaningful remove from the open-source self-host tier we'd reach for in a startup.
| Dimension | Kontent.ai | Sitecore XM Cloud | Contentstack | Self-host (Strapi/Directus/Payload) |
|---|---|---|---|---|
Time to first curl against the public CDN |
~30 ms (Fastly BMA POP). Endpoint is publicly addressable; account-gated content only. | ~120 ms (Cloudflare FRA POP). Same pattern. | Behind a demo-request form for usage, but endpoints documented. | ~10 min from docker run. |
| Public pricing | Slider with three named cost-driver dimensions. No $ tier numbers. Form for quote. | None visible. /pricing path 403s. |
"Contact us" only. | Self-host: free. Cloud tiers: published. |
| Hosting model in 2026 | Cloud-only. Sister product Kentico Xperience is on-prem and still sold. | Cloud-only (XM Cloud). On-prem XM/XP in maintenance. | SaaS-only since launch. | You. |
| Delivery layer | Fastly-fronted REST. Stockholm POP for FRA traffic. | Cloudflare-fronted GraphQL. RFC 7807 errors. | Multi-region CDN (AWS/Azure/GCP), 7 region URLs. | Whatever you put in front of the container. |
| Error envelope quality | Operator-friendly: names what's missing, points at the UI path, links to docs, exposes request_id + numeric error_code. |
Standards-compliant (RFC 7807) but minimal: "No sitecore context". |
Standards-compliant, machine-readable. | BYO. |
| SDK breadth | .NET (first-class), JS/TS, Java, PHP, Python, Ruby, Swift. | JSS / Next.js Headless SDK + .NET legacy. | Multiple, JS-led. | Community-maintained. |
| Origin / data residency | Czech-headquartered (Brno), EU-native data residency. | Danish HQ; cloud is multi-region. | US-headquartered, multi-region. | Where you put the box. |
| AI surface | The .ai rebrand is mostly marketing wrapping; the AI features ship under the same product. Brand voice / drafting assistant in the authoring app. | "SitecoreAI" — agentic content authoring, currently the marketing wrapper. | Brand-aware writing assistant + agent workflows. | BYO LLM via plugins. |
| Vendor lock-in | High. Authoring lives in their tenant; export tooling exists. | High. Same shape. | High. Same shape. | Low. Database is yours. |
| Realistic procurement window | Weeks to a few months. | Months. MSA, DPA, security review. | Weeks to months. | One afternoon. |
None of those rows are a verdict. If your CMO already chose a vendor on the basis of "who do our peer brands use," none of the technical rows will overturn that. For a six-person team picking a CMS for two years, Kontent.ai is a category mismatch — the slider is honest, but it's still an enterprise-procurement product.
Where Kontent.ai is the right answer
Two situations where we'd put Kontent.ai on a shortlist on technical merits, not just brand-tier matching:
- EU data residency is contractually required. Czech HQ, Fastly EU POPs, GDPR-native. The data path doesn't touch a US-headquartered tenant by default. That alone closes deals in EU public sector and pharma where a US vendor needs an extra two months of legal review.
- Microsoft / .NET shop with editorial-heavy content. The .NET SDK is genuinely first-class — that's the pedigree from Kentico's Xperience product. Combined with editorial workflows and multi-language variants, this is the natural pick for a brand whose CMS team is .NET and whose content is pages, not products.
Where we'd push back: a startup of 6–30 with no editorial team, no compliance need, and no .NET investment shouldn't be on this shortlist. Procurement window, lock-in, and inability to model cost without a phone call are disqualifying for that segment. We'd self-host Strapi, Directus, or Payload and revisit once we had revenue and a compliance need.
Questions worth asking before the demo
- What is the unit cost behind each slider? Seats, content types, content items. Get a written per-unit number so you can model 2x and 5x growth.
- What is the migration story off? Authoring lives in their tenant. Ask for a written worst-case "we leave in 18 months" description.
- What is the SLA on Delivery API in our region? Fastly-fronted is a strong sign; ask for the contractual number and the incident history.
- Where does my data physically live, and is that contractual? EU data residency is a Kontent.ai strength; make sure it's in the MSA, not just the marketing site.
- Which AI features are GA today vs roadmap? The rebrand happened in 2024. Some features are real, some are conference-deck. Get the list.
Things we'd change about the public surface
- Resolve the slider to a number. The three sliders already shape the quote. Put a "starts at $X / month at this configuration" badge on it. Procurement will love you for it.
- Self-serve developer sandbox. A scoped 30-day tenant with the demo content tree pre-loaded would let evaluators write a real Next.js or .NET integration before the first sales call. The Delivery API is too good to hide behind a quote form.
- Own the rebrand more forcefully on the customer-stories page. Several visible case studies still read "Kentico Kontent" — confusing for someone who searched "Kontent.ai."
What we'd actually do
If we were the CMS lead at a European publisher with a dotnet stack and a compliance officer in the meeting, we'd put Kontent.ai on the shortlist alongside Contentstack and probably above Sitecore XM Cloud — the docs and the API are better, the EU-native data path is real, and the procurement story is meaningfully shorter than Sitecore's. We'd skip it for any team that's primarily a JS shop with a developer-experience-first culture and no compliance-driven need; Payload or Directus are better fits for that profile and cost two orders of magnitude less to evaluate.
Where this fits
Adjacent scouting notes: Sitecore XM Cloud, Contentstack, DatoCMS, Strapi, Directus, Payload, Ghost. SimpleReview is the Chrome extension that turns whatever element you click on a broken admin or storefront into a draft code-fix PR — it works the same on a Kontent.ai-rendered Next.js front end as on a Strapi one, because by the time the page renders it is just HTML.