My analysis of the State of HTML 2023 results

The State of HTML 2023 intro illustration

As someone who works on web browsers, I take web development survey results very seriously. They're a way for us, browser makers, to understand what you, web developers, need from us. The pain points you feel, the features you use, the features you need, and a bit of a general trend of the web development ecosystem.

As far as surveys go, the State of <thing> survey series is a really good one to keep an eye on. The State of JS, State of CSS, and State of HTML run yearly and allow us to compare results year over year. There are other places to get developer signals about the web out there, of course, but the State Of <thing> is one of the major ones.

For more information about how the State of <thing> survey series started, see Sacha Greig's devographics website.

The State of HTML 2023

You can see the results for yourself on the State of HTML 2023 website.

Last year was the first time the State of HTML survey ran. Because it was the first time, the questions were a little more open-ended than other State of <thing> surveys, simply because there were no previous surveys to compare to, and therefore more free-text answers were needed.

This led to a lot of free-text answers that needed to be categorized, which was a lot of work. This explains that the results took a little longer to come out than the other State of <thing> surveys.

Note that HTML, in State of HTML, really means: everything that's not already captured in State of JS and State of CSS. HTML, as a language, was not the only thing surveyed here.

My analysis

The sections below are based on the results of the survey, and are my own, personal, analysis of the results. I'm only speaking for myself, and only focused on the areas of the survey that were of interest to me. You migth find other interesting insights in the survey results, so I encourage you to go check them out for yourself.

Interoperability issues

The lack of browser support for the features that people want is a common theme throughout the survey, and this is true of other web-related developer surveys. The web is fragmented, and this has always been a big pain for web developers. But one question in particular focuses on this specific topic: Which existing HTML features or browser APIs are you unable to use because of browser differences or lack of support?. Here are some of the top issues:

Limited support

The survey contains another question, similar to the above: Which existing HTML features or browser APIs are you unable to use for other reasons (and why)?. This question led to answers that more or less confirm the previous question, with some of the top features being:

But the question also led to some new insights:

Sentiment on existing features

One nice thing that the State of HTML survey results allow us to do is to sort features by sentiment. For example, on the HTML features and other browser APIs question, respondents were asked to say whether they have used, heard of, or never heard of a feature, but they could also optionally leave a positive, neutral, or negative sentiment about the feature. This is useful to understand the developer ergonomics of a feature. People could also leave free-form text comments, and going through those is sometimes quite eye-opening.

For example, of the features that have the highest negative sentiment, and which people have used, the following features stand out:

Basically, developing and using Web Components feels hard, and people don't like it. More about this in Web Components.

There are more things to be extracted from this question's results, in particular a bunch of app-related features that people commented about. I'll come back to these later in the post, when talking about PWA. See Progressive Web Apps below.

Web Components

One of the question is about Web Components. In it, developers were asked their experience, and sentiment about a number of Web Components-related features.

The result is quite clear: there's a big need for a native component system, and developers are not happy with the current solutions, especially with the Shadow DOM feature.

When it comes to making Web Components, respondents complain about:

When it comes to using Web Components, developers say that:

Progressive Web Apps

There are two questions that I want to highlight here. The first is HTML features and other browser APIs, which contains a bunch of PWA-related (or, really, app-related) features, which respondents have interesting things to say about:

The second question which highlights PWA-related features is What are your biggest pain points around making web apps that feel native?. This is a free-form question. Here are some of the top pain points that people noted:

Stylable select

Responses to multiple questions of the survey mention the ability to style <select> HTML elements. It seems like a lot of people are passionate about not inventing a new element, but extending the existing <select> element instead.

The Open UI Community Group has been working on this for a few years. It originally started as a new element called <selectmenu>, to avoid breaking the existing <select> element. It, later, got renamed to <selectlist>, but is still a separate element. My understanding is that the latest discussions on the group are heading towards extending the existing <select> element instead.

In any case, many respondents say that they need this capability in the web platform. In fact, more generally, people say that they need to be able to style all form controls more than they can today.

There are more responses and more comments that can be read, and more filtering that can be done on the survey results. The above are just the few things that stood out as interesting to me. I encourage you to go check out the State of HTML 2023 results for yourself, and see what you can find in there.

Looking forward the next State of <thing> surveys.