Case Study
View Case StudyTray.ai
Migrating hundreds of thousands of pages, re-platforming and extending for the leading composable AI integration platform

From Craft CMS to Adobe Experience Manager
Key pain points
The elephant in the room is PHP. Craft requires a traditional LAMP-style hosting setup with PHP 8.2+ and MySQL or Postgres, which immediately rules out the serverless and edge-first hosting that modern JavaScript frameworks thrive on. You're managing servers, configuring OPcache, tuning database connections, and dealing with all the operational overhead that comes with self-hosted PHP applications. For teams already working in the JavaScript ecosystem, this is a hard sell.
Major version upgrades are genuinely painful. Craft doesn't support skipping major versions, so migrating from Craft 2 to 5 means stepping through every version in between. Each jump brings breaking changes to Twig templates, PHP requirements, and plugin compatibility. We've seen agencies spend weeks on upgrades that should have been straightforward. The Team tier starts at $279 per project and the Pro tier costs $399, plus $99 annual renewals for both. A free Solo tier exists for single-user projects, but costs still add up for agencies, especially when you factor in plugins and the recent trend toward stricter licence enforcement in the control panel.
The community, while passionate, is relatively small compared to WordPress or even newer headless CMS platforms. When you hit an edge case or need help with a niche plugin, you may find yourself digging through GitHub issues rather than finding a ready answer. And while Craft Cloud exists as a managed hosting option, it's still maturing and doesn't yet match the deployment experience you'd get with platforms like Vercel or Netlify.

PHP hosting requirements
You need a traditional server with PHP 8.2+, MySQL or Postgres, and proper configuration. No serverless, no edge deployment, no modern hosting shortcuts.

Painful major version upgrades
You can't skip major versions, so upgrades mean stepping through each release with breaking Twig, PHP, and plugin changes along the way.

Smaller community and ecosystem
The community is dedicated but small. Finding answers to niche problems often means digging through GitHub issues or waiting on forum responses.

Licence costs add up
The Team tier is $279 per project and Pro is $399, both with $99 annual renewals, plus paid plugins on top. A free Solo tier exists for single-user projects, but costs add up quickly for agencies managing multiple client sites.

Learning curve for non-developers
Craft assumes your team includes developers. Content editors coming from WordPress or simpler tools will need time to adjust to the more structured interface.

Twig templating limitations
Twig is clean but limited compared to modern component frameworks. Complex UI logic gets awkward, and you're locked into whatever Twig version Craft supports.
Key advantages
AEM is the kind of platform you only choose if you’re a Fortune 500 company or enjoy voluntarily suffering. I hate anything Adobe builds. It’s bloated, overpriced, and aggressively designed to lock you into their ecosystem. But fine, here are the positives: the Adobe integration is unmatched. If your entire organisation already lives inside Creative Cloud, Analytics, and Target, AEM becomes this giant DXP monolith that handles assets, personalization, segmentation, and multi-channel delivery without breaking a sweat. The DAM is legitimately powerful, and it scales like a tank.
If you’re not operating at scale, you’ll spend absurd money for problems a clean Sanity + modern composable stack solves better and cheaper. If you are considering AEM or escaping it, get in touch. We’ll help you choose something that won’t haunt your ops team for the next decade.

Integration with Adobe tools
AEM connects with Creative Cloud, Analytics, and Target, letting teams move assets, data, and personalisation logic across tools without friction
Robust digital asset management
The DAM is genuinely powerful. It has AI tagging, smart cropping, versioning, and bulk optimisation for massive media libraries.

Consistent multi-channel delivery
AEM can push content to web, mobile apps, email, and more from one central source. Ideal for enterprises that need consistent messaging across every customer touchpoint.

Flexible architecture
Supports both classic and headless approaches, letting teams mix legacy setups with modern frontends. It’s adaptable enough for companies with complicated stacks.

Scalable enterprise-level operations
AEM is designed to handle huge traffic, global teams, and heavy workflows. It scales reliably when backed by proper infrastructure and Adobe’s cloud.

Intuitive user interface
For an enterprise platform, the UI is relatively approachable, helping large content teams manage complex workflows without needing to touch code.
Book a meeting with us to discuss how we can help or fill out a form to get in touch
Join the growing list of successful migrations
Case Study
View Case StudyMigrating hundreds of thousands of pages, re-platforming and extending for the leading composable AI integration platform

Case Study
View Case StudyFrom Sanity overages to instantaneous publishing, we brought Mario Testino into the fast lane, and did it in style.

Case Study
View Case StudyHelping the UAE's most prolific Pay in 4 merchants scale their design system and composable infrastructure.

Case Study
View Case StudyHow we helped the fastest growing online cycling community, push the editorial velocity to new heights.
