# Directus to Drupal migration

> How to migrate from Directus to Drupal, with a side-by-side comparison and FAQs.

---

## Source: Directus

- **Type:** headless
- **Official site:** https://directus.io
- **Pricing:** https://directus.io/pricing
- **Last reviewed:** 2026-07-28

## Key advantages

Directus instantly wins points with us because, well… it has a rabbit for a logo. But beyond that, it's genuinely a solid database-first CMS. If you like the idea of a CMS that sits directly on top of your SQL database without any abstractions, Directus feels incredibly natural.

You can self-host it, tweak it endlessly, and treat your schema exactly the way you want. Editors get a no-code admin UI that feels polished, developers get REST and GraphQL out of the box, and teams get workflows, versioning, automations, and proper permission controls. It's flexible, fast, and a great fit if your content is really just structured data waiting for a smarter interface. If your project revolves around relational data and you want total control from database to API, Directus is one of the cleanest ways to build it.

### Intuitive non-technical interface

Editors get a clean, no-code admin panel that feels more like a productivity tool than a CMS. Non-technical teams can handle content updates without pinging developers every five minutes.

### Database-agnostic SQL integration

Directus plugs straight into your SQL database and turns it into an API instantly. If your data lives in Postgres, MySQL, MariaDB, or SQLite, it just works.

### Field-level permission controls

You can lock down every field, table, and action with granular role-based permissions. Perfect for teams that care about security and don't want interns accidentally deleting production data.

### Built-in REST/GraphQL support

Your entire database is instantly exposed as both REST and GraphQL endpoints. Just plug into your frontend and start shipping.

### Extensive UI customization 

Directus lets you tweak the interface, add custom views, tailor layouts, and build the exact editing experience your team needs. It feels like a CMS you can actually shape instead of fight.

### Real-time collaborative editing

Multiple contributors can work in the Studio at the same time without stepping on each other's toes. Collaborative editing shipped in February 2026, so drafts stay clean and the whole workflow feels built for modern teams, not 2010 intranets.

### AI Assistant with image and PDF support

The built-in AI Assistant can process images and PDFs as well as text, and it works across OpenAI, Anthropic, and Google Gemini. It's a genuinely useful addition rather than a feature-list checkbox.

## Key pain points

Directus looks fantastic in demos, but things get rocky once you actually try to use it at scale. The Team cloud plan is $499/month (or $599 billed monthly) and caps you at 10 SSO seats, 50 collections, and 20 flows. Grow past those limits and you're straight into custom Enterprise territory. The v12 move to the Monospace Sustainable Core License (MSCL) has also rattled the community; smaller orgs get a free Innovation Grant, but larger teams are navigating a licensing landscape that changed significantly from what they signed up for.

On the dev side, updates can introduce breaking changes, the documentation doesn't always keep pace, and the extension ecosystem is pretty thin. Localization is technically supported but fiddly and easy to misconfigure, and large datasets make the UI noticeably sluggish. And if you want anything deeply custom, you're suddenly living in Vue.js land, which is not where most teams want to spend their weekends.

### Breaking update changes

Directus explicitly does not follow semver: any release may include breaking changes. The v10 to v11 upgrade hit schema changes and dropped fields, and the v11 UI scale change (px to rem) broke extensions hardcoding pixel values. Plan your upgrade windows carefully.

### Limited extension ecosystem

The plugin ecosystem is still pretty bare. Anything even mildly niche ends up becoming a "let's just custom build it" moment, which defeats the purpose of picking a CMS with extensions. The marketplace launched in beta in early 2024 and is still maturing.

### Complex localization setup

Yes, it supports multilingual content, but setting it up feels like assembling IKEA furniture blindfolded. It works, but expect extra config, extra steps, and extra patience.

### Version history still tier-gated

Global draft versions now ship automatically with every versioned item (no manual setup required as of March 2026), which is a genuine improvement. Full version history, rollbacks, and controlled releases are still locked behind higher-tier plans, though, so if predictable publishing workflows are a must, check your tier carefully before committing.

### Vue.js knowledge requirement

Custom interfaces and deeper tweaks need Vue.js, so if your team only speaks React, prepare for a small identity crisis (or a hiring plan).

### Large dataset performance issues

Heavy tables and deeply relational data can slow down queries and the UI: community reports show 25K-row datasets where raw SQL runs in milliseconds but the Directus API takes 20+ seconds, largely due to internal query overhead and no auto-indexes on foreign keys.

## Target: Drupal

- **Type:** hybrid
- **Official site:** https://www.drupal.org
- **Last reviewed:** 2026-07-28

## Key advantages

We'll give credit where it's due: Drupal is a serious CMS for serious projects. If you're building a government portal, a university website, or a massive multilingual platform that needs to serve content in 24 languages, Drupal is genuinely hard to beat. Its content modeling is incredibly deep, its permissions system is enterprise-grade, and its multilingual capabilities are the best in the open-source CMS world. The European Commission runs on it for a reason.

Where Drupal really shines is in complex, structured content architectures. You can model relationships between content types, build granular taxonomies, and set up editorial workflows that would make other CMS platforms weep. If your content team has 50 editors across multiple departments with different access levels, Drupal handles that without breaking a sweat. It's also one of the few traditional CMS platforms that has genuinely embraced decoupled architecture, so you can use it as a headless backend with a modern frontend framework if you want.

The community is smaller than WordPress but significantly more technical. Drupal developers tend to be proper engineers, and the ecosystem reflects that. Module quality is generally higher, security patches are taken seriously, and the project has strong governance. If you're in an enterprise or government context where compliance, accessibility, and security auditing matter, Drupal is a well-trodden path.

That said, we'd only recommend Drupal for projects that genuinely need its power. If you're building a marketing site or a blog, you're using a sledgehammer to hang a picture frame. Talk to us first, and we'll figure out if Drupal is actually the right fit or if you've been sold on it by someone who bills by the hour.

### Exceptional content modeling

Drupal's entity and field system lets you build deeply structured, relational content architectures that most CMS platforms can only dream of. Complex taxonomies, references, and custom types are all first-class citizens.

### Best-in-class multilingual support

With over 90 languages available out of the box and proper translation workflows baked in, Drupal is the gold standard for multilingual sites. No plugins, no hacks, just native support that actually works.

### Granular permissions and workflows

The access control system is absurdly detailed. You can lock down roles, content types, fields, and editorial workflows with a precision that enterprise clients genuinely need and other platforms struggle to match.

### Viable headless architecture

Drupal's JSON:API and GraphQL modules make it a legitimate headless CMS option, letting you pair its deep content backend with a modern frontend framework like Next.js or Nuxt.

### Strong security track record

The Drupal security team is proactive and well-organized. Security advisories are clear, patches are timely, and the community takes vulnerabilities seriously, which matters a lot in government and enterprise contexts.

### Open source with no vendor lock-in

You own your data, your code, and your hosting. There's no monthly SaaS bill that scales with your content volume, and you can move between hosting providers without rewriting anything.

## 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. 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.

## Frequently asked questions

### How do we migrate content out of Directus?

Directus sits directly on your SQL database, which is both a blessing and a curse during migration. The blessing is that your content is in standard PostgreSQL, MySQL, or SQLite tables, so extraction is as simple as SQL queries. The curse is that Directus stores relational data and file references in its own conventions, so you need to untangle junction tables and re-map asset URLs. We write custom migration scripts for each project. A typical Directus migration with 50 to 100 content types takes 3 to 5 weeks.

### Why do teams move away from Directus?

The two biggest triggers we see right now are licensing uncertainty and pricing sticker shock. Directus moved to the Monospace Sustainable Core License (MSCL) with v12 in May 2026, replacing the old BSL. Organisations under $5M revenue and 50 employees get a free Innovation Grant, but even above those thresholds the MSCL still permits free use of the Core tier, so larger orgs aren't categorically forced onto paid plans, though many opt into the cloud or a commercial self-hosted license for the production features sitting outside Core, and the community is noticeably split, with some teams forking old versions or migrating off entirely. On the cloud side, the old unlimited tier is gone; the Professional plan is $99/month and caps you at 5 users, 75K database entries, and 250K API requests. Growth past those limits means a jump straight to custom Enterprise pricing. On the development side, any custom interface work still requires Vue.js, which creates friction for React-focused teams. Breaking changes between updates also erode trust over time. Teams that started with Directus for its open-source appeal often outgrow it when they need predictable pricing and cleaner editorial workflows.

### Can we keep our existing database when migrating from Directus?

You can keep your database infrastructure, but you'll likely restructure the schema. Directus creates its own system tables (directus_users, directus_permissions, directus_files, etc.) alongside your content tables. During migration, we extract the content tables, transform the data to fit your new CMS's content model, and leave the Directus system tables behind. If you're moving to a headless CMS like Sanity, the data moves from SQL rows to structured JSON documents, which typically results in a cleaner content model.