~/tools/wagtail
Wagtail
tool

Wagtail

Wagtail is an open source content management system built on Django — a Contentful, Adobe Experience Manager, and Sitecore alternative that gives developers code-level control and editors a fast, block-based publishing interface on a stack you self-host and own.

What is Wagtail?

Wagtail is an open source content management system built on the Django web framework in Python. Created by the UK agency Torchbox in 2014, it pairs code-level control for developers with a fast, accessible editing interface for content teams, and it runs on any server where Python runs. It powers sites for NASA, Google, the UK’s NHS, and Mozilla.

What is Wagtail best for?

Wagtail is best for teams that already build in Python and Django and want a CMS they own rather than a hosted SaaS. Developers define page types and content structure in code; editors then publish through a clean admin without touching that code. It scales to millions of pages and thousands of editors, which suits government sites, universities, cultural institutions, and enterprises with in-house or agency Django developers.

What can Wagtail do?

  • StreamField — a block-based content model that lets editors assemble pages from reusable, structured blocks instead of one freeform rich-text field.
  • Headless or traditional — serve pages through Django templates, or expose content over a REST content API for a decoupled front end.
  • Multi-site and multi-language — run several sites from one install; translate content with the Wagtail Localize add-on (50+ admin languages).
  • Integrated search — full-text search backed by PostgreSQL or Elasticsearch.
  • Rich media handling — image library with automatic renditions/focal cropping, documents, and embeds.
  • Granular permissions and workflow — moderation, page-level permissions, and configurable review/approval steps.
  • Django-native extensibility — use any Django app, model, or Python package alongside your CMS content.

Where does Wagtail fall short?

Wagtail is a developer’s CMS, not a point-and-click site builder. Someone has to write Django page models and templates before an editor can publish anything, so a non-technical team can’t stand up a site the way they could with WordPress or a hosted Contentful.

Its ecosystem is far smaller than WordPress’s. There’s no vast marketplace of drop-in themes and plugins — you build most features yourself or lean on a modest set of community packages.

It commits you to the Django stack. If your team doesn’t already work in Python and Django, adopting Wagtail means adopting the framework underneath it too, which is a larger decision than picking a stack-agnostic headless API.

Is Wagtail free?

Yes. Wagtail is fully open source under the permissive BSD-3-Clause license, with no paid tiers, seat limits, or API-call metering — you self-host it and pay only for your own infrastructure. Commercial support, hosting, and development are available from Torchbox and other agencies, but they’re optional, not required to run the software.

What does Wagtail replace?

Wagtail is an open source alternative to paid enterprise CMS and digital experience platforms: Contentful, Adobe Experience Manager, and Sitecore. It covers the same enterprise needs — structured content, multi-site and multi-language publishing, headless delivery, and editorial workflow — without per-seat or license fees. Among open source options it sits closest to full publishing platforms; if you want a purely API-first backend, compare it with Directus or Strapi.

FAQ

Is Wagtail open source? Yes. Wagtail is released under the BSD-3-Clause license, a permissive license that allows free use, modification, and redistribution in both open and closed-source projects.

Can I self-host Wagtail for free? Yes. The software is free to download and self-host with no license fees. You supply the hosting — a Python environment and a database (PostgreSQL, MySQL, MariaDB, or SQLite).

Is Wagtail a good Contentful alternative? For teams working in Python and Django, yes. It offers structured content, a content API for headless use, and multi-site publishing without Contentful’s per-seat and API-call pricing. It’s a weaker fit if you want a fully managed, stack-agnostic SaaS with no backend to run.

What do I need to run Wagtail? Python 3 (3.11+ in current releases), Django, and a supported database — PostgreSQL, MySQL, MariaDB, or SQLite. It installs as a standalone project or drops into an existing Django application.