Issue with "Create New" button not appearing for array type reference to category in Sanity Studio.
You're observing a difference in how Sanity Studio handles inline document creation between single reference fields and arrays of references. When you have a single category reference, you see a "Create new" button, but when you have an array of category references, that button doesn't appear in the same way.
While I cannot find explicit documentation that explains this specific UI behavior difference, this appears to be how the Studio's interface currently works. The array fields documentation shows that arrays support features like drag-and-drop reordering, copy/paste operations, and multiple member types, which suggests the array item selection interface is optimized for choosing from existing documents rather than inline creation.
Practical Solutions
Here are some approaches you can use to work with category creation in an array context:
1. Two-Tab Workflow
Open Sanity Studio in a separate browser tab to create new categories, then return to your page document to select them. This is the most straightforward approach that works with the current Studio interface.
2. Initial Value Templates
Set up initial value templates for your category documents. This can speed up category creation by pre-filling common fields, making the tab-switching workflow less disruptive:
export default {
name: 'category',
type: 'document',
initialValue: {
status: 'active'
}
}3. Custom Input Component
For a more integrated experience, you could build a custom input component for your categories array that includes its own "Create new category" functionality. This requires custom React code but would give you control over the creation workflow within the array interface itself.
4. Rethink Your Content Workflow
Consider whether your team's workflow might benefit from creating categories as a separate step before building pages. Sometimes establishing your taxonomy first can be a more natural content authoring flow.
Getting More Help
If this limitation significantly impacts your workflow, I'd recommend:
- Checking the Sanity Community to see if others have built custom solutions
- Joining the Community Slack to discuss workarounds with other developers
- Considering whether a custom input component might be worth the development effort for your specific use case
The behavior you're experiencing seems to be how the current Studio interface handles these different field types, rather than something you can change through schema configuration alone.
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.