Transition from Sitecore XP/XM Developer to a Seasoned Sitecore XM Cloud Developer
If your Sitecore muscle memory was built on XM/XP with MVC, TDS/Unicorn, CD instances, Solr, Sitecore modules, Item Web API, and custom pipelines, XM Cloud rewrites the playbook. the below blog represents a fundamental shift in how you serialize, publish, deliver, and extend. Here are the key differences.
Use Sitecore CLI instead of TDS/Unicorn
In XM Cloud, the first-class mechanism for moving definition items (templates, renderings, branches, rules, etc.) is Sitecore Content Serialization (SCS) driven by the Sitecore CLI.
Set up a serialization module for your solution and commit serialized items to source control.
Restoring databases between environments is not supported. Content synchronization across environments likewise goes through the CLI-driven workflows rather than database restores.
See the official Sitecore documentation for guidance on configuring the CLI.
Sitecore Experience Edge Replaces the Content Delivery Servers
You no longer maintain multiple Content Delivery (CD) servers. XM Cloud replaces CD servers with Sitecore Experience Edge: a GraphQL API-based service that delivers layout and content via a CDN, hosted by Sitecore.
Your front end consumes content and layout data from Experience Edge.
Operational concerns like scaling and caching at the edge are handled by the platform.
Refer to the Experience Edge documentation for architecture and usage details.
Use Graphql to view the Published Content
XM Cloud does not include a Web database. You cannot switch to Web to verify published state. To preview or inspect published content:
Use the GraphQL Delivery API (e.g., via the GraphQL Playground) against Experience Edge.
Query both content and layout data to validate what your application will receive
Understanding the differences in Publishing Process
XM Cloud publishes to Experience Edge by default. Custom publishing targets are not supported. Keep these differences in mind:
Layout JSON generation: The Layout Service generates JSON for pages that have a layout.
Dependencies: XM Cloud publishes item dependencies by default, even if “Related items” is not checked. Implement robust workflows and approval steps to control what goes live.
Language fallback and versions: If you rely on language fallback, publish the fallback language versions as well to ensure JSON is generated for all required languages.
Local data sources: If changes to a local data source are not reflected at the edge, republish the page item to regenerate the page JSON.
See the XM Cloud publishing documentation for deeper details and best practices.
Using items as resources
XM Cloud treats serialized items as immutable resources at runtime.
Key behaviors:
Items from source control: All items included via serialization and deployed are created as resource items by default.
Immutability: Resource items are read-only in the CM. If you edit one, Sitecore creates a database item with the same ID.
Override behavior: Once an item exists as a database item, future changes from source control will not affect that item.
Reverting: Delete the database item to fall back to the resource item version.
Deletion limits: You cannot delete a resource item directly from Sitecore.
Identify source: Enable the “Source” field in the Quick Info section to see whether an item comes from the database or a resource.
Conversions: Use the Itemres CLI command to convert a database item back to a resource item.
You can read More about items as resource here
Use Graphql Mutations instead of item Web Api
To perform any bulk operations on the items, use Graphql Mutations instead of web Api. You can find more about Mutations here
Sitecore Modules
CD-side modules are not supported.
XM Cloud allows installing modules on CM, but any files added at runtime are ephemeral and will be lost on restart. If you must use a module, all files must live in source control and be deployed with your application. Sitecore does not generally recommend installing legacy modules.
For custom requirements, Sitecore recommends creating a Marketplace application. Review the Sitecore Marketplace guidance for XM Cloud–compatible apps.
Deploy App
The Deploy app is used to provision and manage XM Cloud environments and deployments.
Provision environments and trigger deployments.
View logs, deployment history, and environment details in one place.
Access is limited to users with the appropriate organization-level roles (e.g., Organization Admin).
Refer to the Deploy app documentation for permissions, branching strategies, and CI/CD integration.

