Strapi или Directus
Strapi берут, когда проект начинается с нуля и контент создаётся под него: типы собираются в конструкторе, Strapi сам заводит таблицы, экосистема плагинов больше. Directus берут, когда данные уже есть в SQL-базе (учётная система, старый сайт, выгрузка из ERP) и нужны админка и API поверх неё без переноса, или когда нужны тонкие права на уровне строк бесплатно. Мы ведём два сайта на Strapi в продакшене, Directus пробовали на пилотах и как админку поверх существующей базы, поэтому ниже сравнение по тому, что влияет на проект, и честная граница нашего опыта.
Коротко
- Новый контентный сайт, несколько фронтов, нужны плагины из маркетплейса: Strapi.
- База уже есть, нужна админка и API поверх неё, нужны права на уровне строк: Directus.
- Компания с выручкой больше 5 миллионов долларов в год: читайте лицензию Directus до старта.
- Всё на Next.js и логики больше, чем контента: ни то, ни другое, смотрите Payload.
Таблица
Версии на 30 сентября 2026: Strapi 5.56, Directus 12.4.
| Критерий | Strapi 5 | Directus 12 |
|---|---|---|
| Подход | Content-first: описываете типы, Strapi создаёт таблицы | Database-first: подключается к существующей базе, таблицы становятся коллекциями |
| Лицензия | MIT (Community) | BSL 1.1: бесплатно при выручке до 5 млн $ в год, дальше платная лицензия |
| Базы | PostgreSQL 14+, MySQL 8+, MariaDB 10.3+, SQLite | PostgreSQL, MySQL, MariaDB, SQLite, MS SQL, CockroachDB, OracleDB |
| Где схема | JSON-файлы в репозитории, конструктор только в режиме разработки | В базе, правится в интерфейсе на любом окружении, есть экспорт снапшота схемы |
| API | REST в ядре, GraphQL официальным плагином | REST и GraphQL в ядре, realtime по WebSocket |
| Права | RBAC по галочкам, тонкие права в платных планах | Роли, политики, правила на уровне полей и строк бесплатно |
| Автоматизация | Cron и lifecycle-хуки в коде | Flows: сценарии в интерфейсе (по событию, по расписанию, вебхук) |
| Файлы | Плагин upload, провайдеры S3 | Assets с трансформациями по URL, адаптеры хранилищ |
| Плагины | Маркетплейс, сотни плагинов, v4 с v5 несовместимы | Расширения (extensions), меньше, но больше встроено: дашборды, Flows |
| Мультиязычность | i18n в ядре | Через связанные коллекции переводов |
| Предпросмотр | Preview в ядре, Live Preview в Growth | Preview через URL у коллекции |
| Минимальный сервер | 2 ГБ, Node.js 22/24/26 | От 512 МБ, рекомендуется 2 ГБ, Docker, Redis для масштабирования |
| Облако | Strapi Cloud 35/90/450 $ в мес, из РФ не оплатить | Directus Cloud: Core бесплатно на 3 места, Team 499 $/мес плюс 99 $ хостинг, из РФ не оплатить |
| Платные функции | Growth 45 $/мес: Live Preview, Releases, история | Всё в ядре, платная только лицензия сверх порога выручки |
| Обновления | v4 → v5 с кодмодами, ломает API и плагины | Внутри 11.x и 12.x мягкие, схема в базе не зависит от кода |
Где разница чувствуется
Кто владеет базой
Strapi создаёт таблицы сам, с внутренними связями и служебными колонками. Подключить его к чужой базе нельзя, только перенести данные в его структуру. Directus подключается к любой поддерживаемой базе, читает таблицы как коллекции и не трогает их структуру. Если у вас есть Postgres с товарами и заказами из учётной системы, Directus даёт админку и API поверх за день, Strapi потребует переноса.
Оборотная сторона: в Strapi схема лежит в git, проходит ревью и одинаково разворачивается на тесте и проде. В Directus схема живёт в базе, и чтобы перенести её между окружениями, нужен экспорт снапшота и его применение, это отдельная дисциплина.
Конструктор типов на проде
В Strapi Content-Type Builder доступен только в режиме разработки: на боевом сервере он открывается для просмотра, новое поле добавляет разработчик на локальной копии и выкатывает. В Directus администратор правит коллекции и поля прямо на проде, потому что это таблицы базы. Удобно, когда структуру меняют часто и без разработчика, опасно, если админов несколько и никто не ведёт историю изменений.
Права
В Strapi базовый RBAC бесплатный: роль видит или не видит тип контента, может или не может создавать, редактировать, удалять. Правило "менеджер видит только свои записи" пишется кодом в контроллере или политике. В Directus такие правила задаются в интерфейсе как фильтры политики на уровне строк и полей, бесплатно. Для порталов с несколькими ролями это заметная разница в часах.
GraphQL и realtime
В Directus GraphQL и подписки по WebSocket в ядре. В Strapi GraphQL ставится официальным плагином с перезапуском, realtime из коробки нет. Если фронту нужны живые обновления (табло, чат, статусы), Directus ближе.
Плагины и экосистема
У Strapi маркетплейс больше, сообщество больше, вакансий и разработчиков больше. Минус в том, что при переходе на v5 все плагины v4 перестали работать, и часть до сих пор не переписана. У Directus расширений меньше, но многое встроено: Flows для автоматизации, дашборды, трансформации картинок. Для типового контентного сайта нужного плагина в Strapi найти проще, для внутреннего инструмента над данными Directus чаще закрывает задачу без плагинов.
Лицензия
Strapi Community под MIT: делайте что хотите. Directus под BSL 1.1: бесплатно для организаций с выручкой до 5 миллионов долларов в год, выше нужна коммерческая лицензия, а код каждой версии становится открытым через три года. Для малого и среднего бизнеса это не ограничение, для крупной компании обязательный пункт в проверке юристами до старта.
Что мы знаем из практики, а что нет
На Strapi у нас два корпоративных сайта с фронтом на Next.js: динамические секции, мультиязычность, галереи, заявки, деплой в Docker. Мы знаем, как он ведёт себя два года подряд, как обновляется и что ломается. Directus мы поднимали как админку поверх существующей базы и на пилотах, но в продакшене под нагрузкой долгих проектов на нём не вели. Поэтому в таблице выше про Directus цифры из документации и открытых отчётов, а не из наших логов, и если ваш проект тянет на Directus, скажем это прямо и посчитаем честно.
Как выбрать по сценарию
| Сценарий | Что брать |
|---|---|
| Корпоративный сайт или блог с нуля, фронт на Next.js или Nuxt | Strapi |
| Админка поверх базы учётной системы, витрина данных, внутренний инструмент | Directus |
| Портал с ролями, где менеджер видит только своё, без бюджета на код прав | Directus |
| Нужен маркетплейс плагинов и большое сообщество | Strapi |
| Нужны MS SQL, Oracle, CockroachDB | Directus |
| Всё на Next.js, кабинет и заявки | Payload, см. [Strapi или Payload](/strapi-vs-payload) |
| Компания с выручкой выше 5 млн $ и без желания платить за лицензию | Strapi |
Остальные системы с ценами и серверами в общей таблице сравнения headless CMS. Если фронт точно на Next.js, есть отдельный разбор какую CMS подключить к Next.js.
Напишите, что за проект и есть ли у вас уже база с данными. За день ответим, Strapi это или Directus, и во что обойдётся. Разработку на Strapi ведём на strapi.pro, обновление и поддержку существующих сайтов на Strapi на strapi.expert.
Частые вопросы
В чём главная разница между Strapi и Directus?
Strapi владеет схемой: вы описываете типы контента, а он сам создаёт таблицы в базе. Directus наоборот подключается к существующей SQL-базе и превращает её таблицы в коллекции с админкой и API, ничего не ломая. Отсюда всё остальное: Directus для данных, которые уже есть, Strapi для контента, который создаётся с нуля.
Directus бесплатный?
Для организаций с выручкой до 5 миллионов долларов в год да, на своём сервере без ограничений по лицензии BSL 1.1. Выше нужна платная лицензия. Strapi Community под MIT бесплатен для всех, платный план Growth за 45 долларов в месяц добавляет Live Preview, Releases и историю контента.
Можно ли менять типы контента на проде в Strapi и Directus?
В Directus да: схема это таблицы базы, администратор правит их в интерфейсе на любом окружении. В Strapi нет: Content-Type Builder работает только в режиме разработки, на проде изменения проходят через код и выкатку.
Что лучше по правам доступа?
Directus: роли и политики с правилами на уровне полей и строк бесплатно в ядре. В Strapi базовый RBAC по галочкам бесплатный, а тонкие права вынесены в платные планы. Если нужно, чтобы менеджер видел только свои записи, в Directus это настройка, в Strapi код.
Какие базы поддерживают Strapi и Directus?
Strapi 5: PostgreSQL 14+, MySQL 8+, MariaDB 10.3+, SQLite. Directus: PostgreSQL, MySQL, MariaDB, SQLite, MS SQL Server, CockroachDB, OracleDB. MongoDB нет ни у одного.
Сколько нужно ресурсов сервера?
Directus по документации запускается от 512 МБ памяти, рекомендуется 1 vCPU и 2 ГБ. Strapi в проде живёт на 2 ГБ, а сборка админки на меньшем объёме может не пройти. Для обоих с Postgres и фронтом хватает VPS 2 ядра, 4 ГБ за 1 000–1 300 рублей в месяц.