How to fix "Crawled - currently not indexed" after a migration
After a migration, this coverage state usually points to structural conflicts in templates, canonicals, internal links, or sitemap quality before it points to content quality.
Implementation-first service
For sites where Google has crawled the URL but is not keeping it indexed, especially after migrations, sitemap cleanup, template changes, duplicate URL cleanup, or archive/product/category expansion.
Sprint shape
Clear scope before implementation, one controlled sprint, and written verification at the end.
The first pass is meant to move the actual problem, not generate vague theory or generic audits without implementation.
Sharper symptoms
These narrower pages map the same service lane to a more specific failure path, input set, and first-sprint shape.
This state can be technical, quality-related, or crawl-priority related. The first job is to separate pages that send mixed technical signals from pages that are technically fine but too weak, duplicated, isolated, or low-priority to keep in the index.
Manual indexing requests rarely solve it if the template group, sitemap set, canonical output, or internal-link path still tells Google the page is not worth keeping.
Send the affected URLs, CMS or stack, the coverage state in Search Console, the sitemap URL, what changed recently, and whether implementation access is available.
Best-case context is one healthy comparison URL, one failing URL, and the launch, migration, or template change that likely introduced the conflict.
A bounded first sprint that samples affected URLs, compares crawl, sitemap, canonical, internal link, and GSC state, groups issues by template, recommends or implements the first cleanup path, and hands off a recrawl and monitoring plan.
Sites where the problem is concentrated in one page type, section, template set, or post-migration URL group and the first sprint can stay tightly scoped.
Price expectation
Most work starts as a fixed first sprint after the issue is reviewed.
Related notes
These notes show the failure paths, checks, and verification logic that usually sit behind the sprint.
After a migration, this coverage state usually points to structural conflicts in templates, canonicals, internal links, or sitemap quality before it points to content quality.
When Search Console reports "Alternate page with proper canonical tag" or "Duplicate, Google chose different canonical," the implementation is usually still leaking variants around the URL you intended to win.
Start with the issue
Send the URL, what changed, and where the break shows up. If the issue is sharp enough, the first reply should turn into a bounded sprint instead of a broad package.