How to enable Cyrillic characters in deskStructure titles?

23 replies
Last updated: Jan 28, 2026
Is there a way to enable setting deskStructure title's in other languages? I get an error any time that I try adding titles in Cyrillic
AI Update

The issue you're encountering is a common one - Sanity's Structure Builder requires that list item IDs must contain only alphanumeric characters (letters A-Z, a-z, numbers 0-9, and sometimes hyphens/underscores). This means Cyrillic characters, emojis, and other Unicode characters aren't allowed in the id field.

However, there's good news: you can absolutely use Cyrillic (or any other language) in the title field. The id and title are separate properties:

  • id: Must be alphanumeric (used internally for routing and identification)
  • title: Can contain any characters including Cyrillic, Chinese, Arabic, emojis, etc. (this is what users see)

Here's how to properly structure your desk configuration:

S.listItem()
  .id('events') // Must be alphanumeric
  .title('События') // Can be Cyrillic!
  .child(
    S.documentTypeList('event')
      .title('Все события')
  )

Or with documentTypeListItem:

S.documentTypeListItem('artist')
  .id('artists') // Alphanumeric ID
  .title('Артисты') // Cyrillic title - totally fine!

The key is to always provide an explicit id() with alphanumeric characters, and then use title() for your localized display text. The Structure Builder uses the ID for internal navigation and routing (it appears in the URL), while the title is what appears in the Studio UI.

If you're getting errors, it's likely because either:

  1. You're trying to use Cyrillic characters in the .id() method
  2. You're only setting a title without an explicit ID, and Sanity is trying to auto-generate an ID from your Cyrillic title

Always set both explicitly, and you'll be able to use any language you want for your visible titles while keeping the technical IDs in alphanumeric format.

Show original thread
23 replies

Sanity – Build the way you think, not the way your CMS thinks

Sanity is the developer-first content operating system that gives you complete control. Schema-as-code, GROQ queries, and real-time APIs mean no more workarounds or waiting for deployments. Free to start, scale as you grow.

Was this answer helpful?