
Grab your gear: The official Sanity swag store
Read Grab your gear: The official Sanity swag storeI've seen this issue before! You're dealing with an unpublished draft that's "invisible" but still taking up the slug. Here's what's happening and how to fix it:
When you duplicated the page, Sanity created a draft document (even though you didn't publish it). In Sanity, drafts have IDs prefixed with drafts. - so if your original page ID is page-123, the duplicate draft is drafts.page-456. These drafts exist in your Content Lake even if you navigate away without publishing them.
The problem is that your duplicate draft is using the same slug as the original, and Sanity's slug validation is catching this conflict - even though you can't see the draft in your normal document list view.
Option 1: Use Vision (GROQ Playground)
*[_id in path("drafts.**")]_id and paste it in your browser's URL bar: your-studio-url/desk/page-id)Option 2: Search by Slug
In Vision, search specifically for documents with that slug:
*[slug.current == "your-slug-here"]This will show you both the published document AND the draft that's causing the conflict.
Option 3: Use the "Review Changes" Feature
If your Studio has the Review Changes feature enabled, you might be able to see pending drafts there and discard them.
The slug validation is actually protecting you from having multiple pages with the same URL, but it can be confusing when the conflicting document isn't visible in your normal workflow!
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