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

From Drupal to Storyblok
Key pain points
Here's the uncomfortable truth about Drupal: it's powerful, but it demands a level of investment that most teams underestimate. The learning curve is brutal. We're not talking about a weekend of tutorials; we're talking about months before a developer is truly productive. Drupal 8 and beyond adopted Symfony patterns, which is great for architecture but means you now need a PHP developer who also understands dependency injection, service containers, and YAML configuration files that seem to multiply overnight. Finding and retaining Drupal talent is genuinely difficult, and the developer survey data confirms it: fewer than 10% of the community is under 30, and almost nobody is joining fresh.
The upgrade story has been a recurring nightmare. The jump from Drupal 7 to 8 was essentially a full rebuild, and the ongoing churn from PHP and Symfony upstream changes means your team spends a meaningful chunk of time just keeping the lights on. Module compatibility breaks, themes need reworking, and the update process still isn't fully automated. If you're on a lean team, that maintenance burden is going to eat into your feature development time.
And then there's the content editor experience. Drupal was built by engineers for engineers, and it shows. The admin interface is functional but far from intuitive, and content teams coming from friendlier platforms consistently struggle with it. You can improve things with contributed modules and custom configuration, but that's more time and money. At the end of the day, if you don't have the budget for a dedicated Drupal team or a long-term agency partnership, you're going to have a bad time.

Punishing learning curve
Getting productive in Drupal takes months, not days. The combination of Symfony patterns, YAML configuration, and Drupal-specific conventions means onboarding new developers is slow and expensive.

Shrinking talent pool
The developer community is aging out. Fewer than 10% of Drupal developers are under 30, and new developers aren't joining at a rate that replaces those leaving. Finding affordable Drupal expertise is a real challenge.

Painful upgrade cycles
Between PHP version bumps, Symfony updates, and Drupal core changes, your team will spend significant time on maintenance that has nothing to do with shipping features. The Drupal 7 to 8 migration was so brutal they delayed end-of-life for years.

Poor content editor experience
The admin interface was designed by developers, and it shows. Content teams coming from WordPress, Sanity, or any modern CMS will find the editing experience clunky and unintuitive without significant customization.

Resource-hungry infrastructure
Drupal is not light. It demands proper server resources, caching layers, and database optimization to perform well. Cheap shared hosting won't cut it, and infrastructure costs add up quickly.

High total cost of ownership
It's open source, but don't let that fool you. Between specialized developers, hosting requirements, ongoing maintenance, and the sheer time investment to configure everything, Drupal projects consistently cost more than teams expect.
Key advantages
If you’ve ever tried explaining “headless” to a content team and watched their eyes glaze over, Storyblok is your peace offering. On the surface, it appears to be great. For instance, its visual editor makes you feel like you are finally living in 2025. But start digging, and you’ll find some gremlins in the codebase and the pricing page. Their APIs are still missing some basic functionalities like fetching child or sibling pages.
Still, if Storyblok is your choice, we can make it work. Our team knows how to set it up cleanly, dodge the common blockers, and keep your build from turning into another “looked nice, aged badly” project.
Visual editing capabilities
Yes, you read that right, you can do real-time, on-page editing. Make a change, see it instantly, no staging limbo, which means you can stop “guess and publish.”
Component-based approach
You can build a component once and use it everywhere. You can also update a button or banner in one place, and the entire site fixes itself.

Efficient content structuring
Your content stays clean, organised, reusable, and not scattered across 40 pages. Developers work with structured data, editors drag-and-drop pieces like Lego. Everyone gets to stay sane.

Robust multi-language support
One CMS, many languages, zero chaos. Localise content without duplicate pages, messy exports, or spreadsheet archaeology.

Collaborative environment
Writers, designers, and editors can all jump in at the same time without breaking each other’s work. Add comments and approvals. View version histories for teamwork without the headache.

Highly customisable
If your design system can imagine it, you can use Storyblok to model it. There are custom fields, workflows, and logics that can bend to your stack rather than the other way around.
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.
