Craft CMS Developer Benchmark Results 2024

the_results_are_in.

🙅
👍
🎉
🤷‍♂️
🙈
😭

We're thrilled to have conducted the Craft Benchmark survey again, gathering insights from Craft CMS professionals in 26 countries. Our participation represents industry experts, offering international diversity and depth.

Our goals for the Craft CMS Benchmark:

  • Provide valuable insights into the Craft CMS developer community
  • Offer practical tips for optimizing Craft CMS usage
  • Equip professionals with compelling data to advocate for Craft CMS with clients

We created this because:

  • Giving back to the Craft CMS community, and we're part of it.
  • Sharing valuable insights
  • Continuously improving our craft – and hope you do to!

And just to clarify – we have no association with Craft CMS or Pixel & Tonic.

Let's go!

Part 1

Who's working with Craft CMS

This section explores who the Craft CMS community is made up of, how they work, and what makes them tick.

Whos working with Craft CMS 2

What describes you best?

Craft CMS attracts a diverse audience, from agency teams to freelancers. This year’s benchmark highlights its strong foothold in agencies while showcasing its adaptability for solo professionals.

I work at an agency

90 resp.
43.2%

I'm a freelancer

55 resp.
26.4%

I run an agency

50 resp.
24%

I work for a non-agency

11 resp.
5.2%

Other

2 resp.
0.9%

What size is your agency?

Very similar to last year, most people are in small companies.

1

1 resp.
0.7%

2-5

41 resp.
29.2%

6-10

31 resp.
22.1%

11-20

33 resp.
23.5%

21-30

10 resp.
7.1%

31-40

5 resp.
3.5%

41-50

6 resp.
4.2%

50-100

6 resp.
4.2%

100+

6 resp.
4.2%

Other

1 resp.
0.7%

What is your job?

Developer

181 resp.
54.8%

CEO/Manager

69 resp.
20.9%

Designer

43 resp.
13%

Content author

14 resp.
4.2%

Tech Lead

5 resp.
1.5%

Other

18 resp.
5.4%

How much of your job is development (coding)?

100% development

34 resp.
16.3%

Mostly development

140 resp.
67.3%

A bit of development

27 resp.
12.9%

No development

7 resp.
3.3%

How many years of professional coding experience do you have?

Craft CMS developers tend to skew towards developers with more experience, rather than those just starting out.

I don't have any professional coding experience

0 resp.
0%

1-2 years

4 resp.
2%

3-5 years

15 resp.
7.5%

6-10 years

25 resp.
12.5%

11-16 years

52 resp.
26%

16+ years

104 resp.
52%

How long have you been using Craft CMS?

Even more Brandon Kelly's this time...

Less than 1 year

1 resp.
0.4%

1 year

3 resp.
1.4%

2 years

7 resp.
3.3%

3 years

17 resp.
8.2%

4 years

14 resp.
6.7%

5 years

26 resp.
12.5%

6 years

26 resp.
12.5%

7 years

13 resp.
6.2%

8 years

36 resp.
17.3%

9 years

15 resp.
7.2%

10+ years – I'm basically Brandon Kelly

49 resp.
23.6%

Are you (or is your business) a Craft CMS Partner?

Another year of growth for Craft CMS Partnerships, growing a massive 15% in 2024.

Thumbs Up
115 resp.

55.8%%

Yes

Thumbs Down
89 resp.

43%%

Nope

How important is being a Craft CMS Partner for your business?

6 /10

Not important at all Extremely important

At an average rating of 6.3/10, the importance of being a Craft CMS partner is unclear. We also asked what would make being a Craft CMS Partner more useful. The responses broadly fell into the following categories.

Lead Generation

Craft CMS partners want more leads! Partner directory is hidden, lacks regional details, and offers no way to track results. They suggest improvements like better placement, specific locations, and lead tracking.

Communication and networking

Craft CMS partners want better communication from Pixel & Tonic. They want regular newsletters, events, and meetings to stay informed and collaborate.

Discounts and Incentives

A recurring theme was the need for more tangible benefits for partners. Respondents suggested discounts on DotAll tickets, license fees, Craft Cloud hosting, and the plugin store. Exclusive partner events were also highlighted as a way to enhance engagement and demonstrate value.

Quality Assurance and Services Definition

Several respondents noted that quality assurance would make the partnership feel more meaningful. Suggestions included offering a dedicated space for partners to showcase case studies and define their services. Elevated support levels for verified partners were also mentioned as a way to provide added value.

Community and Marketing Improvements

Many respondents felt the partner program needs better visibility among potential clients. They proposed first-party marketing materials and resources to help sell Craft CMS against competitors. Opportunities to feature partners in Craft CMS mailings and improved promotion of the partner program itself were also suggested.

Additional Suggestions

Respondents shared several ideas to enhance the partner program, including:

  • Standardisation in coding practices across the Craft CMS ecosystem.
  • Improved matching with ideal client types for projects.
  • Opportunities for partners to provide feedback and influence the development of Craft CMS.

In the last 12 months, how many new Craft CMS projects have you worked on in total?

0

7 resp.
3.3%

1-2

28 resp.
13.4%

3-5

67 resp.
32.2%

5-10

68 resp.
32.6%

11-20

31 resp.
14.9%

21-50

5 resp.
2.4%

50+

2 resp.
0.9%

What percentage of your new projects were built with Craft CMS?

It's now almost 70% of respondents' sites were almost or were exclusively built with Craft CMS.

100% 💪

64 resp.
31.8%

Almost 100%

76 resp.
37.8%

Around 75%

27 resp.
13.4%

Around 50%

21 resp.
10.4%

Around 25%

5 resp.
2.4%

Less than 25%

8 resp.
3.9%

In the last 12 months, what types of websites have you built with Craft CMS?

Marketing sites

173 resp.
28.4%

Nonprofit, Government, and Public Service Sites

102 resp.
16.7%

Content and Editorial Platforms

91 resp.
14.9%

eCommerce Sites

87 resp.
14.2%

Headless / API Systems

66 resp.
10.8%

Member Sites

65 resp.
10.6%

Other

25 resp.
4.1%

In the last 12 months, what other CMSs have you developed with?

Surprise surprise, WordPress is still number 1, whereas no-code website builders have also proved popular. Squarespace has jumped to 3rd with 15.3% of you using it, and it's a first-time entry for Lavavel Nova.

Wordpress
68 resp.

49.6%%

Wordpress

Shopify
32 resp.

23.4%%

Shopify

Squarespace
21 resp.

15.3%

Squarespace

Kirby 2x
14 resp.

10.2%%

Kirby

Expression Engine
13 resp.

9.5%%

ExpressionEngine

Statamic
13 resp.

9.5%%

Statamic

Webflow 2x
12 resp.

8.8%%

Webflow

Laravel nova
10 resp.

7.3%%

Laravel Nova

What CMS is your agency / company / personal website built on?

Craft has increased since last year, and Expression Engine has been knocked out of the top 4 by Eleventy.

RIP Expression Engine 🪦

Craft CMS
151 resp.

73.7%%

Craft CMS... duh!

No CMS
26 resp.

12.7%%

No CMS

Wordpress
4 resp.

2%%

WordPress

Eleventy
3 resp.

1.5%%

Eleventy

What kind of projects would you not consider using Craft CMS for?

This section explores the types of projects where respondents felt Craft CMS might not be the ideal choice. Here are the main insights from the feedback:

⚙️ Very technical or bespoke applications

Craft CMS may not be the best fit for projects requiring substantial backend customisation, intricate business logic, or highly specific data structures. Frameworks like Laravel or Yii are often preferred for these use cases due to their flexibility and performance for custom applications.

🛍 Complex eCommerce projects

While Craft Commerce is powerful, some respondents feel specialised platforms like Shopify or BigCommerce are better suited for highly complex or high-traffic eCommerce sites, especially when robust integrations or scalability are required.

📈 Enterprise and large-scale projects

Projects like university websites or enterprise applications that require granular editorial workflows, advanced permissions, or multi-tenancy can become challenging with Craft CMS's current architecture. Alternatives like Drupal or Contentful might be better suited for handling these demands.

🙂 Simple or static projects

For tiny, one-page websites or short-term campaign sites, Craft CMS may feel like overkill. Static site generators like Astro or Hugo provide a more efficient approach, offering lightweight and cost-effective solutions.

💸 Low-budget projects

Craft's headless capabilities are functional, but some respondents find alternatives like Contentful or Strapi more intuitive for headless-only setups, especially for highly interactive or stylised websites. Additionally, JAMstack tools like Next.js integrate seamlessly with headless CMSs for a dynamic frontend experience.

👔 Custom software and applications

Bespoke software solutions like CRMs, admin systems, or SaaS platforms often demand a framework-first approach instead of a CMS. Tools like Laravel or Ruby on Rails offer the flexibility needed for these custom-built solutions.

In the last 12 months, what versions of Craft CMS have you worked with?

We've almost lost Craft CMS 1, and unsurprisingly Craft 5 is up from 7.5% last year and has been truly adopted.

Craft CMS 1

1 resp.
0.1%

Craft CMS 2

30 resp.
5.2%

Craft CMS 3

141 resp.
24.8%

Craft CMS 4

194 resp.
34.2%

Craft CMS 5

201 resp.
35.4%

In the last 12 months, what Craft CMS major version upgrades have you done?

Let's all pause for a 1-minute silence for the developers who had to upgrade Craft from 2 to 5.🫡

Craft CMS 4 to 5

161 resp.
38%

Craft CMS 3 to 4

132 resp.
31.2%

Craft CMS 3 to 5

87 resp.
20.5%

Craft CMS 2 to 4

17 resp.
4%

Craft CMS 2 to 3

13 resp.
3%

Craft CMS 2 to 5

13 resp.
3%

How smoothly did the upgrade from Craft CMS 4 to 5 go?

You can see a more detailed overview of the issues people encountered below.

7 /10

👎 It was horrible It was lovely 👍

We asked how this process could have been better - here are the main thoughts:

Auto-merge feature

The auto-merge feature for fields and entry types arrived too late, causing significant manual de-duplication work during upgrades.

Field duplication

Field duplication and entry type renaming were noted as particularly challenging for sites with many Matrix or SuperTable subfields.

Automation tools

More automation tools for merging fields and managing content migration were requested.

Documentation

Respondents emphasised the need for better upgrade documentation, particularly for handling complex scenarios like plugin migration and database collation changes.

Error reporting

Improved error reporting and more detailed examples in the official docs would make troubleshooting easier.

Migration challenges

Plugin issues were a recurring theme. Many users experienced migration challenges or delays due to plugins not being compatible with Craft 5.

Retired plugins

Retired plugins like Typed Link Field and Super Table caused difficulties for sites reliant on their functionality.

CLI commands

CLI commands and tools for content migration and debugging were seen as arriving too late.

Orphaned plugins

Better handling of orphaned plugins and content left from deprecated features was requested.

Data loss

Content migration between fields was flagged as a significant challenge, with some respondents experiencing data loss during upgrades.

Matrix block entrification

Matrix block entrification doubled the field count for some sites, making content management more complex and time-consuming.

Paradigm shift

Transitioning from Craft 4 to 5 required rethinking best practices for fields and entries, which some described as a difficult paradigm shift.

In the last 12 months, what was the average size of your Craft projects, in terms of the number of entries?

This was a commonly requested question from last year's feedback. We hope the information is interesting!

Tens of entries

31 resp.
15.1%

Hundreds of entries

108 resp.
52.6%

Thousands of entries

54 resp.
26.3%

Tens of thousands of entries

11 resp.
5.3%

Other

1 resp.
0.4%

A billion gazillion

0 resp.
0%

In the last 12 months, what was the average size of your Craft projects, in terms of number of entries?

Tens of entries

6 resp.
2.9%

Hundreds of entries

50 resp.
24.2%

Thousands of entries

86 resp.
41.7%

Tens of thousands of entries

61 resp.
29.6%

Other

3 resp.
1.4%

Part 2

Technology

This section explores the various ways developers use Craft CMS, covering how they kick off a new project, technology they use, and various other decisions.

Part 2 Divider

Which operating system do you do your Craft CMS development on?

Apple Mac still leading the way, not much change from 2022 or 2023.

Mac
174 resp.

85.7%%

Mac

Windows
31 resp.

15.3%%

Windows

Linux
17 resp.

8.4%%

Linux

Other
1 resp.

0.5%%

Other

WSL

What browser(s) do you primarily develop Craft CMS websites in?

Most developers use Chrome, no change from last year. Arc is now up there with knocking Opera out of the top 8. Polypane is also mentioned but didn't make the top 8.

Chrome
138 resp.

66.7%%

Chrome

Firefox
79 resp.

38.2%%

Firefox

Safari
52 resp.

25.1%%

Safari

Arc browser logo svg
26 resp.

12.6%%

Arc

Brave
24 resp.

11.6%%

Brave

Edge
13 resp.

6.3%%

Edge

Vivaldi
5 resp.

2.4%%

Vivaldi

Other
6 resp.

2.4%%

Other

What IDE / code editor do you use for Craft CMS development?

VSCode and PHP Storm remain the most popular choices among developers, Nova increasing it's coverage by a little from last year.

VS Code
115 resp.

55.8%%

Visual Studio Code

Php Storm
84 resp.

40.8%%

PHPStorm

Sublime
19 resp.

9.2%%

Sublime Text

Nova 2x
17 resp.

8.3%%

Nova

What local environment software do you use for developing Craft CMS projects?

DDEV is now well established as a top choice at almost 78.5% of the vote, + 13.9% from last year.

We’ve still got 1.5% of users on Nitro, and docker is up 1.3% from last year.

Ddev 2x
161 resp.

78.5%

DDEV

Dockr 2x
54 resp.

26.3%

Docker

Mamp logo icon 247786
23 resp.

11.2%

MAMP / WAMP / XAMP

What software do you use for working with databases on Craft CMS projects?

TablePlus is still growing in popularity, grabbing some usage from Sequel Ace for a second year in a row.

Table Plus
80 resp.

39.2%%

TablePlus

Sequel Ace
62 resp.

30.4%%

Sequel Ace

PHP my admin 2x
55 resp.

27%%

PHPMyAdmin

Do you use a Craft CMS 'boilerplate' for starting new projects?

Yes – I use my own

139 resp.
66.8%

No – I start from scratch each time

60 resp.
28.8%

Yes – I clone someones else's

9 resp.
4.3%

What database do you use for Craft CMS projects?

PostgreSQL adoption is still slow, but it's grown a little (+4.3%) since last year. MariaDB is down a smidge, possibly because Craft 5 dropped support for it.

My SQL
171 resp.

82.2%%

MySQL

Maria DB
89 resp.

42.8%%

MariaDB

Postgre SQL
29 resp.

13.9%%

PostgreSQL

Where do you define custom routes?

In config/routes.php

120 resp.
43.1%

In Admin → Settings → Routes

73 resp.
26.2%

In a custom module

54 resp.
19.4%

I don't

26 resp.
9.3%

Other

5 resp.
1.7%

Where do you define image transforms?

In the templates

117 resp.
39.3%

In Settings → Assets → Image Transforms

86 resp.
28.9%

I use a plugin

59 resp.
19.8%

In a configuration file

31 resp.
10.4%

GraphQL

4 resp.
1.3%

How do you optimise and compress your images?

Using Craft's native transformer

115 resp.
55.2%

Using a plugin

56 resp.
26.9%

Using an API / CDN service

24 resp.
11.5%

Using manual software

4 resp.
1.9%

I don't

2 resp.
0.9%

Other

7 resp.
3.3%

What service do you use for image optimisation and compression?

Imgix is a very popular service among Craft CMS developers who use third parties. Second is the mighty Cloudflare and then third in line is Servd’s image optimisation service.

Imager X
60.9%

Imager X

Cloudflare
30.4%

Cloudflare Images

Servd
21.7%

Servd

What plugin do you use for image optimisation and compression?

The two titans of image transformation are Imager X (33 mentions) and ImageOptimize (22 mentions), with almost no other plugins being mentioned.

Imager X

33 resp.
49.2%

ImageOptimize

22 resp.
32.8%

Image Resizer

9 resp.
13.4%

Other

3 resp.
4.4%

Do you implement Eager-Loading in your templates?

Around 86% of developers are using full or partial eager loading in their templates, with only 1.4% unsure what it is—down from last year 🥳.

If you haven’t already, we recommend exploring the official documentation on eager loading. It’s a powerful technique to optimise database queries and boost your website's performance.

Yes – Some things get eager-loaded

104 resp.
50%

Yes – Everything gets eager-loaded

75 resp.
36%

No – But I know what it is

26 resp.
12.5%

No – I don't know what that is 🤔

3 resp.
1.4%

How do you structure your Section Types (Singles, Channels and Structures)?

Every content type has its own Section

157 resp.
76.5%

Everything is in one Structure with different Entry Types

17 resp.
8.2%

Other

31 resp.
15.1%

What forms of caching do you use to improve the performance of the Craft CMS sites you build?

There are many tools available to enhance site performance, often by reducing PHP processing and database queries. These range from native Craft features and plugins to server-level optimisations.

Popular suggestions from the 'other' category include static site generation with tools like Next.js and Netlify, server-level caching (e.g., Litespeed and SiteGround), and Craft CMS-specific methods such as native file caching and GraphQL caching for headless setups. Custom solutions like Redis layers and bespoke plugins, alongside Edge caching via Cloudflare, further streamline performance by reducing server load and query demands.


Craft CMS's native cache tags

135 resp.
33.9%

Static page caching using Blitz

101 resp.
25.3%

Edge caching using a CDN such as Cloudflare, CloudFront, etc.

79 resp.
19.8%

Static page caching using FastC­GI, Var­nish, etc.

28 resp.
7%

Static page caching using Servd

26 resp.
6.5%

I don't use caching

18 resp.
4.5%

Other

11 resp.
2.7%

How do you update Craft CMS?

From the Terminal

162 resp.
78.2%

From the Control Panel

44 resp.
21.2%

I don't update Craft CMS

1 resp.
0.4%

Do you (usually) allow config admin changes on production

The Project Config is most effective when clients are restricted from making changes directly on production, which aligns closely with permissions management. This trend highlights a growing awareness of the benefits of stricter configuration control for maintaining stable and reliable deployments.

No

180 resp.
86.9%

Yes

26 resp.
12.5%

I don't know what it is 🤔

1 resp.
0.4%

In the last 12 months, what kind of Javascript have you been writing?

The mix of vanilla JavaScript and frameworks reflects a pragmatic approach: vanilla is ideal for lightweight tasks, while frameworks provide structure for complex projects. Developers combine both to balance simplicity and functionality based on project needs.

Mostly vanilla with some framework sprinkle

77 resp.
37.1%

Mostly framework with a bit of vanilla

60 resp.
28.9%

100% vanilla🍦

45 resp.
21.7%

100% framework

13 resp.
6.2%

I don't write Javascript

8 resp.
3.8%

Other

4 resp.
1.9%

In the last 12 months, what Javascript Libraries/Frameworks/Tools have you typically used with Craft CMS?

The results show a diverse range of JavaScript tools used with Craft CMS, with Alpine (15.1%) and Sprig (15.9%) leading, followed by significant use of vanilla JavaScript (14.2%), Vue.js (13.8%), and jQuery (10.6%), reflecting a mix of modern and traditional approaches tailored to project needs.

Drowning in frameworks 🌊

Alpine

77 resp.
15.1%

Sprig

81 resp.
15.9%

None – Vanilla, baby🍦

72 resp.
14.2%

Vue.js

70 resp.
13.8%

jQuery

54 resp.
10.6%

Typescript

46 resp.
9%

htmx

38 resp.
7.4%

React

29 resp.
5.7%

Next.js

21 resp.
4.1%

Svelte

11 resp.
2.1%

Nuxt

6 resp.
1.1%

Angular

2 resp.
0.3%

In 2024, what CSS frameworks have you typically use with Craft CMS?

Tailwind has dropped almost 10% since last year with Sass and self-created frameworks gaining ground.

Tailwind
185 resp.

58.7%%

Tailwind

SCSS 2x
79 resp.

38.3%%

SCSS

Cool
55 resp.

26.7%%

None – I roll my own

Bootstrap
40 resp.

19.4%%

Bootstrap

In the last 12 months, what build tools have you typically used?

Vite is owning with more than twice the coverage of the number two position - Webpack.

Vite

132 resp.
40.2%

Webpack

61 resp.
18.5%

Laravel Mix

42 resp.
12.8%

Gulp

36 resp.
10.9%

None

26 resp.
7.9%

Grunt

8 resp.
2.4%

Rollup

8 resp.
2.4%

Parcel

4 resp.
1.2%

Other

11 resp.
3.3%

How do you handle SEO functionality on your Craft CMS sites?

SEOmatic, SEOmatic, SEOmatic, SEOmatic, SEOmatic, SEOmatic, SEOmatic... anyone else wish they built this first?

We use SEOmatic

177 resp.
70.8%

We use a custom solution

29 resp.
11.6%

We use Ether SEO

21 resp.
8.4%

We use SEO Mate

12 resp.
4.8%

We use SEO Fields

5 resp.
2%

We use another SEO plugin

4 resp.
1.6%

We don't add any SEO to our sites

2 resp.
0.8%

In the last 12 months, have you used Craft CMS as a headless CMS?

We changed this from last year's question, so it's not compatible but it will help us in future benchmarks.

Yes

77 resp.
37%

No

113 resp.
54.3%

Not yet – But plan to within the next 12 month

15 resp.
7.2%

I don't know what this means 

3 resp.
1.4%

Part 3

Client and authorship experience

This section covers how developers work with the clients, in terms of creating the best experience for them.

Part 3 Divider

Do you give your clients' full Admin accounts?

The majority lean towards never or occasional use, clearly prioritising caution.

Yes – Always

19 resp.
9.2%

Yes – Sometimes

50 resp.
24.2%

Yes – Occasionally

43 resp.
20.8%

No - Never

89 resp.
43.2%

Other

5 resp.
2.4%

What do you do with the CMS Dashboard?

The Craft CMS dashboard has long been a topic of debate, with around 70% of users choosing to either leave it unused or hide it entirely, up from last year by 5%.

Nothing – It’s left as the default

118 resp.
57.5%

Customise it with standard widgets

31 resp.
15.1%

Hide it

25 resp.
12.1%

Customise it with custom widgets

24 resp.
11.7%

Other

7 resp.
3.4%

How do you typically handle content staging?

The vast majority of people are adding content directly to the production website.

Content is added directly to the production site

164 resp.
81.5%

Content is added to a staging site, and the database is imported into production

29 resp.
14.4%

Content is added to a staging site, and the content is migrated to production using a plugin

4 resp.
1.9%

Other

4 resp.
1.9%

How do you handle content staging?

From the feedback, we can categorise content staging strategies into distinct groups, reflecting varied approaches based on project complexity, client needs, and team workflows. Here’s a summary:

🛠 Direct editing on production

Clients work directly on the live site, using drafts and previews for a simple and quick approach, but this increases the risk of live errors and limits testing isolation.

🚧 Staging for feature testing

Staging is dedicated solely to testing features, keeping QA focused and efficient, though content isn’t automatically synced with production.

🔄 Staging-to-production migration

Content is prepared in staging and migrated to production using tools like Feed Me or manual imports, ensuring everything is polished but making the process time-consuming and prone to errors.

🧪 Dual environment workflows

Content is managed across both staging and production environments, offering flexibility for changes while requiring frequent database imports to stay in sync.

🚀 Pre-launch staging

All content is set up in staging and migrated to production at launch, ensuring readiness but reverting content management to production post-launch.

Part 4

Craft CMS Plugins

This section explores how Craft CMS developers use plugins.

Part 4 Divider

In the last 12 months, what Craft CMS plugins have you usually included when starting a new project?

SuperTable and Redactor have plummeted from the top 8, and CKEditor has rocketed to the top of the list. Unsurprising since Craft 5 dropped Redactor, and filled the matrix-in-matrix void that Super Table filled. Also a new entry for Hyper 🚀, presumably as a replacement for Typed Link Field.

Ckeditor
Pixel & Tonic

CKEditor

👍 113
SE Omatic
NYStudio107

SEOmatic

👍 98
Retour
NYStudio107

Retour

👍 63