Sitecore
XP to XM Cloud: What Migrates (and What Doesn't)
Understanding what migrates cleanly vs. what requires rebuild is critical for effort estimation.
| Component | Migrates? | Effort | Notes |
|---|---|---|---|
| Content Items | Yes | Low | XM to XM Cloud migration tool handles this |
| Templates | Yes | Low-Medium | Templates migrate, but may need refactoring for headless patterns |
| Media Library | Yes | Low | Media items migrate cleanly; large libraries (> 10GB) require batch import |
| Users/Roles | Partial | Low-Medium | XM Cloud uses Sitecore Cloud Portal (SSO/OIDC) — users must be re-provisioned, not migrated 1:1 |
| Workflows | Partial | Low-Medium | Basic workflow states migrate; recommend simplifying to Draft/Published for XM Cloud |
| MVC Views | No (rebuild) | High | Must rewrite as Content SDK or JSS Next.js components with Headless SXA |
| Custom Pipelines | No | High | XM Cloud doesn’t support custom pipelines — move logic to middleware/microservices |
| xDB Analytics | No | N/A | xDB doesn’t exist in XM Cloud; use Sitecore CDP (separate license) or export to data warehouse |
| Personalization Rules | Partial | High | Server-side rules don’t migrate; reimplement as Personalize + CDP (separate product) |
| Solr Indexes | N/A | Medium | Use Sitecore Search (separate license) or third-party (Algolia, Elasticsearch) |
| Serialization | Migration | Medium | TDS/Unicorn to SCS (Sitecore CLI) |
| Forms | Rebuild | Medium | XM Cloud Forms is a new product (evolved from Sitecore Send, webhook-based) — not compatible with XP Forms |
Key Takeaways
Section titled “Key Takeaways”- Content migration is straightforward — Official Sitecore tool exists
- Code migration is NOT straightforward — MVC to Next.js rewrite required (60-70% of effort)
- Data migration (xDB) is impossible — xDB doesn’t exist in XM Cloud; analytics history lost