MilooshFind my software

CMS Buying Decision Matrix 2026

A CMS decision is a migration decision you make twice -- once moving in, once (maybe, years later) moving out. This matrix checks all 8 platforms -- WordPress, Umbraco, Craft CMS, Drupal, Joomla, Webflow, Contentful, and Storyblok -- against each vendor's own documentation for whether a path to import content in, and a path to export it back out, actually exists.

Citation

Miloosh Research. “CMS Buying Decision Matrix 2026.” Verified 2026-09-27. https://miloosh.com/research/cms-buying-decision-2026. Methodology: https://miloosh.com/research/cms-buying-decision-2026#methodology. Dataset licensed CC BY 4.0 -- reuse with attribution.

7 of 8

Have documented content input and output mechanisms; not necessarily cross-CMS migration

1 of 8

Have an import finding but no verified outbound workflow in this review

No migration score

File export, API extraction and complete-site portability are different claims

3 of 8

Offer both a self-hosted option and a vendor-hosted option

3 of 8

Vendor-hosted CMS service (Webflow, Contentful, Storyblok); exported content is not the hosted application

Check the contract

Support fees, response-time commitments and pricing are not measured by this review

Migration direction, by vendor

“In” and “Out” include documented same-platform transfers, file formats and API extraction. They do not promise a working site on a competing CMS. “Not verified” means an evidence gap, not a missing capability.

PlatformHostingImport in?Export out?Official support?
WordPressbothDocumentedDocumentedNot assessed
UmbracobothDocumentedDocumentedNot assessed
Craft CMSbothDocumentedDocumentedDocumented
Drupalself-hostedDocumentedDocumentedNot assessed
Joomlaself-hostedDocumentedNot verifiedNot assessed
WebflowhostedDocumentedDocumentedNot assessed
ContentfulhostedDocumentedDocumentedNot assessed
StoryblokhostedDocumentedDocumentedNot assessed

Full detail, by vendor

WordPress

Documentation reviewed 2026-09-27
Import in
Tools → Import supports WXR import. Other source systems require their own importer and field mapping.
Export out
Tools → Export downloads WXR/XML containing selected content. This is not a working theme/plugin stack or proof of compatibility with another CMS.
Commercial support
Support fees and SLAs were not measured in this content-transfer review. Confirm responsibility with the project, hosting provider or agency before contracting.
Who it's positioned for
Check whether theme/plugin behavior must be rebuilt separately from WXR content, and name the party maintaining hosting and updates.

Umbraco

Documentation reviewed 2026-09-27
Import in
Deploy imports its ZIP content/schema archives into another Umbraco environment. This verifies an Umbraco-to-Umbraco path, not an importer for competing CMSs.
Export out
Deploy exports selected content, schema and optionally media to ZIP. Version upgrades may require migrators; another CMS needs conversion of the Umbraco representation.
Commercial support
Support fees and SLAs were not measured in this content-transfer review. Confirm responsibility with the project, hosting provider or agency before contracting.
Who it's positioned for
Test the exact source/destination versions and property editors. Deploy archives are useful for Umbraco transfers, not evidence of automatic conversion to another CMS.

Craft CMS

Documentation reviewed 2026-09-27
Import in
Craft documents a WordPress import tool. Verify custom-field and plugin compatibility separately.
Export out
Element indexes offer CSV, JSON and XML export. These formats still need mapping to the receiving CMS; they are not a complete application migration.
Commercial support
Craft offers developer support and premium support options. Edition and response commitments should be checked separately from the CMS license.
Who it's positioned for
Have the developer test WordPress imports and exported element fields against the destination model; evaluate Craft Cloud separately from a self-hosted license.

Drupal

Documentation reviewed 2026-09-27
Import in
The Migrate API documents source plugins and transformations for bringing external data into Drupal. Formats may require contributed modules.
Export out
Core JSON:API documentation shows GET requests for entities and collections. This is developer-oriented extraction, not a one-click whole-site export; handle permissions, pagination and related files.
Commercial support
Support fees and SLAs were not measured in this content-transfer review. Confirm responsibility with the project, hosting provider or agency before contracting.
Who it's positioned for
Assign ownership for entity mapping, API permissions, pagination and media retrieval. A working API response is only one part of a migration.

Joomla

Documentation reviewed 2026-09-27
Import in
Joomla Community Magazine documents a GSoC 2025 CMS Migration extension for WordPress-to-Joomla content transfer over web-service APIs. Verify current maintenance and version compatibility.
Export out
A general outbound content-transfer workflow was not verified in the sources reviewed for this row. This is an evidence gap, not a claim that Joomla cannot export data or that no extension exists.
Commercial support
Support fees and SLAs were not measured in this content-transfer review. Confirm responsibility with the project, hosting provider or agency before contracting.
Who it's positioned for
Confirm that the extension supports the needed versions and content types. Ask the implementer to demonstrate the outbound path that this review could not verify.

Webflow

Documentation reviewed 2026-09-27
Import in
Webflow CMS imports Collection items from CSV with field mapping. A restriction on importing arbitrary website code is not a restriction on importing CMS content.
Export out
Collections export as CSV. Image/file URLs can point at the original site: preserve or migrate assets before deleting it. CSV does not recreate the site's design or application behavior.
Commercial support
Support fees and SLAs were not measured in this content-transfer review. Confirm responsibility with the project, hosting provider or agency before contracting.
Who it's positioned for
Validate reference fields, locales and file URLs in exported CSV. Plan design/application rebuilding separately from Collection content transfer.

Contentful

Documentation reviewed 2026-09-27
Import in
The CLI imports content and content models using Contentful's JSON schema. Another CMS's export needs mapping to that schema.
Export out
The CLI exports entries, assets, content types and other space data as JSON. Version history and some workflow/application configuration do not migrate. This is not turnkey compatibility with competing CMSs.
Commercial support
Support fees and SLAs were not measured in this content-transfer review. Confirm responsibility with the project, hosting provider or agency before contracting.
Who it's positioned for
Include the CLI's omissions in the migration plan: version history, workflows and apps do not all travel with entries and assets.

Storyblok

Documentation reviewed 2026-09-27
Import in
The CLI pushes previously pulled stories into a space; keep component schemas in sync. Content from a different CMS needs transformation.
Export out
The stories pull command retrieves stories into local files, alongside separate component-schema commands. Export is not limited to a per-story API, but these files are not a ready-to-run site on another CMS.
Commercial support
Support fees and SLAs were not measured in this content-transfer review. Confirm responsibility with the project, hosting provider or agency before contracting.
Who it's positioned for
Review stories and component schemas together. Validate references after push/pull rather than treating downloaded stories as a standalone website.

Methodology

Sample
An editorial sample of 8 CMS products (WordPress, Umbraco, Craft CMS, Drupal, Joomla, Webflow, Contentful, Storyblok), not an exhaustive or market-share-weighted sample.
Verification
Each vendor's migration claims are checked against its own official documentation -- pricing pages, developer docs, knowledge-base articles -- never a third-party migration-tool vendor's marketing claims about compatibility. “Documents import/export” means a specific, named, vendor-published tool or process was found; the absence of a finding is reported as such, not treated as proof no tool exists anywhere.
Missing data
Unknown support terms remain unassessed. Pricing is deliberately excluded: copying an older catalog price under today's review date would not verify it. Third-party hosting is not classified as a project-owned hosted CMS.
Why “matrix,” not “index”
This page computes no composite score or ranking across platforms. It reports a small number of verified per-vendor facts along two decision-relevant dimensions (migration direction, hosting model). “Matrix” describes a facts-by-vendor grid; it does not imply a winner.
Limitations
“Documented” is not the same as “easy” or “complete” -- several import tools found here are limited to specific source platforms (e.g. Craft CMS and Joomla's WordPress-specific importers) and would not help migrating from a different CMS. This matrix does not evaluate migration quality, only documented existence.
Site-wide standards
This page follows the same rules as every other page on Miloosh: see the Sources Policy for how facts are sourced and dated, the Editorial Policy for how commercial relationships are kept separate from what gets published, and the Corrections Policy to report an error in this dataset.

What to test before you commit to a CMS

  • Before signing a contract or building real content, try the platform's own documented export path yourself -- with a throwaway test site -- rather than trusting that one exists because the vendor is popular.
  • If an outbound workflow is not verified here, ask for a documented process and test it; do not infer that the vendor has no export capability.
  • “Hosted-only” platforms (Webflow, Contentful, Storyblok) mean your content lives on the vendor's infrastructure by design -- that is a legitimate tradeoff for speed and reliability, but it is a different risk profile than a self-hostable option, and worth naming explicitly in a buying decision.
  • Identify who is responsible for migration and ongoing support: the CMS project, a hosting provider and an implementation agency can be different organizations.

Get notified when this matrix updates

Register interest in research updates. Signup does not promise a publication schedule.

Email delivery is not active yet. Joining records your interest; no immediate email is promised.