- CMS comparison
ApostropheCMS vs. Storyblok
Author: Apostrophe Technologies
Last Updated
ApostropheCMS and Storyblok both combine component-based content with a visual editing experience. Storyblok is a managed, API-first headless CMS that connects its Visual Editor to a separately built frontend. ApostropheCMS is an open-source Node.js CMS application that can render natively or use its official Astro integration while preserving in-context editing.
The better fit depends on whether you want a managed content platform paired with independent frontends, or a CMS application that brings content, page management, custom behavior, and editing together.
The practical difference
Both platforms give editors visual context and let developers define reusable components. The practical difference is the role the CMS plays in the finished application.
ApostropheCMS is designed for
JavaScript teams building editor-managed websites and digital products where content, pages, integrations, application behavior, and the editing experience need to work together. Teams can use server-side JSX or Nunjucks for a simpler project, or the official Astro integration when they want to build with React, Vue, Svelte, Solid, or another Astro-supported frontend framework.

Storyblok is designed for
Teams that want a vendor-hosted headless content platform with framework-independent APIs, reusable blocks, and a Visual Editor connected to separately developed websites and applications. Storyblok provides official SDKs and guides for Astro and several other frontend technologies. Your team still builds and hosts the rendered experience.
The biggest difference
Storyblok's Visual Editor embeds a preview of the separately hosted frontend alongside its content fields. Editors can click elements in the preview to open the corresponding block, rearrange blocks, and see form changes reflected in real time. ApostropheCMS makes the rendered page the primary editing environment. Editors work directly on the page to update content and compose layouts, while content schemas, APIs, permissions, routes, and application logic remain part of the same CMS application. Both are valid visual editing models. The key distinction is whether visual editing is tied to a separate content service or built into the broader CMS application.
ApostropheCMS and Storyblok at a glance
Compare the product models, editing experiences, plan boundaries, and implementation responsibilities most likely to affect long-term fit.
| Features | ApostropheCMS | Storyblok |
|---|---|---|
| Features | ||
| Product and source model | MIT-licensed open-source CMS. Community Edition is free; Pro and Assembly add paid capabilities. | Proprietary managed SaaS. Starter, Growth, Growth Plus, Premium, and Elite plans carry different limits and capabilities. |
| Primary architecture | Complete Node.js CMS application. Can provide content models, pages, editing, APIs, permissions, integrations, and application behavior. | API-first headless content platform. Storyblok hosts the CMS, content, assets, APIs, and delivery infrastructure; the frontend is developed separately. |
| Frontend approach | Native server-side JSX or Nunjucks, or an official Astro integration. Astro enables React, Vue, Svelte, Solid, and other supported frontend frameworks while preserving in-context editing. | Framework-independent API delivery with official SDKs. Storyblok provides integrations and guides for Astro, React, Vue, Svelte, and other technologies. |
| Astro support | Official integration that preserves ApostropheCMS in-context editing | Official Astro SDK and Visual Editor integration. Developers connect Astro components to Storyblok blocks through the Storyblok Bridge. |
| Content APIs | REST APIs and custom application routes | Content Delivery and Management APIs. GraphQL is available on Premium and Elite plans. |
| Deployment | Self-host or purchase optional Apostrophe managed hosting | Storyblok operates the CMS platform. Your team separately deploys and hosts the rendered website or application. |
| Storyblok’s CMS is a hosted SaaS service, while the frontend needs its own hosting. Its SDK ecosystem includes an official Astro package that connects components to the Visual Editor. Storyblok’s current pricing reserves GraphQL for Premium and Elite. ApostropheCMS can render with server-side JSX or Nunjucks, or use the official Astro integration for frontend-framework choice with in-context editing preserved. | ||
| Features | ApostropheCMS | Storyblok |
|---|---|---|
| Features | ||
| Editing experience | Edit through the rendered page. In-context editing is included in Community Edition and preserved through Astro. | Visual Editor with an embedded frontend preview. Editors select content in the preview and update it through the corresponding fields and block controls. |
| Page composition | Add and arrange developer-defined widgets and layouts through the page | Add, delete, duplicate, and rearrange reusable blocks. The frontend determines how each block renders. |
| Visual editing availability | Included in open source | Included across Storyblok plans |
| Structured content modeling | JavaScript schemas for pages, pieces, widgets, fields, and relationships | Stories, content-type blocks, nestable blocks, fields, references, and datasources |
| Draft and publishing workflow | Draft, submission, shareable preview, publishing, and scheduled publishing included in open source | Drafts and a standard Drafting → Reviewing → Ready to Publish workflow included. Custom workflows are a Premium and Elite capability. |
| Scheduled publishing | Included in open source | Single-story scheduling on paid self-service plans. Premium and Elite add release management for grouped campaigns. |
| Version history and rollback | Document Versions in Pro and Assembly | Page history, comparison, and restoration included. Retention varies by plan. |
| Roles and permissions | Contributor, Editor, and Admin editorial roles included. Advanced Permissions adds custom groups and granular content controls in Pro and Assembly. | Owner, Admin, and Editor roles included. Custom roles and deeper access controls are Premium and Elite capabilities. |
| Localization | Unlimited locales and localized page management included. Manual and automatic translation tools are available in Pro and Assembly. | Field-, folder-, and Space-level localization. Locale allowances and additional-locale pricing vary by plan. |
| Storyblok’s Visual Editor displays a rendered preview beside its editing interface. Editors can select blocks from the preview, edit fields, rearrange blocks, and see changes reflected through the Storyblok Bridge. The Visual Editor and standard workflows are included across plans; custom roles, custom workflows, GraphQL, and release management are Premium and Elite features. Storyblok supports page history and restoration, with retention ranging from one day on Starter to longer or unlimited periods on higher plans. | ||
| Features | ApostropheCMS | Storyblok |
|---|---|---|
| Features | ||
| Operating multiple sites | Assembly provides one shared CMS application and a central Multisite Dashboard. Sites share code and integrations while maintaining isolated content, users, media, domains, permissions, and branding. | One or more Storyblok Spaces. Related sites can share a Space and folders; independent projects commonly use separate Spaces. |
| Central organization management | Assembly Dashboard manages sites within the shared application | Storyblok Organizations centralize Spaces, users, permissions, activities, billing, and governance |
| Sharing across sites or projects | Schemas, widgets, integrations, application logic, and releases are shared through one codebase | Components and content can be synchronized between Spaces through apps, the CLI, or Management API. Cross-Space content linking is limited. |
| CMS hosting | Self-host or purchase optional first-party application hosting | Storyblok hosts the CMS, APIs, content, assets, and CDN delivery |
| Frontend hosting | Part of the ApostropheCMS application or a separately deployed Astro frontend | A separate responsibility. Storyblok offers integrations and optional hosting partnerships, but the rendered application remains distinct. |
| Commercial model | Community, Pro, and Assembly | Subscription priced by Space, seats, usage, locales, and required capabilities |
| A Storyblok Space is a separate content repository with its own stories, blocks, assets, workflows, users, roles, and configuration. Storyblok recommends separate Spaces for many independent websites or applications, though related sites can share one Space through folders. Organizations provide centralized administration across Spaces, while content and component synchronization may require the CLI, Management API, or dedicated apps. Apostrophe Assembly runs many independently edited sites from one shared Node.js application, with separate data and users for each site and a dashboard for creating and managing them. | ||
- Architecture
A CMS application or a managed content layer?
Storyblok provides managed content infrastructure connected to independently built frontends. ApostropheCMS can connect content, page management, application behavior, rendering, and editing within one extensible Node.js application.
Storyblok hosts content models, stories, assets, roles, workflows, and APIs inside a Space. Developers build the website or application separately, retrieve content through APIs, and connect rendered components to the Visual Editor through a Storyblok SDK and Bridge.
This keeps Storyblok independent of the frontend implementation and makes it well suited to content that must serve many different digital channels. It also means the frontend, routing, application logic, authentication, and hosting remain separate implementation responsibilities.
ApostropheCMS is a complete Node.js CMS application. Developers can use the same module system to define:
Content schemas and relationships
Pages and reusable content pieces
Editor-facing widgets and controls
Authentication and permissions
Routes and APIs
Integrations and business logic
Teams then choose their frontend approach:
Native server-side JSX or Nunjucks for a simpler application contained within ApostropheCMS
The official Astro integration for frontend-framework choice while preserving in-context editing
Storyblok's official integrations connect independently rendered components to its Visual Editor. ApostropheCMS's Astro integration allows Astro to render the frontend while retaining the CMS's page-editing model.
Storyblok may fit better when
Structured content must serve many independently built applications or channels.
The organization wants a vendor to operate its CMS and content-delivery infrastructure.
The frontend, CMS, and application layer should remain intentionally decoupled.
- Editing experience
Two visual editors, different models
ApostropheCMS makes the rendered page the primary editing environment. Storyblok embeds a rendered preview inside its Visual Editor and connects that preview to structured fields and blocks.
In Storyblok, developers mark frontend components as editable and connect them through the Storyblok Bridge. Editors see the rendered website in the preview area, click an element to open its corresponding block, update fields in the editing interface, and see the preview change in real time.
Editors can add, delete, duplicate, and rearrange blocks to compose pages. The Visual Editor also supports responsive previews, comments, content status, workflow controls, and scheduled publishing.
In ApostropheCMS, editors click directly into text, images, widgets, and layouts on the rendered page. Focused dialogs remain available for structured fields and relationships, but the page itself remains the primary workspace. The experience works through native rendering and the official Astro integration.
Storyblok's documentation describes the Visual Editor as a preview-and-form interface connected through its Bridge. ApostropheCMS provides page-level in-context editing as part of the CMS application and preserves it through Astro.
ApostropheCMS
The rendered page is the workspace
- Edit text and images through the page
- Add and arrange widgets and layouts
- Use focused dialogs for structured fields when appropriate
- Preserve in-context editing through Astro
Storyblok
A rendered preview connected to content fields
- Click preview elements to open their blocks
- Edit structured fields in the Visual Editor
- Add and rearrange reusable blocks
- Connect the frontend through the Storyblok Bridge
ApostropheCMS may fit better when
Editors should work primarily through the rendered page itself.
In-context page editing should be part of the open-source CMS foundation.
Content editing, application behavior, and page composition need to feel like one system.
Storyblok may fit better when
Editors are comfortable combining a visual preview with structured field editing.
The same headless content platform needs to work with several frontend technologies.
A managed visual editing service is preferable to operating the CMS application.
See how in-context editing works
Edit content, add components, adjust layouts, and manage pages directly through the rendered experience.
- Content model
Component models for different architectures
Both platforms use reusable components and structured fields. Storyblok's model is optimized for API delivery across channels, while ApostropheCMS connects structured content to pages, editor controls, APIs, and application behavior.
Storyblok stores content entries as Stories. Developers create content-type and nestable blocks with configurable fields, references, and datasources. Editors assemble nestable blocks inside Stories, while frontend components determine how those blocks render.
ApostropheCMS developers define pages, reusable pieces, widgets, relationships, and custom fields through JavaScript schemas and modules. Those definitions shape the stored content, editor interface, APIs, page composition system, routes, and custom server behavior.
Storyblok blocks can be used to create component-driven, channel-neutral content structures. ApostropheCMS widgets connect a content schema more directly to the page and application where editors use it.
ApostropheCMS may fit better when
Structured content and page composition need to work together.
Content models are closely connected to proprietary application behavior.
Schemas should produce a purpose-built in-context editing experience.
Storyblok may fit better when
Reusable structured content must feed many channels or frontend applications.
Developers want content models managed separately from application code.
A broad set of official frontend SDKs is valuable.
- Workflow
Workflow and publishing by plan
ApostropheCMS includes its core editorial handoff and scheduled publishing in open source. Storyblok includes a standard three-stage workflow, with scheduling, custom workflows, roles, and release management divided across plans.
| Features | ApostropheCMS | Storyblok |
|---|---|---|
| Features | ||
| Draft content | Included | Included |
| Preview drafts | Included through the rendered page | Included through the Visual Editor |
| Standard review workflow | Contributor submission and Editor publishing included | Drafting → Reviewing → Ready to Publish included |
| Assign reviewers and due dates | — Not included for ApostropheCMS | Supported through Storyblok workflows |
| Share a draft without login | Included | — Not included for Storyblok |
| Schedule one document or Story | Included | Available on paid self-service plans and above |
| Group content into a release | — Not included for ApostropheCMS | Release management on Premium and Elite |
| Custom workflow stages | — Not included for ApostropheCMS | Premium and Elite |
| Workflow automation | Can be implemented through application logic and integrations | Webhooks and FlowMotion can respond to workflow changes |
| Version history and restoration | Pro and Assembly | Included, with plan-based retention |
| Storyblok's Default workflow includes Drafting, Reviewing, and Ready to Publish stages. Teams can assign people or roles, set due dates, send notifications, and record comments. Custom workflows are premium features. Storyblok's current pricing places single-story scheduling on Growth and Growth Plus and release management on Premium and Elite. ApostropheCMS includes Contributor submission, Editor review and publishing, draft preview links, and scheduled publishing in its open-source product. Document Versions and restoration are Pro and Assembly capabilities. | ||
Storyblok's Default workflow includes Drafting, Reviewing, and Ready to Publish stages. Teams can assign people or roles, set due dates, send notifications, and record comments. Custom workflows are premium features. Storyblok's current pricing places single-story scheduling on Growth and Growth Plus and release management on Premium and Elite.
ApostropheCMS includes Contributor submission, Editor review and publishing, draft preview links, and scheduled publishing in its open-source product. Document Versions and restoration are Pro and Assembly capabilities.
ApostropheCMS may fit better when
A focused contributor-to-editor workflow meets the requirement.
Stakeholders need to review drafts without receiving CMS accounts.
Core review and scheduling should be included in open source.
Storyblok may fit better when
Editors need assignments, due dates, notifications, and workflow comments.
Custom workflow stages and grouped releases fit the organization's commercial requirements.
Content operations span many markets, channels, or editorial teams.
- Permissions
How access is managed
Both platforms include predefined editorial roles and offer more granular permissions through paid capabilities.
ApostropheCMS: Contributor → Editor → Admin
- Contributors create and submit content.
- Editors review, upload media, and publish.
- Administrators manage users and application access.
- Advanced Permissions adds custom groups and document-, field-, content-type-, and locale-level controls in Pro and Assembly.
Storyblok: Owner · Admin · Editor
- Default roles have predefined permissions.
- Premium and Elite add custom roles.
- Custom permissions can control Stories, blocks, fields, assets, languages, folders, datasources, tags, and apps.
- Users can hold different roles in different Spaces.
Storyblok provides default Owner, Admin, and Editor roles. Custom roles can define detailed access to content, fields, languages, assets, and other resources, but current pricing places custom roles in Premium and Elite.
ApostropheCMS provides Contributor, Editor, and Administrator editorial roles. Its Advanced Permissions extension adds custom groups and per-document, per-field, and per-locale controls in Pro and Assembly.
ApostropheCMS may fit better when
A familiar contributor-to-publisher hierarchy should work without extensive setup.
Governance needs to operate directly on CMS documents and pages.
Teams want advanced controls without moving to a proprietary SaaS platform.
Storyblok may fit better when
Permissions must vary across Spaces, languages, folders, assets, fields, and components.
Users need different roles in different projects.
Premium or Elite custom roles fit the organization's operating model.
Different ways to structure localized content
ApostropheCMS localizes pages and reusable content within one editorial system. Storyblok supports field-, folder-, and Space-level approaches for different market and channel requirements.
| Features | ApostropheCMS | Storyblok |
|---|---|---|
| Features | ||
| Locale count | Unlimited | Included locale counts and additional-locale costs vary by plan |
| Field-level translation | Localized document fields | Supported for most Storyblok field types |
| Different page structures by market | Localized page trees and documents | Folder-level translation allows independent regional structures |
| Separate regional repositories | Assembly can operate distinct localized sites | Space-level localization provides independent repositories and editorial teams |
| Individual locale publishing | Localized documents participate in the editorial workflow | Individual translation publishing can be enabled |
| Admin UI language | Translatable; currently ships in six languages and can be extended by developers | Users can select an interface language |
| Manual translation workflow | Import and export tools in Pro and Assembly | Import/export apps and third-party integrations are available |
| Automatic translation | Pro and Assembly | AI-assisted translation is available; AI-credit allowances vary by plan |
| Locale-specific permissions | Advanced Permissions in Pro and Assembly | Custom roles can grant access by language on eligible plans |
| Storyblok supports three localization strategies. Field-level translation keeps languages within one Story, folder-level translation allows separate structures for markets, and Space-level translation provides autonomous content repositories and teams. It also supports individual translation publishing, AI translation, import/export apps, and third-party translation integrations. Storyblok locale allowances vary by plan: the current self-service tiers include different numbers of locales and permit paid additions, while Premium and Elite are customized. ApostropheCMS includes localized pages and pieces and an internationalizable administration interface. Pro and Assembly add import/export translation tools, automatic translation, and per-locale permissions. | ||
ApostropheCMS may fit better when
Editors need to localize complete page experiences through in-context editing.
Unlimited core locales should not depend on a SaaS subscription limit.
Manual and automatic translation should be first-party extensions within the CMS application.
Storyblok may fit better when
The organization needs a choice among field-, folder-, and Space-level localization.
Regional teams need autonomous repositories, roles, and workflows.
Localized structured content must feed many applications and channels.
- Multiple sites
Spaces or a shared site platform?
Storyblok organizes projects in content repositories called Spaces. Apostrophe Assembly provides one shared CMS application with site provisioning, isolation, and portfolio management built in.
A Storyblok Space contains its own Stories, components, assets, workflows, users, roles, access tokens, and configuration. Related websites can share one Space and use folders for separation. Storyblok generally recommends separate Spaces for independent websites or applications.
Organizations provide centralized user, billing, activity, and governance controls across Spaces. Teams can duplicate Spaces or synchronize schemas and content through the CLI, Management API, and Shared Components app. Each Space remains its own repository, and self-service subscriptions are priced per Space.
Storyblok Blueprints can accelerate the creation of a frontend repository and connect it to a new Space and hosting provider. The resulting websites remain separately deployed frontend applications.
Apostrophe Assembly runs many sites from one shared Node.js application. Sites share schemas, components, integrations, and application updates while maintaining separate content, users, media, domains, permissions, and branding. Authorized teams create and manage those sites through the Multisite Dashboard.
Apostrophe Assembly may fit better when
The site-management and provisioning layer should come with the CMS product.
Non-developers need to create, configure, and oversee customer sites.
Sites share proprietary application behavior while retaining isolated content, users, media, and branding.
Storyblok may fit better when
Each website or product can operate as its own content project and frontend.
Central user and governance controls across separate Spaces meet the requirement.
The organization prefers to assemble and host each site independently around a managed content platform.
- Commercial model
Self-hosted software or managed SaaS?
ApostropheCMS gives teams control over the CMS application and operating environment. Storyblok provides CMS infrastructure through a subscription with limits tied to Spaces, seats, usage, locales, and features.
ApostropheCMS
- Community Edition is MIT-licensed and self-hostable.
- Pro adds Document Versions, Advanced Permissions, translation tools, and other commercial capabilities.
- Assembly adds multisite operations.
- First-party managed hosting is optional and priced separately.
- Teams can work directly with Apostrophe Technologies without giving up self-hosting.
Storyblok
- Storyblok hosts the CMS, content, assets, APIs, and CDN infrastructure.
- Starter, Growth, and Growth Plus are self-service plans with defined Space, seat, API, traffic, component, locale, and retention limits.
- Premium and Elite add custom roles, custom workflows, GraphQL, release management, SSO, SCIM, higher SLAs, and advanced support.
- The rendered frontend still requires a deployment and hosting model.
- Subscriptions are based on Spaces, with additional costs or negotiated limits depending on the plan.
Storyblok's current pricing begins with a free Starter plan, followed by Growth and Growth Plus self-service tiers and sales-led Premium and Elite plans. Features and consumption limits differ considerably across them.
Storyblok hosts the CMS and content infrastructure, but customers ordinarily host the rendered website separately.
Which costs less?
There is no universal answer.
A self-hosted ApostropheCMS implementation can reduce recurring software fees and preserve application control, but your team owns the infrastructure and operations. Storyblok removes responsibility for operating the CMS platform but introduces subscription, usage, seat, locale, Space, and feature boundaries.
Compare total cost across:
CMS software and commercial add-ons
Spaces or sites
User seats and roles
API usage and content traffic
Locales
Frontend hosting
Database, media, and CDN infrastructure
Development and integration
Required workflows and release tools
Support and service levels
Ongoing maintenance
Which platform fits your project?
Choose based on whether you need a managed headless content platform connected to independent frontends or a CMS application that connects content, pages, application behavior, and editing.
Choose ApostropheCMS when
Best fit: JavaScript teams building editor-managed websites, digital platforms, custom product experiences, and multitenant customer-site applications.
Editors need to build and manage complete pages through the rendered experience.
In-context editing should be included in the open-source CMS.
You want native server-side JSX or Nunjucks, or an official Astro integration with frontend-framework choice.
The CMS is part of a custom website, portal, product, or application.
Contributor submission, shareable draft previews, and scheduled publishing should work out of the box.
You need control over hosting, data, integrations, and application architecture.
You may need a supported platform for operating customer-managed sites.
Choose Storyblok when
Best fit: Composable frontend architectures, omnichannel content programs, independently deployed websites and applications, and organizations standardizing content operations on managed SaaS.
You want a vendor-operated, API-first headless CMS.
Structured content must serve many independently developed channels and frontends.
Storyblok's Visual Editor and component-block model fit the editorial experience.
Your team wants official SDKs across several frontend technologies.
Field-, folder-, and Space-level localization match your global content model.
Enterprise roles, workflows, Releases, and governance fit your commercial requirements.
Your organization prefers not to operate CMS infrastructure.
ApostropheCMS is a strong Storyblok alternative for JavaScript teams that value component-driven development and visual editing but need the CMS to provide a more complete application, page-management, and in-context editing foundation.
Storyblok may be the stronger choice when a managed headless content platform, broad frontend SDK support, and centralized delivery of structured content are more important than self-hosting or connecting the CMS directly to application behavior.
See the editing difference
Experience in-context editing, reusable components, structured content, localization, workflow, and scheduled publishing directly in ApostropheCMS.
How this comparison was researched
This comparison uses current official product documentation, pricing information, technical guides, and confirmed ApostropheCMS product details.
We compared:
Source and commercial models
CMS and frontend hosting responsibilities
Astro and frontend integration
Visual editing architecture
Component and content modeling
APIs
Workflow and scheduled publishing
Version history
Roles and permissions
Localization
Spaces and multisite operations
Support and total operating model