Craft CMS Developer Benchmark Results 2023

The results are in.

🙅
👍
🎉
🤷‍♂️
🙈
😭

We're so pleased to have been able to conduct the Craft Benchmark survey again. This year we’ve had 282 respondents from 35 countries – responses were down 5% from last year respectively, whilst the number of countries remained the same.

We think that's probably on us for being late to release the survey, with a bit more time we think we could have topped last year. Alas, we'll try again in 2024.

Responses Graph Mobile

We did this benchmark to:

  • Give insight into the Craft CMS developer community
  • Give ideas on how to use Craft CMS better
  • Give ammunition for pitching Craft CMS to clients

We created this because:

  • We're Craft CMS developers
  • We believe the report will be helpful for the community
  • We wanted to learn and get better at what we do – and hope you do too

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.

Part 1 Divider

What describes you best?

Craft CMS is popular among agencies and freelancers.

I work at an agency

116 resp.
41.1%

I'm a freelancer

77 resp.
27.3%

I run an agency

64 resp.
22.6%

I work for a non-agency

23 resp.
8.1%

Other

2 resp.
0.7%

What size is your agency?

Craft CMS seems to be the most popular in smaller companies of fewer than 20 employees. Perhaps this is because smaller teams are more able to adopt a less well known platform.

1

9 resp.
4.4%

2-5

48 resp.
23.5%

6-10

37 resp.
18.1%

11-20

52 resp.
25.4%

21-30

6 resp.
2.9%

31-40

10 resp.
4.9%

41-50

8 resp.
3.9%

50-100

18 resp.
8.8%

100+

12 resp.
5.8%

Other

4 resp.
1.9%

What is your job?

This is a new question for the 2023 benchmark, as we wanted to get to know who’s filling in the survey so that we can have more context about the rest of the answers.

Developer

249 resp.
54.6%

Designer

82 resp.
17.9%

CEO/Manager

89 resp.
19.5%

Content author

22 resp.
4.8%

Other

14 resp.
3%

How much of your job is development (coding)?

100% development

59 resp.
20.9%

Mostly development

173 resp.
61.3%

A bit of development

45 resp.
15.9%

No development

5 resp.
1.7%

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

3 resp.
1%

1-2 years

6 resp.
2.1%

3-5 years

19 resp.
6.8%

6-10 years

76 resp.
27.4%

11-16 years

71 resp.
25.6%

16+ years

102 resp.
36.8%

How long have you been using Craft CMS?

Looks like a few more people this year have achieved Brandon Kelly status. 🤔

Less than 1 year

3 resp.
1%

1 year

10 resp.
3.5%

2 years

21 resp.
7.4%

3 years

21 resp.
7.4%

4 years

23 resp.
8.1%

5 years

44 resp.
15.6%

6 years

36 resp.
12.8%

7 years

23 resp.
8.1%

8 years

30 resp.
10.6%

9 years

32 resp.
11.3%

10+ years – I'm basically Brandon Kelly

38 resp.
13.5%

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

There’s been a ~8% increase in businesses registering as Craft CMS partners since last year.

Thumbs Up
115 resp.

40.8%%

Yes

Thumbs Down
167 resp.

59.2%%

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

Many respondents mentioned not feeling that being a Craft CMS partner was creating many leads for their business, with some also noting the lack of prominence and visibility through on the partners directory.

It was also noted several times that being a partner lacks any analytics such as profile views and conversions, so it’s difficult to know whether being a partner is creating any value.

Communication and networking

Partners want more direct communication from Pixel & Tonic and involvement in the development of new Craft CMS and marketing features.

Many indicated a request for newsletters with roadmap updates, partner events, and more networking evenings.

Discounts and Incentives

A lot of responses suggested that being a Partner would be more obviously beneficial if they received discounts on various items such as DotAll tickets, license fees, and Craft Cloud hosting.

Quality Assurance and Services Definition

It was noted by a few respondents that being a partner would feel more meaningful if there were some sort of quality assurance.

Many also noted that a dedicated space to define a business’ services would be good.

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

0

5 resp.
1.7%

1-2

48 resp.
17%

3-5

87 resp.
30.8%

5-10

91 resp.
32.2%

11-20

37 resp.
13.1%

21-50

10 resp.
3.5%

50+

4 resp.
1.4%

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

Great to see that nearly 60% of respondents' sites were almost or were exclusively built with Craft CMS.

100% 💪

84 resp.
30.3%

Almost 100%

81 resp.
29.2%

Around 75%

56 resp.
20.2%

Around 50%

34 resp.
12.2%

Around 25%

7 resp.
2.5%

Less than 25%

15 resp.
5.4%

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

Marketing sites

251 resp.
41.9%

eCommerce Sites

120 resp.
20%

Member Sites

110 resp.
18.3%

Headless / API Systems

93 resp.
15.5%

Other

25 resp.
4.1%

As well as the main categories above, Craft CMS has been used for a huge variety of projects this year, including:

Government sites

Non-profit sites

Educational websites

Online magazines

SaaS platforms

Charity and fundraising sites

Real Estate websites

Intranets

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

Surprise suprise, WordPress takes pole position, whereas no-code website builders have also proved popular. Webflow takes 3rd place with 14.7% of respondents having used it, along with Squarespace at 12.5%.

ExpressionEngine suffered a blow, being knocked down from 2nd place to 4th.

Wordpress
91 resp.

49.5%%

Wordpress

Shopify
54 resp.

29.3%%

Shopify

Webflow 2x
27 resp.

14.7%

Webflow

Expression Engine
23 resp.

12.5%%

ExpressionEngine

Squarespace
23 resp.

12.5%%

Squarespace

Statamic
22 resp.

12%%

Statamic

Kirby 2x
15 resp.

8.2%%

Kirby

Strapi 2x
11 resp.

6%%

Strapi

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

Similar results to last year’s survey, but in a surprising twist we’ve got more personal websites being built in Expression Engine.

Craft CMS
186 resp.

67.4%%

Craft CMS... duh!

No CMS
42 resp.

15.2%%

No CMS

Wordpress
12 resp.

4.3%%

WordPress

Expression Engine
11 resp.

4%%

ExpressionEngine

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

This one was super interesting to read about. Here are the main thoughts our respondents gave for not using Craft CMS.

⚙️ Very technical projects

Projects requiring substantial backend customisation or large-scale data operations might benefit from dedicated frameworks.

🛍 Complex ecommerce projects

While Craft Commerce exists, some prefer specialised platforms like Shopify for robust features and cost-effectiveness.

🙃 Headless projects

While Craft offers headless capabilities, other solutions like Contentful might be more dedicated and efficient for purely data delivery.

🙂 Simple projects

For simple, static sites, building with HTML/CSS or tools like Astro might be easier and lighter.

💸 Budget projects

Very small projects with minimal content or updates might not justify the CMS overhead and licensing cost.

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

Craft CMS 1

2 resp.
0.3%

Craft CMS 2

55 resp.
8.9%

Craft CMS 3

233 resp.
38%

Craft CMS 4

277 resp.
45.1%

Craft CMS 5

46 resp.
7.5%

In the last 12 months, have you upgraded a Craft CMS 2 site to Craft CMS 3 or 4?

👍 Yes

112 resp.
39.7%

👎 No

170 resp.
60.2%

How smoothly did it go?

There were mixed feelings on how easy it is to upgrade a Craft 2 site. This is understandable since Craft 3 was a huge shift to composer.

7 /10

👎 It was horrible It was lovely 👍

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

Better documentation

More detailed instructions, compatibility information, and upgrade path guidance, especially for major version jumps.

Specialised upgrade tools

Consider features like single-click upgrades, automated plugin updates, and deprecation code detection.

Plugin compatibility

Address legacy plugins or offer migration assistance for discontinued ones.

Composer errors

Improve error messages to be more user-friendly and actionable.

In the last 12 months, have you upgraded a Craft CMS 3 site to Craft CMS 4?

👍 Yes

239 resp.
84.7%

👎 No

43 resp.
15.2%

How smoothly did it go?

Developers had a much better time upgrading from Craft 3 to Craft 4.

8 /10

👎 It was horrible It was lovely 👍

Here are the main suggestions to improve this going forward.

Plugin compatibility

Lack of upgrade paths for some plugins caused downtime and rework.

Documentation

More detailed information on breaking changes, plugins, and migrations.

Migrations

Some complexities and unexpected issues during data migration.

User-friendliness

Simplify composer.json updates, upgrade process steps, and error messages.

Specific elements

Address revamp in Commerce and potential pitfalls with custom modules.

Automation

More automation (e.g., single-click upgrades, automatic code checks).

Deprecation warnings

Better deprecation warnings and early adoption opportunities.

Plugin support

Improved plugin support and communication from developers.

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?

Like last year, most developers use an Apple Mac.

Mac
246 resp.

87.5%%

Mac

Windows
35 resp.

12.5%%

Windows

Linux
24 resp.

8.5%%

Linux

Other
2 resp.

0.7%%

Other

WSL

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

Most developers use Chrome, no change from last year. Other mentions include: Arc (16 users), Safari Developer Edition, Thorium, Blisk and Netscape (likely a joke).

Chrome
196 resp.

69.8%%

Chrome

Firefox
105 resp.

37.4%%

Firefox

Safari
61 resp.

21.7%%

Safari

Brave
24 resp.

8.5%%

Brave

Edge
15 resp.

5.3%%

Edge

Opera
4 resp.

1.4%%

Opera

Vivaldi
2 resp.

0.7%%

Vivaldi

Other
22 resp.

7.8%%

Other

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

The top spots of VSCode and PHP Storm have remained pretty similar to last year’s results, with Coda's replacement, Nova joining the top 4.

VS Code
166 resp.

59.3%%

Visual Studio Code

Php Storm
118 resp.

42.1%%

PHPStorm

Sublime
27 resp.

9.6%%

Sublime Text

Nova 2x
21 resp.

7.5%%

Nova

What are your top 3 VS Code extension recommendations?

We thought VS Code would be a popular choice, so we also asked respondents to list their favourite VS Code extensions. Here are the most popular:

Twig Language 2
(syntax highlighting, formatting, IntelliSense for Twig templates)

Tailwind CSS IntelliSense

(autocomplete, linting, class definitions for Tailwind CSS)

PHP Intelephense

(advanced PHP language support, IntelliSense, code completion)

GitLens

(enhanced Git integration within VS Code)

First

Twig Language 2

Second

Tailwind CSS IntelliSense

Third

PHP Intelephense

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

DDEV is now well established as a top choice at almost 65% of the vote.

We’ve still got 3% of users on Nitro, down from 15% last year.

Ddev 2x
181 resp.

64.6%

DDEV

Dockr 2x
70 resp.

25%

Docker

Mamp logo icon 247786
46 resp.

16.4%

MAMP / WAMP / XAMP

What local environment tool do you use for working with databases on Craft CMS projects?

Sequel Pro has fallen down a place since last year, the third spot now being taken by PHPMyAdmin.

Table Plus
101 resp.

36.6%%

TablePlus

Sequel Ace
92 resp.

33.3%%

Sequel Ace

PHP my admin 2x
53 resp.

19.2%%

PHPMyAdmin

When starting a project how do you download Craft CMS?

86.4% start their build process with Composer. Many of the custom answers mentioned a boilerplate repo, which may well also use Composer too.

With composer

241 resp.
86.3%

Manual download

9 resp.
3.2%

Other

29 resp.
10.3%

💡 Craft Tip

It's down 3% from last year, but there's still 4% of respondents get started on Craft CMS projects by manually downloading it.

Check out the helpful docs on the Craft CMS site for using the Composer method.

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

Of the ~15% of developers who use a public boilerplate repo, here are the most popular:

CraftQuest craft-4-starter (3 mentions)

statikbe/craft (2 mentions)

Craft on DDEV by kerns

nystudio107/craft

Yes – I use my own, which I built from scratch

162 resp.
57.4%

Yes – I use my own, based on an existing repo

32 resp.
11.3%

Yes – I clone someones else's

11 resp.
3.9%

No – I start from scratch each time

77 resp.
27.3%

What database do you use for Craft CMS projects?

No change here from last year - PostgreSQL adoption has been slow.

My SQL
234 resp.

83.6%%

MySQL

Maria DB
126 resp.

45%%

MariaDB

Postgre SQL
27 resp.

9.6%%

PostgreSQL

Where do you define custom routes?

In config/routes.php

171 resp.
46.3%

In Admin → Settings → Routes

92 resp.
24.9%

In a custom module

63 resp.
17%

I don't

39 resp.
10.5%

Other

4 resp.
1%

Where do you define image transforms?

In the templates

141 resp.
42.8%

In Settings → Assets → Image Transforms

101 resp.
30.6%

I use a plugin

87 resp.
26.4%

How do you optimise and compress your images?

Using Craft's native transformer

150 resp.
53.1%

Using a plugin

66 resp.
23.4%

Using a third party service

52 resp.
18.4%

I don't

8 resp.
2.8%

Other

6 resp.
2.1%

What plugin do you use for image optimisation and compression?

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

These were also the most popular plugins mentioned for image optimisation and compression.

Imager X
44 mentions

Imager X

Image Optimize
22 mentions

ImageOptimize

Image Resizer
3 mentions

Image Resizer

How do you optimise and compress your images?

Using Craft's native transformer

150 resp.
53.1%

Using a plugin

66 resp.
23.4%

Using a third party service

52 resp.
18.4%

I don't

8 resp.
2.8%

Other

6 resp.
2.1%

What service do you use for image optimisation and compression?

Imgix is a very popular service among Craft CMS developers. Second in line is Servd’s image optimisation service. The other tools mentioned were manual tools such as TinyPng and ImageOptim.

Do you implement Eager-Loading in your templates?

Around 84% of developers are implementing full or partial eager loading in their templates. With 4% of respondents not knowing what it is.

We recommend you check out the docs - eager loading is a great way to make your database queries more efficient and speed up your website.

Yes – Some things get eager-loaded

155 resp.
55.3%

Yes – Everything gets eager-loaded

79 resp.
28.2%

No – But I know what it is

36 resp.
12.8%

No – I don't know what that is 🤔

10 resp.
3.5%

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

Every content type has its own Section

212 resp.
75.9%

Everything is in one Structure with different Entry Types

26 resp.
9.3%

Other

41 resp.
14.6%

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

There are lots of different tools we can use to improve the performance of our sites, usually by reducing PHP and database work, ranging form native Craft tools, to plugins, to server-level enhancements.

Popular responses from the ‘other’ option include: Servd static caching, Litespeed cache, Next.js Incremental Static Regeneration and Server-level caching.

Craft CMS's native cache tags

178 resp.
34.2%

Static page caching using Blitz

150 resp.
28.9%

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

120 resp.
23.1%

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

39 resp.
7.5%

I don't use caching

16 resp.
3%

Other

16 resp.
3%

What libraries or frameworks do you use to add reactivity to the sites you build?

Sprig
143 resp.

51.8%%

Sprig

Alpine
121 resp.

43.8%%

Alpine.js

Vue JS
105 resp.

38%%

Vue.js

Htmx 2x
40 resp.

14.5%%

htmx

How do you update Craft CMS?

From the Terminal

216 resp.
77.4%

From the Control Panel

61 resp.
21.8%

I don't update Craft CMS

2 resp.
0.7%

Do you use Craft CMS's Project Config?

Almost 95% of respondents use the project configuration either all the time or most of the time. That’s up by 5% from the 2022 survey.

We think it’s one of Craft’s best-selling points and couldn’t imagine #devlife without it.

Of the people who don’t use it, we’d love to know why. Maybe we’ll put that in the questionnaire next year.

Yes – Always

227 resp.
81%

Yes – Mostly

22 resp.
7.8%

Yes – Sometimes

16 resp.
5.7%

No

13 resp.
4.6%

I don't know what it is 🤔

2 resp.
0.7%

Do you (usually) allow config admin changes on production

The Project Config works best when clients can’t make changes on production, so it makes sense that there’s a strong correlation here about permissions. There’s a slight increase in Nos since last year, up by around 5% - which is the same as the increase about using Project Config in general.

No

233 resp.
87.9%

Yes

31 resp.
11.6%

I don't know what it is 🤔

1 resp.
0.3%

In 2023, what Javascript Libraries/Frameworks/Tools have you typically use with Craft CMS?

jQuery is slightly less popular than our 2022 survey, but all the top spots remain the same.

Nuxt.js was the most popular “other” mention, so we’ll be sure to include that in the options next year.

React has fallen to 6th place, from 2021’s 4th.

Backbone and Ember got 0 votes.

Vanilla
145 resp.

52.3%%

None – Vanilla, baby

Alpine
112 resp.

40.4%%

Alpine

Vue JS
105 resp.

37.9%%

Vue.js

J Query
66 resp.

23.8%%

jQuery

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

Tailwind still has a very strong lead, with “roll your own” dropping down from around ~40% to ~23%.

At Honcho we love Tailwind and can’t imagine life without it.

Tailwind
185 resp.

67.3%%

Tailwind

SCSS 2x
88 resp.

32%%

SCSS

Cool
63 resp.

22.9%%

None – I roll my own

Bootstrap
51 resp.

18.5%%

Bootstrap

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

SEOmatic is clearly the most popular SEO plugin, followed by ~18% of developers who roll their own solution.

We asked respondents who roll their own solution to elaborate, and the custom solutions fall into two categories - custom fields in the CMS, and hardcoding metadata within the templates.

We use SEOmatic

177 resp.
63.2%

We use a custom solution

50 resp.
17.8%

We use SEO Mate

22 resp.
7.8%

We use Ether SEO

20 resp.
7.1%

We don't add any SEO to our sites

6 resp.
2.1%

We use another SEO plugin

5 resp.
1.7%

Have you ever used Craft CMS as a headless CMS?

Yes

126 resp.
44.8%

No

123 resp.
43.7%

Not yet – But plan to within the next 12 months

31 resp.
11%

I don't know what this means 🧐

1 resp.
0.3%

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?

Most people here opt for never or occasionally, clearly erring on the side of caution.

Yes – Always

23 resp.
8.2%

Yes – Sometimes

75 resp.
26.7%

Yes – Occasionally

59 resp.
21%

No - Never

119 resp.
42.5%

Other

4 resp.
1.4%

Do you customise the Entry column views in the Craft CMS Admin?

Craft CMS allows you to customise which columns are displayed in which entry sections in the CMS, to only show the relevant data to your clients.

We love this feature and apparently so do most respondents.

Thumbs Up
256 resp.

91.4%%

Yes

Thumbs Down
21 resp.

7.5%

No