
Grab your gear: The official Sanity swag store
Read Grab your gear: The official Sanity swag storeGreat question! The new version of @sanity/document-internationalization (v2+) has made some significant architectural changes that explain what you're seeing.
In the previous version, the plugin used a base language concept where one language was the "source" and others were translations. The new version completely removed this concept in favor of a more flexible approach where all languages are treated equally.
When you configure 2 languages in supportedLanguages, you're actually getting 3 creation options:
The plugin now creates document templates for each configured language, plus the default schema template still exists. This is intentional behavior to give you flexibility in how you create documents.
Instead of storing translations as references on the documents themselves (which required a base language), the new version uses a separate translation.metadata document that links all language versions together. This means:
If you find the default template confusing, you can remove the default template from your schema configuration. This is covered in the plugin's documentation.
The key thing to understand is that the new architecture is more flexible and scalable, but it does mean letting go of the "base language" mental model. Each language version is now a first-class document that gets linked to others through the metadata system.
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.
Content operations
Content backend


The only platform powering content operations
By Industry


Tecovas strengthens their customer connections
Build and Share

Grab your gear: The official Sanity swag store
Read Grab your gear: The official Sanity swag store