Moteur and Storyblok
Storyblok is built around its visual editor. Moteur is built around review and history.
Storyblok lets writers click on the page they’re changing, and it’s very good at that. Moteur keeps every save as a commit, and a reviewer approves before anything goes live. Checked on Storyblok’s pages.
Side by side1
Eighteen points that matter for a client site. Storyblok wins some of them. Each Storyblok fact links to the page it comes from.
| Moteur | Storyblok | |
|---|---|---|
| Where the content lives | Plain JSON files in the project’s own Git repository | Storyblok’s cloud1 |
| In Git | Yes: each project is its own repository, a commit per save | No2 |
| Who runs it | Moteur Cloud. Or host the open-source engine yourself, without the Studio | Hosted only1 |
| Open source | Engine: MIT. The Studio and Moteur Cloud: not open source | Not open source (its SDKs and CLI are)3 |
| Free plan | 1 person, 1,000 entries, 2,000 API requests a month | 1 person (up to 2), 2 languages, 1 day of history3 |
| First paid plan | Personal, $9 a month: 2 people, 10,000 entries | Growth, $99 a month ($90.75 billed yearly), 5 people3 |
| How it’s priced | A plan per project, with extra people, requests, credits or storage in packs | Per plan, plus add-ons for people, languages and traffic3 |
| Review before publishing | Drafts and reviews on every plan. A reviewer or admin approves | A default review workflow on every plan. Your own on Premium4 |
| Working together | On Moteur Cloud: see who’s in which field, leave notes on fields, and no save overwrites another’s | Comments on fields and a conflict warning. No live presence in its docs5 |
| Languages | Any number of languages, field by field, on every plan | 2 languages on Free and Growth, $20 a month for each more6 |
| Roles | Admin, developer, writer, reviewer, translator and billing, on every plan. No custom roles | Custom roles on Premium and Elite3 |
| History | Every save is a Git commit, kept as long as the repository | 1 day on Free, 30 on Growth, unlimited on Elite3 |
| Images | Transforms by URL, eight crop ratios and a focal point you set | Transforms by URL, with a focal point you set7 |
| Forms | Built in, with a spam folder | Not built in3 |
| API | REST, with an OpenAPI document per site. No GraphQL | REST. GraphQL on Premium and Elite8 |
| Webhooks | Signed, and retried for two hours if your server is down | 3 on Free, 5 on Growth. Signed on paid plans only9 |
| AI agents (MCP) | Official and hosted: agents draft, and a person approves before anything goes live | Official and hosted: reads and writes, asks only before deleting10 |
| Writing help (AI) | Off until an admin turns it on. Credits on every plan, from 10 a month | Credits: 25,000 a month free, 100,000 on Growth11 |
Sources
- support.storyblok.com/hc/en-us/articles/25436594173713-Do-I-need-a-hosting-to-host-my-site-or-is-Storyblok-enough
- storyblok.com/docs/libraries/storyblok-cli
- storyblok.com/pricing
- storyblok.com/docs/manuals/workflows
- storyblok.com/docs/manuals/content-authoring
- storyblok.com/docs/concepts/internationalization
- storyblok.com/docs/api/image-service/operations/focal-point
- storyblok.com/docs/api/content-delivery/v2
- storyblok.com/docs/concepts/webhooks
- storyblok.com/docs/libraries/mcp-server
- storyblok.com/docs/manuals/agents
Checked 26 October 2026. From Storyblok’s own pages. If something there has changed, tell us and we’ll fix it here.
The night shift
Who’s awake at 2 am?
Give an agent the keys and watch two roads. Same agent, same night, same mistake.
Claude connected through MCP, rewrites 40 product descriptions at 2 am. Three of them promise free shipping.
Storyblok
- Writes 40 entries
- Publishes them
- Live at 2:04 am, free shipping and all
Moteur
- Writes 40 drafts
- Asks for a review
- Louise reads them over coffee
- Live at 9:12 am, without the free shipping
Storyblok’s MCP server reads and writes, and asks only before deleting. Its in-app agents (beta) ask before each write. Moteur’s agents always wait for a person.
Which one fits
Who’d you pick?
Seven situations from agency life. Guess, then see where we’d honestly send you. Sometimes it’s a draw.
Marguerite · Writer
The writers want to click on the page itself and change it there.
Who’d you pick?StoryblokThat’s Storyblok’s Visual Editor, on every plan. Moteur previews on your site, but you edit in the Studio.
Théo · Builder
One writer, one site, and nothing to pay.
Who’d you pick?StoryblokStoryblok’s free plan fits, and its editor is lovely.
Louise · Admin
A hotel site in English, French, German, Spanish and Italian.
Who’d you pick?MoteurAny number of languages on every plan. Storyblok’s Growth has two, then $20 each.
Céleste · Reviewer
Last month’s offer page needs to come back, exactly.
Who’d you pick?MoteurEvery save is a commit. Storyblok’s Growth keeps 30 days.
Sophie · Writer
The client needs a contact form, and nobody wants another service.
Who’d you pick?MoteurForms are built in, with a spam folder.
Claude · AI agent
Nothing goes live without a review, on the free plan.
Who’d you pick?TieStoryblok has a review workflow on every plan. So does Moteur.
Céleste · Reviewer
Two writers open the same article at 4:55 pm on a Friday.
Who’d you pick?MoteurStoryblok warns of a conflict. Moteur shows who’s in which field, as it happens.
Our honest count: Moteur 4, Storyblok 2, ties 1.
Moving day
Moving from Storyblok
No one-click importer yet. Here’s how it’s done today, with the tools that exist, and what’s coming.
Works today
Pack up Storyblok
Storyblok’s command line pulls every story and asset into local files.
npx storyblok stories pull --space 123456 npx storyblok assets pull --space 123456
Works today
Shape the models
Write each model as JSON and create it from the command line. Or let an agent do it through MCP. It reads a sample of the export and proposes the models. You look them over in the Studio.
moteur models create --file models/article.json moteur models create --file models/author.json
Works today
Bring the content
A short script turns the export into one import bundle: models, files and entries. The command line brings it all in, or nothing if one thing fails. Or connect one agent to both MCP servers: it reads from Storyblok’s and writes drafts to Moteur’s. Those drafts wait for a person, like any agent’s work.
# the export reshaped into one bundle: models, files, entries moteur imports run site.json --dry-run # check it all, keep nothing moteur imports run site.json
Works today
Review, then switch
Everything arrives as a draft. A reviewer reads, approves, and it goes live. Then point the site at the project’s channel: one REST API, with its own OpenAPI document.
Coming
An importer for Storyblok
We’re writing an importer that reads pulled Storyblok stories and does steps 2 and 3 in one go. This page will say when it ships. Until then, the steps above work.
Questions people ask
A reader asksDoes Moteur have a visual editor?
MoteurWriters build pages from blocks in the Studio and see them in a preview of your own site. There’s no clicking on the page to edit it, as in Storyblok.
A reader asksDoes Storyblok have GraphQL?
MoteurOn Premium and Elite. Moteur has a REST API per site, and no GraphQL.
Try it on one site.
A free project costs nothing, and its files are yours from the first save.