Marble vs Contentful
Contentful is a hosted structured content platform. You configure content types, localize fields, and link entries and assets for delivery through APIs. Marble hosts an editor and API around a ready-made post model with authors, a category, tags, and custom fields. Both work with a frontend you build. Choose based on whether you need a service for blog publishing or a configurable model for several kinds of content.
The short answer
Choose Marble when
- Your site needs blog posts, articles, or changelogs with authors and taxonomy already defined.
- Writers need a hosted post editor without first designing content types and their relationships.
- Your frontend should receive HTML or Markdown post bodies through a REST API or TypeScript SDK.
- Your blog fits Marble's usage limits, and you want paid workspace plans at $5 or $20 a month on monthly billing.
Choose Contentful when
- You need configurable content types for products, landing pages, or other content alongside your blog.
- You reuse linked entries and assets across pages or embed structured entries inside Rich Text.
- You need localized fields and locale settings within the content platform.
- You need GraphQL delivery or Contentful's larger API allowances. Free is limited to testing and learning; commercial blogs need a paid plan.
Marble and Contentful, side by side
The differences that change which product fits. Plan and product details link to Contentful's own documentation. Last checked October 29, 2026.
| Topic | Marble | Contentful |
|---|---|---|
| Content model | Posts with authors, one category, tags, and typed custom fields. No arbitrary content types to configure. | Content types with fields you define, including text, dates, media, and references to other entries.Contentful docs: Data model |
| Hosted editing workflow | A hosted editor for posts. Create a workspace, write, and connect your frontend to the API. | A hosted web app for editing entries. Define or adapt your content model, then connect your frontend to its delivery APIs.Contentful docs: Data modelContentful docs: API basics |
| Body format | HTML by default, or Markdown through the format parameter. | Rich Text returns JSON nodes, with renderers available. A Long Text field can hold Markdown instead, so your body format depends on your model.Contentful docs: Rich TextContentful docs: Data model |
| Content delivery | REST endpoints for posts and related resources, plus a TypeScript SDK. Your frontend renders the returned content. | A Content Delivery API for published JSON content, a Preview API for unpublished content, and a GraphQL Content API.Contentful docs: API basicsContentful docs: Content Delivery API |
| Included API usage | 5,000 requests a month on Free, 25,000 on Hobby, and 50,000 on Pro. | 100,000 API calls a month on Free, restricted to testing and learning, and 1 million on Lite. Free's allowance is higher than Marble's, but commercial use requires a paid plan.Contentful pricingContentful usage limits |
| Relationships and reuse | Posts have built-in author, category, and tag relationships. Custom fields extend post metadata. | Reference fields link entries and assets. Rich Text can also embed or link entries and assets within the body.Contentful docs: Data modelContentful docs: Rich Text |
| Localization | The post model has no built-in localized field variants. Plan translated posts and their URL relationships in your application. | Localized content within a space, with 2 locales on Free and 3 on Lite.Contentful docs: Data modelContentful pricing |
| Team access | 1 team member on Free, 5 on Hobby, and 10 on Pro. | 10 users and 2 roles on Free. Lite includes 20 users and 3 roles, plus live collaboration.Contentful pricing |
| Webhooks | Post and other workspace events can trigger your rebuild or revalidation endpoint, with signed payloads, retries, and delivery logs. | Content changes can trigger HTTP callbacks. Filters can restrict events to an environment, entry, asset, or content type.Contentful docs: Webhooks |
| Pricing | Free at $0. Hobby is $5/month and Pro is $20/month per workspace on monthly billing. All include unlimited posts. | Free at $0 for testing and learning only; commercial use is excluded. Lite costs $300/month, with custom Enterprise pricing. Each plan includes a Starter Space.Contentful pricingContentful usage limits |
What publishing a post looks like
With Marble
- 1Create a Marble workspace with its post model and hosted editor already available.
- 2Write a post, add its authors, category, tags, and cover image, and publish it.
- 3Create an API key and fetch the post through the REST API or TypeScript SDK.
- 4Render the HTML body, or request Markdown for your frontend's Markdown renderer.
- 5Configure a webhook to rebuild or revalidate your site when posts change.
With Contentful
- 1Create a Contentful space and define or adapt a blog content type, its fields, and any author or category references.
- 2Choose Rich Text or Long Text for the body, and configure localized fields if your blog needs them.
- 3Write the entry in Contentful's web app and publish the entries and assets your post references.
- 4Fetch published content with a delivery API. Render Rich Text nodes or Markdown and handle any linked content in your frontend.
- 5Configure a webhook if your site needs to rebuild or revalidate after content changes.
Moving a Contentful blog to Marble
- Export the intended space and environment with
contentful space export. Include drafts if you need them, and keep the export as a backup (Contentful CLI docs). - Select the entries that represent blog posts and the locale you intend to publish. Record each entry's old public URL and its new slug, including any locale prefixes or category paths.
- For Rich Text bodies, resolve linked entries and assets before converting the nodes to Markdown. Decide how embedded entries become text, images, or frontend components. If the body is Long Text Markdown, keep that source and review its syntax (Rich Text docs).
- Create a .md or .mdx file per post with supported frontmatter for title, slug, description, date, one category, and tags. Marble cannot import Contentful JSON directly. Upload files individually or as a ZIP of up to 100 Markdown files, within the import size limits. They become drafts (Marble import docs).
- Review the imported drafts before publishing. Match authors, check the category and tags, and set cover images and custom fields separately. Check converted formatting, especially tables and embedded components.
- Audit every image URL. A ZIP import does not rehost Contentful assets. Upload images you need to retain to Marble's media library and update body and cover references before removing the old assets.
- Plan locale groupings, arbitrary content types, editorial workflows, and relationships separately. They do not transfer as equivalent Marble features. Keep other content in Contentful or another suitable system, and add frontend redirects wherever public URLs change.
Frequently asked questions
Common questions about choosing between Marble and Contentful.
Is Marble a Contentful alternative for a blog?
Yes, when your content fits posts with authors, a category, tags, and custom fields. Marble provides that model and a hosted editor and API. Contentful is a better fit when your blog shares structured entries with other content types or needs localized fields. Both require your own frontend.
Are Marble and Contentful both free to start?
Yes. Marble's Free plan includes 5,000 API requests a month and 1 team member. Contentful's Free plan includes 100,000 API calls a month and 10 users, but its usage limits restrict Free to testing and learning and exclude commercial use. Marble's paid plans are $5 and $20 per workspace per month on monthly billing. Contentful Lite is $300/month. Compare your needs against both Marble pricing and Contentful pricing.
Does every Contentful blog need a Rich Text renderer?
No. Contentful's Rich Text field returns JSON nodes, and Contentful provides rendering tools. A Long Text field can hold Markdown instead. Check your existing content type before choosing a rendering or migration approach (data model docs, Rich Text docs). Marble returns post bodies as HTML or Markdown.
Can Marble replace Contentful's localized content model?
Marble does not provide equivalent localized fields or arbitrary linked content types. You can plan separate translated posts and routes in your application, but you must manage their relationships yourself. Keep Contentful when those platform features are central to your workflow (Contentful data model).
Can I import a Contentful export directly into Marble?
No. Select the blog entries and intended locale from your Contentful export, resolve linked content, and convert the bodies to Markdown. Marble's file importer creates drafts from Markdown or MDX files. Review authors, taxonomy, covers, custom fields, images, and old URL mappings before publishing.
More resources
- Marble vs GhostGhost bundles a themed website, newsletters, and memberships. Marble delivers posts to a site you build.Comparison
- Marble vs SanitySanity models any content in code with a configurable Studio. Marble is a ready-made CMS for posts.Comparison
- Marble vs PayloadPayload gives you a configurable CMS and backend inside Next.js. Marble hosts an editor and API for posts.Comparison
- Marble vs StrapiStrapi lets you define content types and customize a Node.js backend. Marble hosts an editor and API built around posts.Comparison
- Marble vs WordPressWordPress combines blogging with themes, plugins, and a website you can extend. Marble hosts a post editor and API for your own frontend.Comparison
- How Marble works as a headless CMSThe editor-to-API workflow, what's included, and who Marble suits.Product
- Marble for Next.jsFetch posts in Server Components and revalidate when you publish.Guide
- Marble for AstroLoad posts into content collections and rebuild on publish.Guide
Try Marble with your own site.
Create a free workspace, publish a post, and fetch it from your frontend in a few minutes.