Migrating content from an on-premise or AMS AEM instance to AEM as a Cloud Service (AEMaaCS) requires a well-defined strategy. This guide outlines the best practices and steps involved in content migration using the Adobe Content Transfer Tool (CTT).
Non members can access here
AEM as a Cloud Service Fitment
Before migrating content, it is essential to assess the source AEM instance for compatibility with AEMaaCS.
Pre-Migration Assessment:
- Perform offline compaction, data store garbage collection, and data consistency checks.
- Gather source AEM repository statistics:
- Segment store size
- Index store size
- Number of assets
- Number of pages
- Number of users & groups
- Verify if the following features are enabled and required in AEMaaCS:
- Smart tagging
- Similarity search
- Full-text search in Word/PDF documents
- Collect the Best Practices Analyzer (BPA) report.
- Import the BPA report into Cloud Acceleration Manager (CAM).
- Review recommendations to ensure AEMaaCS can handle the required storage and performance needs.
- Create an Adobe support ticket for any clarifications before proceeding with migration.
Proof of Migration
The proof of migration phase involves testing a small subset of content before a full-scale migration.
Steps:
- Request a production clone
- Clone an author and a publish node (one of each in case of a cluster).
- Maintain the same network zone.
- Clone users, groups, and content.
2. Migrate a subset of content
- Select a sample that represents all content types.
- Include all users & groups if user mapping is required.
- Limit migration to 25% of total content or 1TB, whichever is smaller
3. Execute a full and top-up migration to AEMaaCS non-production.
4. Resolve any issues:
- Disk space constraints on the source AEM instance.
- Connectivity issues between source AEM and AEMaaCS.
- Ingestion-related errors.
5. Record migration time:
- Track how much content is migrated per week.
- Extrapolate migration time to plan for full migration.
Initial Migration
After successful testing, proceed with the full initial migration.
Steps:
- Initiate migration using a staged approach:
- Author → Author
- Publish → Publish
- Note: AEMaaCS author will be scaled down during ingestion, but AEMaaCS publish remains up.
- Validate ingested content in both AEMaaCS Author & Publish.
Instruct content authors:
- Avoid modifying or moving content on both source & target during ingestion.
- New content additions/edits are allowed, but existing content should not be moved.
- Track migration time to estimate future top-up migrations.
- Create a migration planner to document each step.
Incremental Top-Ups
After initial migration, incremental top-ups ensure all newly added content is transferred.
Best Practices:
- Gather content updates weekly, biweekly, or monthly.
- Plan top-ups to avoid exceeding 48 hours of content extraction + ingestion.
- Ensure top-ups do not fall into weekends.
- Estimate and backtrack top-up migrations based on the go-live timeline.
Guidelines & Best Practices for CTT
To ensure a successful content migration:
- Run revision cleanup & data consistency checks on the source repository before migration.
- Use Wipe Mode during ingestion:
- Wipe mode deletes the existing repository in AEMaaCS before ingestion.
- This method is faster than applying changes on top of existing content.
- Ensure proper project structure in AEMaaCS to prevent rendering issues.
- Verify available disk space in crx-quickstart:
Required disk space formula:
- Data store size + (Node store size * 1.5)
- Example: If the segment store size is 20GB, then required free disk space = 94GB.
- Maintain a single migration set for consistent content transfer.
- Limit migration sets to 10 per project in Cloud Acceleration Manager.
- If more than 10 sets are needed, create a second project (requires additional governance)
3. Do not modify CTT's installation directory (crx-quickstart/cloud-migration).
- Altering this path can cause extraction issues.
CTT Tool: Migration from Local to Cloud
Installing and Configuring CTT:
- Download the latest CTT Tool from Adobe Experience League.
- Install it on your local AEM instance.
- Generate an extraction key from Cloud Manager.
- Provide the extraction key in CTT UI to fetch the project name and migration set name.
- Add content paths to migrate (e.g., /content/sitea).
- Optionally, upload a CSV file with multiple paths.



Restricted Paths:
The following paths cannot be migrated using CTT:
- /apps
- /libs
- /home
- /etc (some /etc paths are allowed)
Steps to Obtain an Extraction Key:
- Login to Cloud Manager

2.Create a Migration Set
3. Copy the Extraction Key

4. Use the Key in CTT to Start Extraction
CTT Migration Process: Extraction & Ingestion
- Extraction:
- Retrieves content from the source AEM instance.
- Prepares content for migration.
- Ingestion:
- Transfers extracted content from cloud storage to AEMaaCS target instance.
For detailed Adobe documentation, visit: Adobe Experience League — CTT Guide
Following this structured approach ensures a smooth and error-free migration to AEM as a Cloud Service, maintaining content integrity and minimizing downtime.
Conclusion
Migrating to AEMaaCS is a crucial step towards modernizing your AEM environment. By leveraging Adobe's Content Transfer Tool, performing thorough assessments, and following best practices, you can ensure a seamless transition.
If you have any questions or experiences related to AEM migration, feel free to share them in the comments