Strapi
strapi.io · Headless CMS
Open-source headless CMS with a customizable API.
55 items · 66 source threads · 2 source types · updated 2026-09
No items match these filters.
Pain points 29
| Item | Area | Severity | Support | Last seen |
|---|---|---|---|---|
| Admin page sometimes loads forever after a browser refresh in production In production on Azure the admin panel sometimes shows an endless loading spinner after a page refresh, with no console errors. Affects: Teams deploying Strapi 5 to Azure |
Reliability & bugs | Blocks work | 3 sources | 2024-10 |
| ||||
| Admin panel fails to load on a public host after upgrading to 4.12.4 After upgrading, the admin panel shows an API error and the browser tries to call localhost, which breaks deployments on the public internet. Affects: Teams running Strapi in Docker behind a public host |
Self-hosting & upgrades | Blocks work | 3 sources | 2024-09 |
| ||||
| Data transfer stalls and fails when the websocket connection drops During a transfer the websocket connection may die from latency or a network outage and the transfer stalls and fails. Support could not reproduce it. |
Data export & migration | Blocks work | 3 sources | 2023-10 |
| ||||
| Strapi judged buggy and unstable in production, user will not use it again A developer who used Strapi in production found it much less stable than it looks, with many bugs and a messy design, and says they will not use it again. Affects: Developer who ran Strapi in production |
Reliability & bugs | Causes churn | 2 sources | 2022-02 |
| ||||
| Build fails with minimatch type definition error on Strapi 5.17 Running the build on Strapi 5.17 fails in the TypeScript compile step with a missing type definition for minimatch. Affects: TypeScript users building in CI or Docker |
Self-hosting & upgrades | Blocks work | 2 sources | 2025-07 |
| ||||
| Strapi localization and API support judged terrible Locked: summary and evidence are part of Sprint Pass and Pro |
API & developer experience | Blocks work | 2 sources | 2024-06 |
| TypeScript project fails to start with Unknown dialect error on 4.2 beta Locked: summary and evidence are part of Sprint Pass and Pro |
Reliability & bugs | Blocks work | 2 sources | 2024-05 |
| Populate on the Users endpoint ignores relational fields Locked: summary and evidence are part of Sprint Pass and Pro |
API & developer experience | Blocks work | 2 sources | 2022-03 |
| Strapi throws Knex connection pool timeouts under traffic from a HN front page Locked: summary and evidence are part of Sprint Pass and Pro |
Performance | Blocks work | 2 sources | 2022-02 |
| Strapi documentation too thin beyond basics, forcing source-code reading Locked: summary and evidence are part of Sprint Pass and Pro |
Documentation | Blocks work | 2 sources | 2020-09 |
| Managing a self-hosted Strapi instance takes a full-time effort Locked: summary and evidence are part of Sprint Pass and Pro |
Self-hosting & upgrades | Causes churn | 1 source | 2024-06 |
| Saving an entry with a newly added dynamic zone component errors Locked: summary and evidence are part of Sprint Pass and Pro |
Reliability & bugs | Blocks work | 1 source | 2025-07 |
| Pagination and items-per-page broken in the media picker modal Locked: summary and evidence are part of Sprint Pass and Pro |
UI & usability | Blocks work | 1 source | 2025-04 |
| Drag and drop in Configure the view breaks field layout Locked: summary and evidence are part of Sprint Pass and Pro |
UI & usability | Blocks work | 1 source | 2025-03 |
| Content manager context hook unusable in edit view sidebar plugin Locked: summary and evidence are part of Sprint Pass and Pro |
API & developer experience | Blocks work | 1 source | 2024-11 |
| Getting related data from Strapi means writing custom middleware Locked: summary and evidence are part of Sprint Pass and Pro |
API & developer experience | Blocks work | 1 source | 2024-10 |
| REST API returns null for relations unless draft status is requested Locked: summary and evidence are part of Sprint Pass and Pro |
API & developer experience | Blocks work | 1 source | 2024-09 |
| Entry becomes uneditable after deleting a component still in use Locked: summary and evidence are part of Sprint Pass and Pro |
Reliability & bugs | Blocks work | 1 source | 2024-02 |
| Database identifiers become too long for tables, indexes and foreign keys Locked: summary and evidence are part of Sprint Pass and Pro |
Reliability & bugs | Blocks work | 1 source | 2022-04 |
| Strapi developers are hard to find and expensive compared with WordPress Locked: summary and evidence are part of Sprint Pass and Pro |
Other | Blocks work | 1 source | 2021-05 |
| GraphQL queries with many relations are far slower than REST Locked: summary and evidence are part of Sprint Pass and Pro |
Performance | Blocks work | 1 source | 2020-11 |
| Count endpoint returns inflated totals with deep filters Locked: summary and evidence are part of Sprint Pass and Pro |
Reliability & bugs | Blocks work | 1 source | 2020-08 |
| AWS S3 upload provider returns access denied with public-read ACL Locked: summary and evidence are part of Sprint Pass and Pro |
Integrations | Blocks work | 1 source | 2020-04 |
| Lifecycle callbacks are broken and behave inconsistently Locked: summary and evidence are part of Sprint Pass and Pro |
API & developer experience | Blocks work | 1 source | 2018-06 |
| New project wizard freezes at the database step on Windows Locked: summary and evidence are part of Sprint Pass and Pro |
Setup & onboarding | Blocks work | 1 source | 2018-05 |
| Strapi onboarding is complicated, only the docs make it manageable Locked: summary and evidence are part of Sprint Pass and Pro |
Setup & onboarding | Annoyance | 1 source | 2024-05 |
| Move of Strapi to a paid model disappointed an existing user Locked: summary and evidence are part of Sprint Pass and Pro |
Pricing & plans | Annoyance | 1 source | 2020-12 |
| Admin main bundle is about 6.6 MB, login takes seconds to load Locked: summary and evidence are part of Sprint Pass and Pro |
Performance | Annoyance | 1 source | 2020-08 |
| Strapi built on the Waterline ORM, criticized as poor Locked: summary and evidence are part of Sprint Pass and Pro |
API & developer experience | Annoyance | 1 source | 2016-10 |
Feature requests 20
| Item | Area | Severity | Support | Last seen |
|---|---|---|---|---|
| Allow more than two levels of nested components Since a depth restriction was added, developers cannot nest components more than two levels, which blocks designs like hero blocks with cards and buttons. Affects: Developers building websites with Strapi |
Customization | Blocks work | 2 sources | 2021-10 |
| ||||
| Support the mysql2 driver for MySQL 8 authentication The bundled mysql driver does not support the default MySQL 8 authentication method, so connections to some hosted databases are refused. Affects: Users on hosted MySQL 8 databases |
Integrations | Blocks work | 1 source | 2022-07 |
| ||||
| Strapi lacked content localization, forcing a hack in production A team running Strapi with a static site generator missed a way to localize content. They had to hack around the limitation because no roadmap for it was visible. Affects: Team using Strapi with a static site generator in production |
Customization | Blocks work | 1 source | 2020-06 |
| ||||
| Limit and filter repeatable component items in GraphQL and REST A user can't limit or filter items inside repeatable components in GraphQL, unlike one-to-many relations, and asks for deep filtering on component fields. |
API & developer experience | Blocks work | 1 source | 2020-01 |
| ||||
| Option to exclude relations from REST responses All relations are included by default, creating complex queries and larger responses. The user suggests opt-in relation inclusion through a query parameter. |
Performance | Blocks work | 1 source | 2018-10 |
| ||||
| Multi-site / multi-tenant support from one Strapi backend Locked: summary and evidence are part of Sprint Pass and Pro |
Customization | Blocks work | 1 source | 2018-06 |
| Let roles other than administrator access the admin panel Locked: summary and evidence are part of Sprint Pass and Pro |
Permissions & security | Blocks work | 1 source | 2018-05 |
| Policy to stop users editing content they did not create Locked: summary and evidence are part of Sprint Pass and Pro |
Permissions & security | Blocks work | 1 source | 2018-02 |
| No way to mark a relation attribute as required Locked: summary and evidence are part of Sprint Pass and Pro |
Customization | Blocks work | 1 source | 2018-02 |
| Strapi lacks conditional logic in content models Locked: summary and evidence are part of Sprint Pass and Pro |
Customization | Annoyance | 1 source | 2022-08 |
| Folders in the Media Library to organize assets Locked: summary and evidence are part of Sprint Pass and Pro |
UI & usability | Annoyance | 1 source | 2020-11 |
| Option to hide created_by and updated_by fields from API responses Locked: summary and evidence are part of Sprint Pass and Pro |
API & developer experience | Annoyance | 1 source | 2020-07 |
| Support compound and text indexes in model settings Locked: summary and evidence are part of Sprint Pass and Pro |
Customization | Annoyance | 1 source | 2020-04 |
| Reorder content type entries in list view with drag and drop Locked: summary and evidence are part of Sprint Pass and Pro |
UI & usability | Annoyance | 1 source | 2019-09 |
| Strapi missing out-of-the-box SEO basics like slug routing and sitemap Locked: summary and evidence are part of Sprint Pass and Pro |
Customization | Annoyance | 1 source | 2019-03 |
| Support LDAP and CAS authentication Locked: summary and evidence are part of Sprint Pass and Pro |
Permissions & security | Annoyance | 1 source | 2018-11 |
| Add an Array field type Locked: summary and evidence are part of Sprint Pass and Pro |
Customization | Annoyance | 1 source | 2018-03 |
| Add a Slug field type that derives from other fields Locked: summary and evidence are part of Sprint Pass and Pro |
Customization | Annoyance | 1 source | 2018-03 |
| Import data from CSV into a content type Locked: summary and evidence are part of Sprint Pass and Pro |
Data export & migration | Annoyance | 1 source | 2018-03 |
| TypeScript support for admin panel and API Locked: summary and evidence are part of Sprint Pass and Pro |
API & developer experience | Annoyance | 1 source | 2018-02 |
Workarounds 2
| Item | Area | Severity | Support | Last seen |
|---|---|---|---|---|
| Auth secure session behind reverse proxy needs trusted proxy config A maintainer workaround explains that secure sessions behind a reverse proxy require enabling the Koa proxy setting and forwarding the right headers, which is not set up by default. Affects: Teams running Strapi behind a reverse proxy |
Self-hosting & upgrades | Blocks work | 1 source | 2025-09 |
| ||||
| Relation field cannot be required in the UI; schema file edit works The content-type builder does not offer a required option for relations. Adding required to the schema file by hand makes validation work. |
Customization | Annoyance | 1 source | 2023-01 |
| ||||
Switching reasons 4
| Item | Area | Severity | Support | Last seen |
|---|---|---|---|---|
| Agency dropped Strapi and similar CMSes for a custom backend A freelance developer found using CMSes such as Strapi painful and replaced them with custom backends to avoid depending on maintainers' direction. Affects: Freelance web developer working with clients |
Other | Causes churn | 1 source | 2026-09 |
| ||||
| Team regrets moving from Prismic to self-hosted Strapi After moving from WordPress to Prismic and then to Strapi hoping for better extensibility and latency, the team found Strapi miserable and wishes they had stayed on Prismic. Affects: Team running a headless CMS behind a Laravel site |
Other | Causes churn | 1 source | 2024-06 |
| ||||
| Strapi v4 showstoppers drove a long-time user to Directus A user who liked Strapi v3 says v4 introduced too many big showstoppers and now recommends Directus as more mature. Affects: Long-time Strapi v3 user |
Reliability & bugs | Causes churn | 1 source | 2022-05 |
| ||||
| Strapi admin needs too much clicking, evaluator picked Payload While evaluating CMSes for an app with 30+ content types, a developer judged the Strapi admin UX to require too much clicking and chose Payload instead. Affects: Team building an app and website with 30+ content types |
UI & usability | Blocks work | 1 source | 2024-10 |
| ||||