Tina CMS logo
Storyblok logo

From Tina CMS to Storyblok

We are the Tina CMS to Storyblok migration experts

Last verified:



Challenges with Tina CMS

Key pain points

Tina's biggest limitation is that it's fundamentally tied to the React ecosystem. If you want visual editing, you need a React-based framework like Next.js. Basic content editing works with Astro, Hugo, SvelteKit, and others, but the flagship visual experience is React-only. There's been talk of Vue support for years, but nothing has materialised. This is a hard blocker for agencies like us that work across different tech stacks. The platform has also had a notable history: SSW acquired the project in May 2024, and a security breach in late 2024 involved compromised AWS keys via the CI/CD pipeline. These events, combined with the relatively small community, are worth weighing when evaluating Tina for long-term enterprise projects.

On the practical side, developers report frustrating instability in the dev environment. The admin interface can break without any changes to your codebase because it depends on externally loaded assets that update independently. Error handling is weak — forms fail to save silently, and the GraphQL layer doesn't surface errors cleanly. Self-hosting removes the TinaCloud dependency but comes with its own gaps: no search functionality, no Git LFS support, and reference fields can timeout on large collections.

The editing experience, while impressive in demos, can feel fragile in production. Multiple developers have reported losing work in the editor, and features like branch-based editing are locked behind paid tiers. For agencies managing multiple client projects, the React-only constraint and relatively small community (compared to Sanity, Strapi, or Contentful) mean fewer resources, fewer integrations, and more time spent solving problems yourself.

Help me migrate


React-only framework support in Tina CMS

Visual editing limited to React

TinaCMS supports many frameworks including Astro, Hugo, Jekyll, SvelteKit, and Nuxt for basic content editing. However, the visual/inline editing experience, which is Tina's main selling point, only works with React-based frameworks like Next.js.

Unstable development environment in Tina CMS

Unstable development environment

The dev server can break unpredictably because it loads external assets that change independently of your codebase. This makes local development feel unreliable and hard to debug.

Poor error handling in Tina CMS

Poor error handling and silent failures

Forms can fail to save without any visual indicator, and GraphQL errors aren't surfaced clearly. Losing work without warning is a real risk, especially for content editors.

Branch editing paywall in Tina CMS

Branch editing requires paid tier

Multi-branch support isn't available out of the box — it's locked behind the paid editorial workflow feature. You can't test content changes in deploy previews without paying up.

Self-hosting gaps in Tina CMS

Self-hosting gaps

The self-hosted backend lacks search functionality, Git LFS support, and pagination on reference fields. Large collections can cause network timeouts.

Small ecosystem in Tina CMS

Small ecosystem

Compared to established players like Sanity or Contentful, Tina has a smaller community and fewer plugins. Since the SSW acquisition in May 2024, the project has been actively maintained with regular releases, but the ecosystem is still catching up.



Benefits of Storyblok

Key advantages

If you've ever tried explaining "headless" to a content team and watched their eyes glaze over, Storyblok is your peace offering. The visual editor is genuinely good: editors see changes on the real page preview instead of filling out abstract field forms.

That's the upside. The downside is that the API lacks a few basics, like fetching child or sibling pages directly, and the tier jumps get steep once you need more locales or seats. If Storyblok is your choice, we can make it work, we know where the rough edges are and how to set it up cleanly.

Start my migration


Visual editing capabilities

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 in Storyblok

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 for ease

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.

multi-language support

Robust multi-language support

One CMS, many languages, zero chaos. Localise content without duplicate pages, messy exports, or spreadsheet archaeology.

collaborate with your team on Storyblok

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

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.





Common questions

Tina CMS to Storyblok migration FAQs

Answers to the most common questions about Tina CMS to Storyblok migration

How do we migrate content out of Tina CMS?
Tina stores content as markdown and MDX files in your Git repository, which makes extraction the easiest part of any CMS migration we do. Your content is already files on disk. The work is in transforming those markdown files into the structured format your new CMS expects. Rich text blocks, custom components embedded in MDX, and frontmatter fields all need mapping. For a blog or docs site with 100 to 500 pages, we typically complete the migration in 2 to 4 weeks.
Why are teams leaving Tina CMS?
Three issues come up repeatedly. First, the React-only constraint for visual editing blocks teams that want to use Astro, SvelteKit, or other frameworks. Second, the development environment is unstable. The admin interface loads external assets that update independently of your codebase, so it can break without you changing anything. Third, the 2024 security breach involving compromised AWS keys shook confidence in the platform's operational maturity. Teams with enterprise compliance requirements found that hard to overlook.
Is it worth self-hosting Tina instead of migrating away?
Self-hosting removes the TinaCloud dependency, but it introduces its own gaps. There's no search functionality, no Git LFS support, and reference fields timeout on large collections. If you're already frustrated with Tina's instability, self-hosting adds more operational burden rather than solving the root problems. We've found that teams considering self-hosted Tina are usually better served by migrating to a platform with proper managed hosting and a more mature editorial experience.
What are the best Storyblok alternatives?
Sanity is the alternative we recommend most often. It offers deeper content modelling, real-time collaboration, and a pricing model that doesn't spike when you add features. Contentful is another option if you want a mature ecosystem, though it's pricier. For teams that loved Storyblok's visual editor, Sanity's Presentation tool now provides a similar live preview experience. We've migrated several Storyblok projects to Sanity, and the feedback from both editors and developers has been positive.
How much does Storyblok cost?
Storyblok has a Starter plan at $0 with 1 seat, 2 locales, and 100K API requests. The Growth plan is $99/month for 5 seats, 1M API requests, and 2 locales. Growth Plus is $349/month for 15 seats, 4M API requests, and 10 locales. Extra seats are $15/month each, extra locales $20/month, extra traffic $75/250GB. Premium and Elite are custom pricing and unlock SSO, custom roles, and the GraphQL API. Teams often outgrow the Growth plan on locales or API volume rather than features, which forces a $250/month jump.
Does Storyblok have a visual editor?
Yes, and it's one of the best in the headless CMS space. You see real-time changes as you edit, directly on your site preview. It's the main reason many teams pick Storyblok. That said, Sanity now offers a comparable experience through its Presentation tool, which gives you live visual editing with more flexibility in content modelling. If the visual editor is your primary reason for choosing Storyblok, it's worth comparing both before committing.
Can I migrate from Storyblok to another CMS?
Yes. We export your stories, components, and assets through Storyblok's API, then restructure everything for the target platform. Storyblok's component-based content model actually maps well to Sanity's block system. Most migrations take 3-5 weeks. The main challenge is handling Storyblok's nested component structure and translating field-level localization to the new platform's approach. We keep your site running on Storyblok throughout, so there's zero downtime during the switch.
Is Storyblok good for large websites?
It works for mid-size sites but starts showing strain at enterprise scale. The API has performance limitations when fetching deeply nested content, and the pricing jumps between tiers are steep. Teams with 50+ pages and multiple locales often find themselves on the Growth Plus plan ($349/month) or pushed toward Premium sooner than expected, especially because custom roles and SSO only appear on enterprise tiers. For large-scale projects, we typically recommend Sanity instead. Its GROQ query language handles complex content relationships more efficiently, and pricing scales more predictably.


Get in touch

Fill out the form below and we'll get back to you