Development | Craft CMS

Why we’re Craft CMS developers

Matt Square
Matt Ellis September 12th, 2022 Updated 14 July 2026
Why Craft Header Mobile

TL;DR — Why we're the UK's leading Craft CMS development agency

Craft CMS isn’t the most popular content management system — but we think it’s the best. It’s fast, flexible, secure, and beautifully designed for both web developers and content editors. Here is why it remains our enterprise platform of choice:

  • Zero Theme Lock-In: Craft makes absolutely no assumptions about your content or design, giving our developers 100% control over clean HTML output and front-end optimization.
  • Editor-Friendly Control Panel: Features a fully accessible, fast admin interface with real-time Live Preview, making content publishing entirely seamless across mobile and desktop.
  • Native Architecture & Caching: Built-in Matrix fields, asset relations, and multi-environment management radically reduce reliance on bloated, insecure third-party plugins.

Want the deep dive into the data, metrics, and technical architecture? Keep scrolling.

As certified Craft CMS developers in the UK, we've spent years custom-building, maintaining, and upgrading high-performance digital platforms. Before we get into why it is our platform of choice, take a look at these stats:

According to w3techs.com data — there are a mind-bending 1,006 CMSes powering the top 10,000,000 websites.

The top 10 look like this:

Graphic showing the top 10 CMSes

Top 10 CMSes (June 2026)

1. WordPress, 2. Shopify, 3. Wix, 4. Squarespace, 5. Joomla, 6. Webflow, 7. Tilda, 8. Duda, 9. Drupal, 10. GoDaddy

We’ve used our fair share of CMSes.

Six from the top ten list above — and perhaps another five or so from further down.

But since 2015, one CMS has really stood out for us:

Craft CMS.

It may be far from the top of the popularity charts — but here’s a whizz stop tour of what we think is so good about Craft CMS — and why we believe it’s worth investing in.

A (very) brief history of Craft CMS

Craft CMS is built by software development company Pixel & Tonic.

Originally formed by Brandon Kelly — they gained recognition for creating a set must have add-ons for ExpressionEngine.

You’d be hard pushed to have built an ExpressionEngine website without using one of their brilliant add-ons:

  • Wygwam
  • Assets
  • Playa
  • Matrix
  • Field Pack

Then rumours started circulating that Pixel & Tonic (at the time just Brandon Kelly) was also working on a top secret side project: Blocks CMS.

There was unrest in the ExpressionEngine community as developers had begun to push back against decisions EllisLab (the makers of ExpressionEngine) were making with the CMS.

Ellislab tweet about competition ethics addons

The Blocks CMS name was a little uninspiring — but the premise of the creator of the best ExpressionEngine add-ons releasing a content management system to compete with ExpressionEngine was tantalising.

Blocks CMS was announced via Twitter in 2012 and soon after Pixel & Tonic published a blog to shed more light on their ‘little side project’.

Pixel and tonic tweet about craft cms

In March 2013 the official announcement came:

After 27 months of about 12,500 total man hours, 3,483 commits, three product strategies, 31 redesigns, 7 major architecture shifts, countless code refactors, one name change, and approximately 327 liters of consumed Jameson, it is my very great pleasure to introduce you to Craft.

Brandon Kelly  — Pixel & Tonic

The name change was due to legal implications — and they felt they’d built something greater than they’d originally intended.

The CMS is for people who like to take their time and do things right. It’s for those of us who truly approach our work with the utmost skillfulness and craft. We craftsmen actually like writing every last HTML tag by hand, and we wouldn’t touch an off-the-shelf theme with a ten-foot stick. It’s for web agencies that strive to make their clients happy by delivering the best solution possible. And it’s for site owners, who just want a simple tool to keep their website updated with fresh content, without going up a steep learning curve.

Brandon Kelly — Pixel & Tonic

We love the ethos — but it sure can make Googling support articles difficult.

“Craft websites”, anyone?

Craft is hard to google

As the popularity of Craft CMS grew, so too did the Pixel & Tonic team. Brad Bell joined in 2010 as ‘Chief Mixologist’ (aka "Chief drinks maker").

Then a slew of other top tech talent, including former EllisLab CEO, Leslie Camacho as CCO.

Pixel & Tonic Team (Dec 2019)

Pixel & Tonic Team (Dec 2019)

Unsurprisingly, Pixel & Tonic sold all their ExpressionEngine plugins to EE Harbour — which allowed them to focus purely on Craft CMS.

The popularity of the CMS has grown year on year since it’s original release.

Brandon shared growth stats in his State of Craft keynote from the Dot All conference in 2021.

Who uses Craft CMS?

In terms of popularity, as of July 2025 BuiltWith tells us there are over 46,000+ live Craft CMS websites on the internet.

With the majority of Craft sites located in the United States, the United Kingdom, and Europe:

  • United States ~ 16,000
  • United Kingdom ~ 5,500
  • Switzerland ~ 3,000
  • Netherlands ~ 3,000
  • Belgium ~ 3,000
  • Germany ~ 3,000
  • Australia ~ 2,300

Some high-profile Craft users include:

  • Netflix
  • Adidas
  • VW
  • Intel
  • Sonos
  • Salesforce
  • Moz
  • Atlassian
  • Reddit
  • Oakley
  • Dalai Lama

There's no real discrimination between the size of the organisation or website project. Craft has been adopted, across countless industries and sectors — from international business, SMEs, and websites for startups — to mom-and-pop shops.

Companies that use Craft CMS

Companies that use Craft CMS

Netflix, Atlassian, Sonos, Moz, Salesforce, Intel, Oakley, Hootsuite, The Dalai Lama, Pingdom, Reddit, Mixmag, AP, Foursquare

But what makes Craft CMS so good?

It’s difficult to pinpoint one exact thing that makes us want to be Craft CMS developers — but as experienced website consultants, if we were pushed for an answer we’d boil it down to these 2 points:

1. Craft CMS makes no assumption about the content

At its core Craft CMS makes no assumption about what the site needs to do or be.

We’ve yet to find a situation where Craft CMS can’t easily give us exactly what we want on the front-end; something you may be unfamiliar with if you’ve ever used ‘theme builders’ on other CMSes.

Pixel & Tonic sum it up nicely on their website:

Build exactly what you want from the ground up, rather than wrestling with a pre-built theme.Craft CMS Website

The admin area takes the same approach too. It assumes nothing about what the content is or how it’s structured and simply lets us manage the content.

2. Built-in features

Craft CMS comes with a solid set of built-in features.

Many of Pixel & Tonic’s ExpressionEngine add-ons were repurposed and built into the core of Craft CMS.

That means that there’s scope for achieving more of what you need to do natively — rather than relying on plugins to bridge a functionality gap.

But that’s not all...

A brilliant Control Panel

Craft CMS isn’t just developer-friendly — it’s a joy for content editors too.

The Control Panel is beautifully designed, fast, and genuinely nice to use. Managing content, tweaking settings, and spinning up new sections all feel intuitive and well thought-out. Dare I say… fun?

It’s responsive, clean, and works beautifully on smaller screens — ideal for time-poor content writers trying to squeeze in edits on the move (or, let’s be honest, on the toilet).

Accessibility is baked in from the ground up, with thoughtful details like keyboard navigation, focus states, and screen reader support — so everyone can use it confidently.

And if you’re a developer, the Utilities section will become a regular go-to. Whether it’s clearing caches, managing users, or running queue jobs, it’s all at your fingertips without needing to dive into the command line.

Craft CMS Control Panel

Craft CMS Control Panel

A joy for developers and content authors alike.

PHP info is right there — as well as a report showing you whether your server is meeting all of Craft’s server requirements.

There’s even a Deprecation Errors page to flag up any issues you might have with future versions of Craft.

Author drafts

When writing content, an author can choose to save an entry as a draft rather than publish it straight away.

Though in itself that's fairly standard, Craft CMS once again takes it to the next level, by offering change tracking.

This allows multiple authors working on drafts to merge each other's changes, which is incredibly useful to make sure you don't overwrite your colleague's work.

Advanced filters

With the release of Craft 4, Craft CMS introduced advanced filters to the entries panel. This means you can filter for entries based on the value of any custom field you've created - with and/or logic built in. This will make finding entries on large sites much simpler than before.

Use the Matrix for repeating content blocks

The Matrix allows you to define repeating blocks of content within an entry — and each repeating block can be made up from one or more of Craft CMS Custom Fields.

In Craft 5, Matrix blocks have been upgraded to support full nesting and decoupled entry types. This means that a Matrix block is treated as a standard entry, allowing you to nest blocks within other blocks, reuse entry types across different sections, and build complex layouts without duplicating fields.

A simple example of where to use a Matrix block is a web page showing team members in a company. You would set up a Matrix block with just the fields each team member needs:

  • Name
  • Role
  • Photo
  • Bio

Content authors can click the ‘+ Team Member’ button to add a new team member — and the correct Custom Fields would appear, ready to be filled in.

Matrix blocks can easily be rearranged. In the context of the team members page, promoting a person is as simple as dragging and dropping the blocks into a new order.

Craft CMS Matrix

Craft CMS Matrix

Define repeating blocks of content within an entry — made up from one or more of Craft CMS Custom Fields.

But the Matrix really comes into its own when using multiple block types.

A simple webpage could have the following sections:

  • Text
  • Image
  • Testimonial

We’ll call these the Block Types.

Within each block type, we can define the Custom Fields it needs.

For example, the Testimonial block could have:

  • Testimonial
    • Name
    • Quote
    • Photo

And the Image block could have:

  • Image
    • Photo
    • Description
    • Photographer

With the block types defined, the content author can start to build up the page in the order that best suits the article.

The article could start with a block of text and then show a sequence of images. Or start with a Testimonial, move on to a block of text and then back to another Testimonial.

It’s totally up to you.

The Matrix gives authors freedom to create engaging content without them having to code HTML or paste in [shortcode]s.

The Matrix can be as simple or complex as you need it to be.

We’ve used it for team profiles and blog articles — right through to full landing page builders which allow authors to design complex pages from a set of content types like; image galleries, contact forms and videos.

Developers have complete control over the template markup and content defined in a Matrix block will output exactly the way you want it to.

Again, no more wrestling with pre-built themes or code.

You can now nest Matrix blocks within other Matrix blocks, allowing for more complex and flexible content structures. This is a game-changer for building intricate layouts without relying on additional plugins.

Craft CMS Tip:

The Matrix isn’t just for entries. You can get creative and use Matrix fields in categories, tags, globals, assets and users too.

Edit images in the Control Panel

Editing images for websites can be a laborious task. The less time you need to spend in Photoshop the better!

Craft CMS's baked-in image editor won’t replace Photoshop — but does come with some handy editing tools:

  • Rotate
  • Flip
  • Crop
  • Focal Point

Set the focal point for responsive images

In the age of responsive web design, getting the image to look great across all screen sizes can be difficult and time-consuming.

Previously, we’d need to create a different image crop for each screen size to make sure the main elements of the image were positioned in the right place.

It. Was. Tedious.

Craft CMS allows you to set the focal point, or gravity, on a single image.

In conjunction with Image Transforms, Craft CMS uses the focal point setting to resize and crop the image — keeping the main subject the centre of attention.

Craft CMS Image Editor

Craft CMS Image Editor

Edit, crop and set focal points on images — within the control panel.

Build beautiful (data) relationships

Craft CMS makes it easy to connect and cross reference entries.

Need a ‘Related Blogs’ section? No problem.

Adding a set of Speakers to an Event? Easy.

Craft CMS’s handling of relationships is first class. You can even create new related entries from within the parent entry.

There’s no need to save, create a new entry, go back and add then add the new entry — it can all be done from the same place. A lovely feature and a great time saver.

You can choose which entries can be related to each field, for example only Blog entries can be related to the Related Blogs field. And you can add more advanced limitations here including only allowing entries with a certain category to be relatable.

Decoupled Entry Types

As of version 5, Entry types are no longer tied to specific sections. This means you can reuse entry types across different sections, streamlining content modelling and reducing redundancy.

Craft cms create content within content

Craft CMS Tip:

Editing lots of content? You can use a keyboard shortcut cmd + S on Mac or ctrl + S on a PC to ‘Save and continue editing’.

Preview your content before publishing it

Live Preview does exactly what you’d hope; it shows you a live preview of your content on the front-end of your web page — updating in real time as you add and edit it from the Control Panel. In Craft Pro, you have controls to change the viewport to mobile, tablet, and desktop views.

Craft CMS Live Preview

Live Preview

Preview what your content will look like before hitting the publish button.

Many other CMSes allow you to preview the entry before it’s posted — but I’m not sure if this has ever been executed as well in a content management system as it has in Craft.

It’s a killer feature — and one that usually gets an ‘oooh’ from clients when we demo it to them for the first time.

Custom fields for custom content

Custom fields are the backbone of a great and true CMS.

Content can come in many guises: text, images, video — and everything in between.

Out of the box, Craft CMS comes with a healthy set of custom fields to help build the admin interface your client will use to create content.

Addresses

— Similar to a Matrix field, but it manages nested address elements instead of entries.

Assets

— Relate assets (such as images) to other elements.

Button Group

— A compact, graphical option for selecting a single value from a list.

Categories

— Relate categories to other elements.

Checkboxes

— A group of checkboxes.

Colour

— A hexadecimal colour input with a preview of the current colour. On browsers that support input type="color", clicking the preview opens the native colour picker.

Content Block

— Group existing fields into a reusable bundle.

Country

— Select from the list of countries made available via address elements.

Date/Time

— A date picker, and optionally a time picker as well.

Dropdown

— A single-select dropdown input.

Email

— A plain text field with automatic email validation.

Entries

— Relate entries to other elements.

Icon

— Pick an icon from the FontAwesome library.

Lightswitch

— A simple toggle input for a “Yes” or “No” answer.

Matrix

— Create multiple blocks of content within a single field.

Money

— A plain text field with automatic money formatting.

Multi-select

— A multi-select input.

Number

— A text input that accepts numeric values.

Plain Text

— Single-line or multi-line input for plain text.

Radio Buttons

— A group of radio buttons.

Range

— Pick a number with a visual slider.

Table

— A customisable table with multiple rows of content.

Tags

— Relate tags to other elements.

Time

— Select a time (e.g. start time for an event) without an attached date.

Users

— Relate users to other elements.

URL

— A plain text field with automatic URL validation — for websites, phone numbers, or email addresses.

Customise the field layout for each section

To assign Custom Fields to sections in the Control Panel, Craft CMS provides you with an intuitive drag-and-drop editor to build up fields for different types of content your client needs.

In addition to being able to order the fields how you'd like, Craft CMS also allows you to add UI elements such as headings, tips, warnings, line breaks, and even custom templates to each section's field layout. This greatly enhances the authorship user experience and makes sure admins understand how to create the content they need to.

You're also able to relabel fields and add custom instruction text depending on the section it's in. This can be useful if, for example, an image should be square in one section, but widescreen in another — you can change the instruction text without having to create two separate fields! Equally, you might want to have different field names for developers and authors, such as "Masthead -- no image" for developers, but just "Masthead" for authors.

Craft cms drag and drop custom fields

As of Craft 4, Craft CMS supports native conditional fields. For example you could only show the "Image Caption" field if the "Image" field has an image attached.

From here you can also group information for the entry page into tabs. We often use one tab for the main entry content and one tab for the entry's SEO data.

It’s completely optional — but does help group content together in logical chunks.

Craft cms tab switching

Get content in the right place with Section Types

In Craft-land, content falls into one of four types:

Singles

Perfect for Homepage, About us and Contact pages. Basically, anything that’s a single page that doesn’t need to be ordered or have a date associated with it.

Channels

Channels are great for date based content like Blogs, News or Events.

Structures

Structures are for content that has to be in a specific order. Ideal for resource sections, people profiles, or services your business offers.

Structures can be hierarchical too — and are perfect for something like services, which might have sub-services below them.

It’s up to you how to organise the content — but the Section Types in Craft give you more than enough freedom to make it feel like you’re never shoehorning content into somewhere it doesn't belong.

Screenshot 2019 04 15 at 15 12 48

For everything else, use Globals

For smaller chunks of content, developers can also set up Global fields which have a dedicated section in the Control Panel.

This is where you might add site-wide setting that aren't necessarily part of an entry — such as the cookie policy popup text, your site logo or a favicon.

Multiple types of entries

Entry Types is a magical setting that can transform the way you think about creating content.

Each Channel and Structure can have multiple Entry Types — effectively extending or completely altering the type of content available within that entry.

Confused? Yes, me too at first.

Imagine your website needed a News section. Not uncommon. The most simple approach would be to create a News Channel and have one Entry Type called News.

Now imagine there are two different types of news; articles, and announcements.

You could create a new Announcements Channel, but this doesn't feel like the right decision since they're both types of news.

This could be achieved with Categories. But where having a new Entry Type shines is that you can post Event and News in the same Channel and have a unique set of Custom Fields for each Entry Type.

The Announcements Entry Type could include the same or completely different custom fields as the News Entry Type.

Entry Types can have their own front-end template. The design, layout and content the visitor sees can change according to which one is being displayed.

It’s a flexible system that you can get super creative with. Add Categories and Tags into the mix and you’ll end up with several ways to build and administer content in a logical, easy to manage way.

Powerful, PHP-free templating language

One major factor that sets Craft apart from other content management systems is that it uses a templating language called Twig, rather than PHP.

There is no inline PHP allowed in the templates. This means that your templates stay beautifully clean, and any complicated logic is deferred to the Craft application.

Templates are easier for everyone to understand. It also prevents poorly written code from clunking up your site — an issue that can affect performance, security and maintainability.

To add your own custom PHP, Craft CMS allows you to easily extend its app by adding your own modules and plugins.

This might seem restrictive at first, but forcing web developers to structure their PHP properly rather than dumping it into the template is great for the long term health of the project.

The Future: Craft 6 & The Laravel Revolution

If you're already running Laravel, this is a game-changer. Craft 6 is completely porting its core to Laravel, meaning it will register natively as a Laravel package. This lowers the barrier for developers, future-proofs your tech stack, and makes complex app integrations incredibly clean.

Organise front-end templates however you like

You can set up your Craft template folder structure however you want.

With the use of Twig’s include(), you can segment your templates up into reusable chunks. For example on the News page, you could include a news-preview partial.

This is a great way to keep coding DRY, reusable and maintainable and work fantastically with design systems.

Within Twig you can write macros, which are essentially little functions that generate bits of templates for you.

One of the macros we’ve written called navLink() generates the markup for a navigation link, so we only need to update it in one place.

{% macro navLink(params) %}
 <li class="nav__primary__item nav__item{% if params.active %} nav__item--active{% endif %} f_semibold">
 <a class="u_no-dec nav__primary__link" href="{{ params.url }}">{{ params.title }}</a>
 </li>
{% endmacro %}

Having to write this every time would be inefficient and more likely to be inconsistent — thus saving us time and headaches!

Easy custom URL routing

Routes allows you to manually choose the URLs for all of your sections, eg: News article URLs should be /news/{article-title}.

That’s a powerful feature when you want your News Index to be called News Index in the Control Panel but you want the URL to be /news/.

Anything more complicated than that is super easy too.

You can set custom routes with a simple pattern matching system that can be done through the Control Panel or in the routes.php config file. It's also possible (and simple) to include variables in your routes.

We always recommend using routes.php because then everything is safely saved in version control.

For example, if you're building a property website, you could set up a custom route like so:
 

return [
 'properties' => ['template' => 'properties-index']
];

And you may then also want to pass a variable into your template:
 

return [
 'properties/<propertyid>' => ['template' => 'property-details']
];

which will expose the propertyid variable to the template, so you can use it like any other variable:

{{ propertyid }}


Really simple and super useful!

Multisite CMS from one Craft installation

Craft CMS comes with multisite straight out the box. You can run and manage multiple sites from one Craft CMS install but share data, templates and assets across them all. Boom!

We worked on a multisite project for The Church of England which needed 20 individual sites, with different user access permissions, running on different domains—but sharing the same templates and themes. It’s a setup we’ve replicated across several of our enterprise multisite case studies, proving that you don't need clunky third-party plugins to manage complex digital networks.

Multi-lingual support

Craft CMS's native multisite is also how multi-lingual sites can be created. You can set your (for example) French website to use exactly the same templates and entries as your English site, and use the language switcher within the Control Panel to write the French content.

One-click updating via the Control Panel

Craft CMS allows admins to update Craft and any plugins through the Control Panel with a handy update button.

A database backup is automatically created before performing any updates, and will automatically roll back if the update fails for any reason, so we have no anxiety around clicking update. This hasn't been the case with other CMSes.

Craft cms one click updating via control panel

...Or update from the command line

Whilst non-major updates can be installed with one-click through the Control Panel, you might not want to do that for a variety of reasons; testing, risk of failure, clients clicking it when you don’t want them to, etc.

Luckily, Craft CMS has a solution for this too.

You can update Craft — and any plugins — through the command line and disable the ability to update them via the Control Panel with a config setting.

Run ./craft update from the command line and it’ll list all available updates for your version of Craft.

Then run ./craft update all will update everything for you and save the changes into composer.json, so everything is stored in Git.

This means you can update locally, test everything out, then deploy to production and have the updates run as part of the deployment process.

Craft cms composer

Migrating to Craft CMS 5

With older versions like Craft 3 now unsupported, upgrading to Craft 5 is essential for security, performance, and future features. As a certified partner, we have successfully migrated dozens of legacy Craft 3/4 platforms to Craft 5. For example, our work with the Cardo Group involved complex data mapping and custom plugin refactoring to ensure a zero-downtime transition.


🛠️ Running an older Craft 3 or 4 site?
Legacy versions are officially unsupported, leaving your business exposed to security risks. Let our certified team handle your database schema mapping and transition with zero downtime.

Get a Free Craft 5 Migration Estimate →


Storage for all your media assets

Assets are where you store the sites media — such as images, documents and videos.

When stored as Assets, items can be assigned to entries to populate the website content.

Like Section Entries, Assets can use Custom Fields to enhance and customise the information stored within the asset.

A video asset could have Director, Length, and Year Custom Fields assigned to it to help filter the entries on the front-end or in the Control Panel.

Assets are stored within Filesystems, each of which can even have their own user permissions; helpful if you have a set of assets that should never be deleted by click-happy admins.

Filesystems can local folders, or external storage such as an Amazon S3 or Digital Ocean Spaces.

From a user administration point of view, the Assets drag and drop functionality is easy and intuitive to use.

Craft CMS Assets

Craft CMS Assets

Assets are where you store the sites media — such as images, documents and videos.

Craft CMS Tip:

Need more storage or want to keep your assets off the server? You can connect Craft to Amazon S3 with the Pixel & Tonic Amazon S3 plugin.

Image manipulation on the fly

In addition to the built-in Image Editor, there’s also a more programmatic way to manipulate images using Image Transforms.

Instead of forcing content admins to upload images at specific dimensions, Craft CMS lets you define custom image resizing rules.

Image Transforms let you set the final image output's width and height — along with whether the image should be cropped or stretched to get to the final dimension.

You can define where the crop should start from using pre-set parameters:

  • Top-Left
  • Top-Center
  • Top-Right
  • Center-Left
  • Center-Center
  • Center-Right
  • Bottom-Left
  • Bottom-Center
  • Bottom-Right

Image Transforms allow you to set the image quality on-the-fly; helpful when trying to shave off kilobytes from images to improve page loading speed.

The Image Format setting lets you specify the image output type as either JPG, PNG or GIF.

We’ve found this immensely helpful thwarting content admins who insist on uploading high-res photos saved as PNGs!

No matter what image settings you apply, the original image will stay intact on the server — so you’ll always have that available if you need to reuse it at a different size on the site.

You can also set a maximum image upload size in the site configuration, to prevent large photos from being uploaded in the first place.

Image Transforms can be defined in the Control Panel or directly in the code. We tend to take the latter approach so that the transforms (along with Routes) can be version controlled.

Craft CMS Tip:

We love Spacecat Ninja's Imager X plugin - well worth the licence fee - which adds more image transformation options into the mix. This combined with the image service Imgix is our preferred way to transform and serve images.

Multi-environment config file

An overlooked but incredibly important and powerful feature of Craft CMS is the use of an environment file.

The environment file lets you specify things like database settings, site URL, and API keys for third-party services.

The important point here is that settings in this file will be environment-specific.

One developer’s database settings will be different from another’s, which will be different from the staging site — and should definitely be different from the production site.

Keeping these settings in an environment file eliminates the need to edit app files directly on the server, reducing the risk breakages due to human error.

Because environment files are not stored in Git (they shouldn't be, anyway!), it’s also an added security measure as your passwords aren’t saved anywhere but your own computer.

It also has the added bonus of reducing Git conflicts and developer headaches, if, for example, Alice prefers to develop on example.local, but Bob prefers example.dev.

Keep projects in sync across different environments with Project Config

One of the biggest headaches with any CMS is keeping development and production databases in sync.

Craft CMS has solved this issue perfectly by having Project Configuration files (a folder full of .yaml files), which saves the structure of the project, without saving the content.

The Project Config allows us to keep in sync:

  • Asset volumes and named image transforms
  • Category groups
  • Craft and plugin schema versions
  • Craft edition
  • Email settings
  • Fields, field groups, and all field layouts
  • Global sets (settings only, not their content)
  • GraphQL schemas, and the access settings for the public schemaMatrix block types
  • Plugin versions, editions, and settings
  • Routes defined in Settings → Routes
  • Sections and entry types
  • Sites and site groupsSystem name, time zone, and status (live/offline)
  • Tag groups
  • User settings and user groups

Essentially everything that isn't content.

The Project Config can be deployed directly when going to production. By clicking the “Sync Changes” button in the Control Panel the database is then updated according to the project config data.

This saves us so much time.

The previous option was to either tell clients to not make any changes while we develop (content freeze!) — or to manually replicate any database changes we made when adding a new feature (hassle, prone to error).

It also means the project config can be checked into Git, so Alice and Bob can both develop without having to email or Slack their database to each other.

Craft cms sync changes

Craft CMS Tip:

You can also sync project changes automatically on deployment, with the command ./craft project-config/apply or ./craft project-config/rebuild if you need to rebuild from scratch.

Logically group content with categories and tags

Categories and Tags help keep content organised.

Set up as many Category Groups as you need and then apply Categories to any element (Entries or Assets) with a Categories field.

In a similar fashion, Tag Groups can contain their own unique set of tags — which can be created on the fly from a Tags field.

Using either or both together — Categories and Tags are a powerful and logical way to group content into meaningful sets.

Users, User Groups & Registration

On installation, Craft CMS sets you up as an Admin with full permissions to do everything you’ll need to as the site creator.

If more people need access to the Control Panel, you can set up and assign them to User Groups and give users specific permissions.

Users within User Groups share the same permissions and can be updated en masse. Permissions, on the other hand, allow you to fine-tune individual users' access.

You can also decide which users can see which Globals, to avoid a client accidentally changing important settings.

Craft user permissions are extensive and incredibly flexible.

  • Access the site when the system is off
  • Access the control panel
    • Access the control panel when the system is offline
    • Perform Craft CMS and plugin updates
    • Access Plugin Name
  • View users
    • Edit users
      • Register users
      • Moderate users
      • Administrate users
      • Impersonate users
      • Assign user permissions
      • Assign users to this group
      • Assign users to Group Name
    • Delete users
  • Edit Site Name
  • View entries
    • Create entries
    • Save entries
    • Delete entries
    • View other users’ entries
      • Save other users’ entries
      • Delete other users’ entries for site
      • Delete other users’ entries
    • View other users’ drafts
      • Save other users’ drafts
      • Delete other users’ drafts
  • Edit Global Set Name
  • View categories
    • Save categories
    • Delete categories
    • View other users’ drafts
      • Save other users’ drafts
      • Delete other users’ drafts
  • View assets
    • Save assets
    • Delete assets
    • Replace files
    • Edit images
    • View assets uploaded by other users
      • Save assets uploaded by other users
      • Replace files uploaded by other users
      • Remove files uploaded by other users
      • Edit images uploaded by other users
    • Create subfolders
  • Utilities
    • Updates
    • System Report
    • PHP Info
    • System Messages
    • Asset Indexes
    • Queue Manager
    • Caches
    • Deprecation Warnings
    • Database Backup
    • Find and Replace
    • Migrations

Front-end user registration forms

Public Registration is off as default — but if required visitors can self register as Users through a front-end form.

The User Group and Permissions can be assigned on form submission —  making Craft perfect for membership sites, guest posting opportunities and member-only content.

Keep developer teams in sync using Composer

With other CMSes, plugins were a big mess of unsorted ZIP files downloaded from various unmanaged places on the internet and then uploaded to the server.

This nightmare is over with Craft CMS.

The CMS itself, any plugins you’re using, and their dependencies are all managed through Composer.

The version-controlled composer.json knows the exact version of Craft you're using, and the exact version of any plugins you're using.

All your web development team needs to do is run composer install from the command line and composer will download all the correct bits and bobs you need.

Again, no more sending ZIP files to fellow developers. Yay!

GraphQL and Headless Mode

Out the box, Craft CMS has full support and functionality in place to use Craft as a headless CMS.

Through the CMS's GraphQL area you can test queries, and create access tokens and schemas for security.

This is super useful if you're creating a project with a JAM Stack approach, as your database and content is decoupled entirely from your front end code.

We leveraged this API-first architecture when building the platform for Global Connections, integrating custom internal databases in real-time. By pairing a fast headless backend with a completely redesigned, highly intuitive user experience, we helped them achieve a 3x increase in time on site and a 10.7% reduction in bounce rate.

Craft Cloud Logo

Craft Cloud

Craft hosting by Pixel & Tonic.

Modern Craft CMS hosting: Servd & Craft Cloud

For modern, scalable hosting, we recommend specialised environments built specifically for Craft CMS, rather than generic VPS hosts. Our primary hosting choice is Servd, which provides dedicated Docker container environments, automated asset syncing, and staging-to-production workflows tailored specifically for Craft developers. We also support and recommend Craft Cloud, Pixel & Tonic's official managed serverless hosting platform, which provides instant scaling, edge caching, and zero server maintenance straight out of the box. Both options keep your site secure and highly performant.

Dev Mode for testing and debugging

When Dev Mode is enabled, Craft will react slightly differently and makes developing with the CMS even easier.

With Dev Mode on, if there’s an error in your Twig template code, Dev Mode will display a full stack trace in the browser showing you what’s gone wrong and where abouts.

Dev Mode will display PHP errors and exceptions, template syntax errors and extra logs will be created in the craft/storage/runtime/logs folder to help you work out what’s going wrong and how to fix it.

Dev Mode is on by default.

You’ll know it’s active by seeing a strip of construction tape along the top of the Control Panel.

Craft cms dev mode

Craft CMS Tip:

Dev Mode should always be turned off for production environments.

Error messages look ugly to visitors — and the full stack trace could potentially expose a vulnerability to visitors with malicious intent.

We set Dev Mode on or off automatically depending on if we're in production or not with 'devMode' => getenv('ENVIRONMENT') != 'live'. This helps us reduce human error.

Further Reading

Super helpful Yii Debug Toolbar

Craft CMS is built on the Yii PHP framework and baked into Craft is the Debug Toolbar.

By the flick of a user preference, the Debug Toolbar can be configured to appear at the bottom of the browser window of your Craft CMS site — whilst viewing the Control Panel or the front-end.

It shows statistics and information about the page you’re currently viewing — including:

  • Timeline
  • Block and macro rendering time
  • User
  • Router
  • Requests
  • Logs
  • Deprecation Errors
  • Database Queries
  • Memory Usage

You can drill down into each set of data to see more information to help debug your site.

Or use the data to streamline your page loading speed by seeing where the database queries are coming fro, and where performance bottlenecks are.

Craft cms yii tool bar

Plugin Store one-click installation

Admins can install plugins directly from the Control Panel using Craft’s built-in Plugin Store.

As of 2026 there are over 800+ plugins to enhance Craft’s functionality and integrate with 3rd party services like SEOmatic, Formie, and Blitz.

Craft CMS Tip:

Try before you buy! As long as you’re running the site on a domain Craft does not consider to be public you’re free to try plugins out before shelling out hard cash for them.

Craft is fast

Speed isn’t just a nice-to-have — it’s a ranking factor.

Google uses page load time as part of its search algorithm, and Core Web Vitals are baked into how your site is scored. A slow site frustrates users, increases bounce rates, and can cost you rankings, conversions, and revenue.

That’s where Craft CMS shines.

Unlike bloated platforms that rely on hundreds of third-party plugins or heavy page builders, Craft keeps things lean and focused. It outputs clean HTML, doesn’t load unnecessary scripts, whilst giving developers complete control over front-end performance.

From a Google PageSpeed Insights perspective, Craft sites are well-placed to perform brilliantly. We can regularly hit 90+ scores on mobile and desktop — because we build with speed in mind from the start.

Speed and performance were front and centre when we rebuilt the digital platform for Pinkmoon. By leverage-optimising Craft's native caching and image transforms, we successfully reduced their bounce rate by 10.2% and boosted user engagement by 5.8%.

Need caching? Craft has it. Need image optimisation? It’s built-in. Want to lazy load assets, defer scripts, and reduce server requests? No problem. Craft doesn’t get in the way — it enables best practice.

And because it’s not doing anything you didn’t ask it to, there’s less technical debt. Less bloat. Less faff.

For you, that means:

    •    Faster websites that load in under 2 seconds.
    •    Better SEO performance, especially on mobile.
    •    Happier users, who stay longer and convert more.
    •    Lower bounce rates, higher engagement, better ROI.

Craft is brilliant for SEO

The fact that Moz use Craft CMS for their website should tell you pretty much everything you need to know about how good Craft is for search engine optimisation.

Out the box, Craft assumes nothing — even when it comes to how you roll your SEO.

Because you mark up template HTML you have complete control over the on-page SEO.

There are typically two approaches you can take: 1) Install a plugin or 2) create your own search engine optimisation custom fields.

We use SEOmatic, which is one of the most popular paid plugins in the Craft CMS Plugin Store. It's very feature rich and does the leg work for you in terms of creating the core set of search engine optimisation fields you’ll need, including structured data. We’ve used SEOmatic several times and have been impressed with the depth of options available.

Thanks to the default Asset fields it’s easy to output image Alt and Title Tags (another SEO win).

Routes should get another mention here too — as adding keywords to your sites URLs is simple with Craft and is just one of the many (alleged!) Google ranking factors.

Craft CMS is secure 🔒

Simply put — Pixel & Tonic take security seriously, and the platform has an exceptional security track record. In Craft 5, Pixel & Tonic introduced native support for Passkeys (WebAuthn), enabling passwordless, biometric logins (using Touch ID or Face ID) for admin panels. As a security-focused agency, we actively configure and recommend Passkeys/MFA for all client admin panels to prevent credential stuffing and brute-force attacks.

Off the back of a detailed StackExchange answer about Craft CMS security, the team wrote a Security Q&A post which follows on and expands from Brad Bell’s (Pixel & Tonic CTO) StackExchange post.

Further Reading:

Also see the Securing Craft Guide: a guide to making your Craft installation secure.

A community of Craft CMS developers

The growing Craft CMS community is one of the most talented groups of developers we’ve ever come across.

There’s a regularly updated list on the Craft CMS Awesome page where Craft peeps go.

Some of the most frequented Craft CMS developer community hangouts are:

Note: Craft are no longer on Twitter / X —  but there is now an officially unofficial Craft CMS parody account.

Craft CMS Conference:

Pixel & Tonic put on a Craft CMS developer conference each year called Dot All Conference.

Host Craft CMS everywhere

With the increasing popularity of Craft CMS it's inevitable that hosting companies have started to offer Craft CMS specific server setups - including:

There are also guides for setting up Craft on:

We’re currently using DigitalOcean servers — which have been fast and reliable and easily meet the Craft server requirements.

How much does Craft CMS cost?

Craft falls into 3 pricing plans — all depending on your needs.

Solo — FREE

For when you’re building a website for you or a friend.

Includes:

  • One user account — The Solo edition is limited to a single admin account.
  • Ultra-flexible content modelling — Define custom content types, fields, and relations needed to perfectly contain your unique content requirements.
  • Multi-site + localisation — Serve multiple related/localised sites from a single Craft installation.
  • Advanced previewing — Preview your content from multiple targets, including single-page applications.
  • Twig + GraphQL — Define custom front-end templates, or use Craft headlessly with the auto-generated GraphQL API.

Team — $279 Per Project

For when you're building something for a small team.

Includes everything in Solo, plus:

  • Up to five user accounts — Create up to five user accounts (including admin accounts).
  • One user group — All accounts belong to a “Team” user group with customisable permissions for non-admins.
  • Developer support — Get developer-to-developer support right from the Craft core development team.

Pro — $399 Per Project

For when you’re building something professionally for a business or organisation.

Includes everything in Team, plus:

  • Unlimited user accounts — Create unlimited user accounts with per-user permissions and user group assignments.
  • Unlimited user groups — Create multiple user groups with custom permissions.
  • Branded control panel — Personalise the control panel for your brand.
  • Branded communication — Customise system email messages and provide a custom email template.

Enterprise — Get in touch with Pixel & Tonic

There's also an Enterprise version for when the project has specific licensing requirements. This includes everything in Pro, plus: 

  • First-party SAML SSO
  • Custom license agreement
  • Procurement support
  • Dedicated premium support

Just like plugins, these versions of Craft can be tried before buying as long as your not developing on what Craft considers to be a public URL — it will let you test on URLs such as localhost, 127.0.0.1, mysite.test, etc.

Upgrading Craft from one version to another is done in the Control Panel. It’s a simple process — click to upgrade and then enter your (or your clients') payment details.

There’s also the option to create a Craft Console account which connects to a separate website where you can view your order history and manage your Craft and plugin licences.

Try the Craft CMS demo

If downloading and installing Craft locally seems like too much effort to test it out — there’s a Craft CMS demo you can take for a spin.

Enter your name and email and Pixel & Tonic will automatically spin up a full-featured installation for you to try out.

craftcms.com/demo

Limitations, downfalls and criticism of Craft CMS

There’s a lot to love about Craft — but it does come with (and it would only be fair to mention) some caveats.

Craft is not free

This is usually the first reservation developers have about trying Craft CMS.

In a world of open-source CMSes it does seem a tough pill to swallow — especially if you’re a lone Craft CMS freelancer.

But for the amount of functionality and features — and if you’re pricing projects correctly — IMHO the fee is nominal.

You can think of the licence fee as a guarantee that Craft CMS will continue to be actively developed by a first-class team of developers and a passionate community.

PS: If you think $399 is expensive for a content management system you should check out SiteCore's pricing:

Craft cms sitecore price

It can be a steep learning curve for developers

Getting your head around Craft’s Section and Entry Types can be daunting. It’s a different way to approach content than many other CMSes.

Due to Craft’s flexibility, there are similar ways to achieve similar outcomes  —  but finding the best way is something only time and experience (and Googling) will tell you.

Developers coming from CMSes where you can just paste in PHP wherever you feel like it may struggle with Craft CMS's rigid structure for adding modules, but it's for the greater good of code quality and maintainability.

You could be effectively learning Craft and Twig for the first time at the same time.

The documentation can be confusing — especially when you’re unsure if it’s a Craft or a Twig issue you’re searching for — though the docs are definitely improving.

It has a smaller developer community than other CMSes

As of 2026, the Craft CMS StackExchange community has over 14,000 active users — which is dwarfed compared to the 220,000 users in the WordPress StackExchange group.

We’ve had clients specifically request that we do not use Craft.

Being the only Craft CMS developers they knew — they were fearful of not being able to find replacement developers if Honcho fell off the face of the internet.

I did point them towards the StackExchange and Slack groups to give them confidence in the growing communities of Craft CMS devs — but it didn’t help swing the deal.

For reference, the top CMS based StackExchange’s are:

  1. WordPress — 220,000 users
  2. Drupal — 74,000 users
  3. Magento — 97,000 users
  4. Craft CMS — 14,000 users
  5. Joomla — 13,000 users
  6. SiteCore — 15,000 users
  7. ExpressionEngine — 10,000 users

Not bad considering Joomla has been going since 2005.

Lego vs Craft CMS

Just for context (and the fact that I love Lego) — ‘Bricks’ the question and answer site for LEGO and building block enthusiasts has 24,000 users.

The Craft community may be comparatively small — but as mentioned earlier in the article — it is mighty.

Members of the StackExchange group answer 90% of all questions posted there, compared to 70% on the WordPress StackExchange. (Source: StackExchange)

The official Discord community has over 9,000 active members who support each other daily. (Source: Discord)

Lack of Plugins

The plugin ecosystem is infinitely better now than it was before Craft Version 3 with the addition of the Official Plugin Store.

But with ‘only’ 800+ plugins available (as of 2026) it does look like a ghost town in comparison to the 59,000+ plugins available to WordPress users.

Two reasons for this could be:

  1. Craft does more out of the box than WordPress, so fewer are needed.
  2. A more developer-based community may just write their own custom modules without publishing them.
  3. That same developer community could mean people contribute to open source plugins - rather than write their own - so you don't end up with 10 plugins that do the same thing!

Lack of themes

Craft doesn’t come with themes in the same way other CMSes do.

There’s no theme installer or theme switcher.

Craft is very much geared towards developers creating their own bespoke front-end templates — which harks back to Craft’s philosophy:

For craftsmen who wouldn’t touch an off-the-shelf theme with a ten-foot stick.

How does Craft compare to WordPress?

WordPress powers a huge share of the web, and for a simple blog it does the job. But the “is there a plugin for that?” model is exactly what we moved away from: every plugin is another dependency to maintain, another security surface, and another thing standing between you and the markup you actually want. Craft assumes nothing about your content or your design — you build precisely what the brief needs, on lean code you control.

We’ve weighed both platforms up properly, feature by feature, in our dedicated guide. Read the full Craft CMS vs WordPress comparison →

Key takeaways

  • Craft CMS is built for flexibility. It makes no assumptions about your content or design, giving developers complete control and content editors an intuitive experience.
  • The Control Panel is genuinely enjoyable to use. It’s fast, responsive, beautifully designed, and packed with thoughtful features — including accessibility support and live preview.
  • Performance is a priority. Craft outputs clean, lean code, supports caching and image optimisation, and plays nicely with Google PageSpeed and Core Web Vitals.
  • Built-in features reduce plugin reliance. Unlike WordPress, you won’t need to bolt on endless plugins for essentials — many advanced features like custom fields, image transforms, user permissions, and content modelling are native.
  • Security is rock solid. Pixel & Tonic has a strong security track record, and Craft’s developer-first architecture avoids many common vulnerabilities.
  • Craft Cloud is a modern hosting option. It’s a fully managed, optimised environment maintained by the creators of Craft — ideal for teams who want zero maintenance and top-tier performance.
  • It’s trusted by major brands. Netflix, Adidas, Atlassian, Sonos, Salesforce, and Reddit all use Craft — proving it scales for enterprise but stays friendly for smaller teams.
  • Yes, it has a learning curve. But once you understand the content model and templating system, the development workflow is powerful, consistent, and scalable.
  • It’s not free — but it’s worth it. With so much built in and less need for paid plugins, Craft often ends up cheaper (and better) in the long run.

In conclusion...

If a client is just looking to clothe the site in a generic theme for a run-of-the-mill blog — then there’s absolutely no reason not to use WordPress (or other CMSes).

But if they need something more bespoke — more flexible, with custom web design — and an admin user experience tailored to the way you need to administer content — then you owe it to your clients and their business to try Craft CMS.

🎤🤚

 


FAQs about Craft CMS

Craft CMS is a flexible, developer-first content management system that lets you build bespoke websites without being boxed in by themes or rigid templates. It gives developers complete control over the front-end, while keeping the admin experience clean and intuitive for content editors.

Very. Security is one of the reasons we prefer Craft over other CMSes. Pixel & Tonic take it seriously — regular updates, proper codebase architecture, and no major reported exploits. Unlike WordPress, you’re not juggling a bunch of plugins from different developers, each with their own vulnerabilities.

Craft comes in a few flavours:
    •    Solo — Free. Ideal for personal sites or testing.
    •    Team — $279 per project, includes up to 5 user accounts.
    •    Pro — $399 per project, with unlimited users and advanced permissions.

Both Team and Pro include one year of updates, and you can renew for $99/year after that.

Bonus: you don’t need to pay until the site goes live.

Sort of. Craft CMS is what’s called “commercial open source”. That means the source code is publicly available (so you can see what it’s doing under the hood), but it’s professionally maintained by Pixel & Tonic. You can build for free with the Solo edition, and just pay for advanced features when you need them.

Fair question. Craft is big in the developer world, but it’s not as well-known as WordPress or Webflow. That’s mostly because it’s not aimed at DIY users — it’s a serious tool for serious websites. But if you care about performance, security and flexibility, it’s worth a look.
 

Only if you want updates — which we definitely recommend. You pay a one-time licence fee (Team or Pro), which includes one year of updates. After that, you can keep using Craft forever — no forced renewals. If you want new features and security patches, it’s $99/year to renew.

Definitely. Craft CMS is built to scale — we’ve used it on sites with thousands of pages, multi-language content, and complex relationships between entries. Features like entry types, Matrix fields, and custom routing give you the freedom to model content however you like. And because performance isn’t bogged down by legacy code, it runs fast.

Yes — we often build flexible content blocks using Matrix fields or Craft’s new content builder tools. That means your marketing team can spin up custom landing pages without needing a developer every time.

Yes, there's SEOMatic — but unlike WordPress, Craft doesn’t rely on plugins for everything. Many features (like redirects, forms, and image transforms) are built in. When we do use plugins, we choose high-quality ones from trusted developers.

Craft CMS powers websites for all sorts — from small businesses to global giants. Big names like Netflix, IKEA, Atlassian, Sonos, and even the W3C use Craft. But it’s not just for the big leagues — we’ve used it for startups, charities, schools, and everything in between. If you need a custom website with no fluff, Craft’s a solid choice.

It can — and we make sure it does. Craft gives you full control of your markup, so accessibility is up to how the site is built. We follow WCAG guidelines and test for screen readers, keyboard navigation, colour contrast and more

Definitely. We include CMS training as part of our handover. Craft is intuitive and easy to use — but we’re here if you need a refresher later.

We offer support packages for bug fixes, CMS updates, hosting queries, or new feature requests. Craft CMS itself has excellent documentation, and the developer community (especially Discord) is active and helpful.

It can be. Craft doesn’t collect personal data by default. GDPR compliance depends on how your site is built and what tools you use (like cookies, forms, analytics). We can help you make sure everything’s buttoned up legally.

Very. Craft is professionally maintained and regularly audited. Unlike open marketplaces with thousands of questionable plugins (like WordPress), the Craft ecosystem is tightly curated. No major security breaches have ever been reported.

Yes. We’ve migrated sites from WordPress, Drupal, Squarespace, Webflow, Joomla, and more. We handle all the tricky bits — content, redirects, forms, tracking — and make sure nothing breaks.

It depends on the size and complexity, but we typically deliver most Craft CMS sites in 6–12 weeks. If you’re migrating from another CMS, we’ll include content mapping and redirects as part of the plan.

Yes! Craft’s Live Preview feature shows you exactly how your page will look as you type — on desktop, tablet, or mobile.

Yes. Whether you’re a startup or enterprise, Craft CMS can handle thousands of pages, users, and complex content relationships without breaking a sweat.

Yes. You can schedule content to publish at a specific time, and in Craft Pro, you can set up editorial workflows, permissions, and even live preview changes before publishing.

Minimal. Updates can be managed via the Control Panel or automated via deployment tools. We offer ongoing support, but unlike other CMSes, you won’t be fighting plugin conflicts or theme issues every time you update.

Yes. Craft supports multisite and multi-language content out of the box. That means you can run multiple websites from a single login, or translate your site into multiple languages without a plugin.

Yes — very. Craft is lean and efficient. It doesn’t load unnecessary plugins or themes. We optimise every Craft site we build for speed, and Craft’s built-in caching keeps things quick across the board. Or for special caching cases, we use Blitz.

Absolutely. You (or your team) have complete control over every meta tag, heading, URL, redirect, and image alt tag. And with plugins like SEOmatic, you get schema markup, Open Graph tags, sitemaps, and robots.txt files sorted automatically.

Moz, the Internet's leading SEO tool, chose to use Craft CMS.

Yes. Craft can connect to CRMs like HubSpot, Salesforce, and Pipedrive — either via plugins or custom integrations. It also works well with marketing automation tools, email platforms, analytics, and more.

Not at all. Craft CMS is widely used by agencies and freelancers around the world. Your site is built on open standards, so any competent Craft developer can pick it up. You’re never stuck with us (but we hope you’ll stay).

Yes. The Control Panel is clean, intuitive, and built with content editors in mind. You can create, edit, schedule, and preview content without touching code — and it looks just as good on mobile as it does on desktop.

Craft CMS is more secure, more flexible, and less reliant on plugins. Unlike WordPress, it doesn’t assume what your site should look like or how your content should work. That means no bloated themes or clunky workarounds — just clean, purposeful websites.

You do, at least to get started. Craft CMS is built for developers — it’s not a drag-and-drop site builder. But once your site is built, the admin interface is incredibly easy for editors and marketers to use. Think of it as: developer to build it, anyone can update it.

Yes — Craft has excellent support for headless setups. It includes a built-in GraphQL API, so you can use it as a back-end for React, Vue, Svelte, or whatever JAMstack flavour you’re into. You can also use it in hybrid mode — traditional templates for most of the site, and API-driven components where needed.

Craft Cloud is a new hosting platform from Pixel & Tonic. It’s a first-party service that runs your Craft CMS site on scalable infrastructure with a built-in CDN, static caching, and image transforms — all managed for you. It simplifies DevOps and includes your Craft licence in the subscription. Ideal if you want hosting sorted with minimal fuss.

Yes — it’s ideal for organisations that need flexibility, security, and control over their content. We’ve built Craft sites for schools, charities and public services where user experience and accessibility matter most.

Craft 5 brought a cleaner, faster Control Panel, improved accessibility, and better content modelling via CKEditor. There’s also a new “Team” licence, perfect for small teams who don’t need the full Pro feature set. Behind the scenes, it’s laying the groundwork for Craft 6, which will move to Laravel under the hood.

No — and that’s kind of the point. Craft CMS isn’t about off-the-shelf themes. It’s built for custom websites, designed from the ground up. That’s why it’s the CMS of choice for agencies (like us) who care about delivering unique, high-performing sites — not cookie-cutter templates.

Yep — there’s an official plugin called Craft Commerce built by the same team behind Craft. It’s powerful, flexible, and developer-friendly. Great if you need something tailored, but not ideal if you just want a Shopify-style plug-and-play solution. Think of it more like a custom e-commerce framework.

If you’re a developer, you’ll love it. Twig templating is easy to pick up, and once you get the hang of Craft’s content model (sections, entry types, fields), you’ll fly. It might take a little adjustment if you’re coming from WordPress, but the extra flexibility is worth it. For content editors, the Control Panel is intuitive and doesn’t need much training.

Unlikely — but even if it did, your content is safe. Craft stores everything in a standard SQL database and outputs normal HTML. There’s no vendor lock-in, no weird proprietary formats. You own your data, and it’s easy to migrate if needed.

Matt Square
Article by

Matt has been designing for the web since 1999. He loves mountain biking, watching Formula 1 and making music.

Ben blue

Reviewed by

Ben Hartley