State of Haskell 2025 results

At the end of 2025, the Haskell Foundation re-started the Haskell Yearly Survey. I’d like to thank Taylor Fausak for being supportive of our effort in conducting these surveys. The last survey was conducted in 2022 and the post discussing those results is here: https://taylor.fausak.me/2022/11/18/haskell-survey-results/

The full results are available here: State of Haskell 2025 Raw Results - Google Drive. If you’d like a CSV to play around with, that has been made available as well: 2025 Survey CSV.

I’m going to use this post as a way to discuss a subset of the results that I feel are interesting to the HF and likely to the wider community.

Do you use Haskell?

Let’s start from the top, who is taking the survey?

Q1. Do you use Haskell
Answer Choices Responses
Yes 72.26% 1021
No, but I used to 16.28% 230
No, I never have 11.46% 162
Answered 1413
Skipped 4

This is actually an increase in the number of people taking the survey since 2022 (~1,000), which was not our initial expectation! There is also an increase in the number of non-Haskellers taking the survey.

Of particular interest to me is when folks ‘drop off’ on using Haskell. This is hard to measure, because if they’re not using Haskell anymore they’re very unlikely to take the survey. That said we did get almost 200 responses to the following:

How long before stopping?

Q2. If you stopped using Haskell, how long did you use it before you stopped?
Answer Choices Responses
Less than 1 day 14.72% 29
1 day to 1 week 10.66% 21
1 week to 1 month 15.23% 30
1 month to 1 year 17.26% 34
More than 1 year 42.13% 83
Answered 197
Skipped 1220

As might be expected, most fall off within a year. There’s a hump at “less than 1 day”, which can mean that we still have on-ramp issues. The rest fits what you would expect with most intellectual endeavors; as time goes on, more people drop off.

How have you used it?

Q3. How many years have you been using Haskell?
Answer Choices Responses
Less than 1 11.12% 95
1 to 2 8.78% 75
2 to 3 8.67% 74
3 to 4 6.32% 54
4 to 5 8.43% 72
5 to 6 5.85% 50
6 to 7 5.27% 45
7 to 8 6.67% 57
8 to 9 3.98% 34
9 to 10 7.26% 62
10 to 11 5.04% 43
11 to 12 2.93% 25
12 to 13 1.87% 16
13 to 14 2.34% 20
14 to 15 1.52% 13
More than 15 13.93% 119
Answered 854
Skipped 563

This was very surprising to me! Pretty much half (49.17%) of those surveyed have been using Haskell for fewer than 6 years (i.e. since COVID), this is not the usual narrative that we tell ourselves in the community. We should try to figure out whether this is a quirk of the the sample population, as this implies that we still have a healthy population of ‘newer’ Haskellers picking up the language.

Haskell for work

Q7. Do you use Haskell at work?
Answer Choices Responses
Yes, most of the time 30.89% 304
Yes, some of the time 18.29% 180
No, but my company does 0.71% 7
No, but I’d like to 42.68% 420
No, and I don’t want to 7.42% 73
Answered 984
Skipped 433

This pretty much aligns with my expectations, but is still worth calling out. There is a healthy group of Industrial Haskell users (49.18% at least some of the time). However, there is a significant portion of people who want to be able to use Haskell at work, but currently do not. We have to help folks like this sell Haskell to their companies.

Project Size

Q13. What is the total size of all the Haskell projects you contribute to?
Answer Choices Responses
Less than 1,000 lines of code 24.71% 216
Between 1,000 and 9,999 lines of code 26.54% 232
Between 10,000 and 99,999 lines of code 25.17% 220
More than 100,000 lines of code 23.57% 206
Answered 874
Skipped 543

Taylor measured this a little differently on this question, so direct comparison is difficult. What we can say is that the distribution is much more uniform than in 2022. This is likely from:

  • more newer (smaller) projects
  • some of the medium-large projects continuing to grow and becoming large-large

Haskell Dev Environment

Q16. Which Haskell compilers do you use?
Answer Choices Responses
GHC 99.40% 991
GHCJS 3.91% 39
Clash 1.91% 19
Hugs 0.60% 6
Mu 1.00% 10
MicroHS 3.61% 36
Other (please specify) 0.70% 7
Answered 997
Skipped 420

MicroHS is the new entry on this list and it has a fairly healthy user group already. I’d also be interested to know what folks are using Hugs for (though, that’s a personal curiousity of mine).

Q17. Which installation methods do you use for your Haskell compiler?
Answer Choices Responses
ghcup 63.45% 632
Nix 41.57% 414
Stack 20.88% 208
Operating system package 11.75% 117
Official binaries 3.71% 37
Source 3.41% 34
Haskell Platform 0.60% 6
Homebrew 3.21% 32
Chocolatey 1.00% 10
Guix 0.20% 2
Other (please specify) 1.31% 13
Answered 996
Skipped 421

GHCUp and Nix are both continuing their growth as the way folks install Haskell on their system. GHCUp grew a little more than Nix, cementing itself as the most popular individual method. We should thank @hasufell for his work on GHCUp!

Q18. Has upgrading your Haskell compiler broken your code in the last year?
Answer Choices Responses
Yes 27.08% 264
No 72.92% 711
Answered 975
Skipped 442

This is great news for the Haskell community! For years this was considered one of the worst aspects of the Haskell ecosystem, it’s fantastic to see improvement in this area. There’s still work to do, of course, but this is the right trajectory. The follow-up question shows that the most common breakage caused by upgrading GHC is imcompatible dependencies. The work on reinstallable base will provide another leap in ease of upgrading GHC.

Q25. Which build tools do you use for Haskell?
Answer Choices Responses
Cabal 83.96% 738
Stack 39.59% 348
Nix 39.48% 347
haskell.nix 10.24% 90
Buck2 2.39% 21
Make 7.85% 69
Shake 4.55% 40
ghc-pkg 2.62% 23
Bazel 1.14% 10
Guix 0.57% 5
Other (please specify) 1.93% 17
Answered 879
Skipped 538

What’s notable here is how Nix has continued to grow, solidifying itself as one of the main tools along with Cabal and Stack.

Q20. Which versions of GHC do you use?
Answer Choices Responses
9.14 19.13% 163
9.12 45.42% 387
9.10 44.37% 378
9.8 31.46% 268
9.6 30.87% 263
9.4 9.15% 78
9.2 5.63% 48
9.0 3.40% 29
8.10.x 6.22% 53
<8.10 3.99% 34
Answered 852
Skipped 565

The shape of this distribution is significantly different than last time, which was bimodal around 9.2 and 8.10 (switching away from 8.10 was difficult for many users). As mentioned before, there’s still work to do in making GHC upgrades easier, but having a unimodal distribution like this is exactly what you’d want to see here.

Haskell Community

Q34. Where do you interact with the Haskell community?
Answer Choices Responses
Discourse 45.59% 357
Reddit 52.62% 412
GitHub 47.51% 372
Twitter/X 10.86% 85
Bluesky 10.86% 85
Stack Overflow 12.90% 101
Discord 21.97% 172
IRC 11.24% 88
Mailing lists 15.58% 122
Conferences (academic) 11.88% 93
Conferences (commercial) 7.15% 56
Slack 9.32% 73
Telegram 6.00% 47
Meetups 10.73% 84
Matrix/Riot 11.62% 91
Lobsters 6.90% 54
Mastodon 13.03% 102
Zulip 2.04% 16
Gitter 0.38% 3
Hacker News 12.77% 100
Other (please specify) 3.96% 31
Answered 783
Skipped 634

Twitter and Stack Overflow both saw large drops, which is not unique to the Haskell Community. Discourse has become the de-facto home of the Haskell community online.

Q35. Which of the following Haskell topics would you like to see more written about?
Answer Choices Responses
Best practices 63.55% 490
Design patterns 50.97% 393
Application architectures 45.53% 351
Performance analysis 46.43% 358
Debugging how-tos 33.59% 259
Production infrastructure 29.31% 226
Library walkthroughs 31.52% 243
Tooling choices 26.33% 203
Case studies 23.22% 179
Algorithm implementations 23.35% 180
Project maintenance 16.60% 128
Web development 17.90% 138
GUIs 20.75% 160
Testing 17.64% 136
Project setup 14.27% 110
Beginner fundamentals 16.21% 125
Machine learning 14.53% 112
Game development 16.60% 128
Mobile development 12.58% 97
Comparisons to other languages 11.15% 86
Other (please specify) 5.45% 42
Answered 771
Skipped 646

The Haskell Foundation agrees! Best practices are under-documented in the Haskell community. This was actually a big motivation around the program for the Haskell Ecosystem Workshop last year (youtube playlist here).

Final Thoughts

If you’re interested in this sort of thing, I encourage you to take a look at the rest of the publicly available results here, specific subsets of the result will get used by folks like the GHC team in deciding on what work needs prioritization, the Stability Working Group for advocating the categorization of different GHC extensions, and by the HF in deciding how to best support the ecosystem (document best practices, for instance!).

Thank you to those that took part in the survey and I’m excited to see what discussion this inspires.

46 Likes

Excellent data, thanks for the effort of organising this!

7 Likes

This is a wonderful breakdown. I’m particularly pleased by the rapid adoption of newer GHC versions, with >90% on 9.10+. I’ve been hesitant to alter my current setup, but this gives reason to - it appears I’ve fallen behind :slight_smile:

6 Likes

The largest ever turnout!

Also interesting to see that the percentages for Cabal and Stack have basically swapped in the past 10 years. From 80% Stack and 40% Cabal (eyeballing the charts without percentages) in 2016, breaking even with 60%/60% in 2021, to 80% Cabal and 40% Stack in 2025.

4 Likes

Note that you can’t just add the percentages because people could select multiple options. In the worst case it’s the same 45% who use both 9.10 and 9.12.

4 Likes

I think that some things that may explain that trend:
— with GHCup, Cabal (the tool) users now had an easy-to-use GHC installer (no need to look elsewhere); and
— HLS support for Stack was, I think, patchy in the early years.

Another possible factor: Stack was slow to support public sub-libraries.

3 Likes

State of Stack 2025

Q51 and Q52 (satisfaction with Cabal (the tool) and Stack, respectively) are new to 2025, so I can’t analyse trends in satisfaction. However, if I make some assumptions about the data and rank Strongly Agree as 5 and Strongly Disagree as 1, both Cabal (the tool) and Stack score an average of about 3.5 among their users (where 3 is Neither Agree or Disagree).

However, Stack users are more polarised/opinionated about the tool than Cabal (the tool) users. For people who read this and who answered Disagree or Strongly Disagree about Stack satisfaction in the survey, please do consider raising an issue at Stack’s GitHub repository if you think what bugs you about the tool could be fixed by tool development.

6 Likes

What I found interesting was:

Q10. Which types of software do you develop with Haskell?

It seems almost 3 out of 4 Haskellers use it do develop CLI programs. But very few develop Desktop programs (8.57%).

Q11. Which industries do you use Haskell in?

The state of Mobile development is sad (1.92%). Maybe with the new GHC JS/wasm backends and frameworks like miso that support mobile app development, this will become a more viable option.

Q16. Which Haskell compilers do you use?

Nice to see MicroHS gaining some traction.

Q26. Which editors do you use for Haskell?

VSCode at the top (41.62%). I think this is evidence that the vscode-haskell extension is well perceived. Shout out to @fendor.

Q32. Which tools do you use to deploy Haskell applications?

I think this is pretty significant. The majority (63.01%) deploy static binaries. Too bad we don’t know how they have been created (the two main methods are cross compiling via nix or using alpine docker container).

But my verdict is: GHC alpine (musl) bindists are very important and we must continue to prioritize these.

16 Likes

My personal move away from Stack was somewhat ideological, thinking that Stack’s decision not to support things like backpack and ghcjs was stalling and constraining the ecosystem. Though that’s just why I wanted to move away from it. GHCup definitely made the move much easier, but I think Cabal’s adoption of Nix-style builds and freeze files was also pivotal, solving much of the Cabal hell experience that Stack(age) was mostly created to address in the first place.

6 Likes

@jmct Thank you very much! I am very interested in seeing the aggregated answers to Q77. I “feel” like my answer was shared by other people, but maybe I’m totally in the wrong and our community has different preoccupations. :slight_smile:

2 Likes

It might be worth doing an aggregation where we take the minimum version for each response and doing percentages based on that

2 Likes

Thank you very much for this summary! It’s great to see that the community (or at least the number of respondants) is growing, albeit slowly!

One comment about

Q34. Where do you interact with the Haskell community?

I think the order is messed up? (Or the percentages are unsorted?) But it seems that Reddit has a larger community than Discourse, which is a bit surprising.

1 Like

While the survey as whole seems promising, this is a sign something has gone very wrong in the haskell community :stuck_out_tongue:

3 Likes

I know, right? Vi above emacs ??!

5 Likes
Editor 2017 2018 2019 2020 2021 2022 2025
VS Code 202 329 367 529 522 450 375
Vi family 534 471 493 432 460 413 359
Emacs family 501 523 391 378 331 309 248
1 Like

Exactly. Moving to VS I can excuse, but vi? dark times…

3 Likes

… presumably because it is much easier to wrap your Haskell functions in a webservice rather than a desktop app. Also, at least in my eyes, simply using the functions of a Haskell library in GHCi counts as CLI program, not as scripting.