JetBrains logo

Django Developers Survey 2025
Results

This is the fourth annual report based on the official Django Developers Survey, conducted from November 2024 to January 2025 by the Django Software Foundation in collaboration with PyCharm.

To better understand the state of the framework and its surrounding ecosystem, the survey gathered responses from approximately 4,600 Django users and enthusiasts worldwide.

Check out the previous Django Developers Survey reports: 2023, 2022, 2021.

Share:

Django usage

For which purposes do you mainly use Django?

70%

Both for work and for my personal, educational, or side projects

16%

Only for work

14%

Only for my personal, educational, or side projects

Which versions of Django do you use?

2021202220232024
62%5.1
31%5.0
69%45%4.2
55%25%8%4.1
34%16%6%4.0
75%47%28%12%3.2
30%10%5%2%3.1
50%13%8%6%3.0 or lower
3%3%4%2%I'm not sure
0%75%

Which version of Django do you use for new projects?

75%

The latest stable release

21%

The latest LTS release

3%

Other

How do you create new Django projects?

59%

Starting from scratch

31%

Using my IDE or editor

19%

Using Cookiecutter Django

8%

Using a custom-made tool

2%

Using DjangoX

1%

Using Django Material Kit

1%

Using Django React Boilerplate

7%

Other

How often do you upgrade Django in your projects?

2021202220232024
44%44%40%48%Every stable release
30%32%32%27%LTS only
14%13%15%11%Every monthly point release
5%4%5%4%I use an unsupported version of Django
7%7%8%10%Other
4%48%
Sarah Boyce
Django Fellow

Great to see an increase in the community upgrading every stable release rather than from LTS to LTS. Getting feedback on recent changes in Django is critical for us to fix any regressions and keep driving Django forward.

Jeff Triplett
Partner at REVSYS, former Director and Vice Chair of the Python Software Foundation

This was a pretty subtle but significant change. Most Django users use the latest Django version, and fewer people seem concerned about the LTS versions.

Technologies and frameworks

Which database backend(s) do you use?

2021202220232024
77%79%76%76%PostgreSQL
41%40%43%42%SQLite
30%28%30%27%MySQL
10%10%10%9%MariaDB
2%2%6%7%Oracle
8%6%MongoDB
4%3%Microsoft SQL Server
6%6%4%2%Other
2%2%1%1%None / I’m not sure
0%79%

Which cache backend(s) do you use?

2021202220232024
47%54%54%52%Redis
16%16%25%Database
17%18%18%Local Memory
18%16%20%15%Memcached
8%8%8%Filesystem
2%1%3%1%Other
43%27%24%22%None
0%54%
Sarah Boyce
Django Fellow

Unsurprisingly, the most-used database backends are the ones with built-in support. I am surprised to see the growth in Oracle users! Oracle is a challenge to maintain, so it is good to see the community using it.

Which Django contrib apps do you find most useful?

75%

admin

69%

auth

30%

postgres

22%

sessions

19%

staticfiles

13%

messages

12%

contenttypes

Which GeoDjango backend(s) do you use?

2021202220232024
22%22%24%21%PostGIS
7%6%10%14%MySQL
1%1%4%10%Oracle
3%3%6%2%Other
72%72%66%65%None / I’m not sure
1%72%

All options with less than 5% have been merged into “Other”.

What are your top three favorite core components?

68%

Models

48%

Admin

30%

Migrations

28%

Authentication

25%

Views

14%

Django management commands

14%

Templates

Which template engine(s) do you use?

2021202220232024
79%81%78%83%Django templates
14%14%16%13%Jinja2
1%2%3%2%Other
14%13%13%12%None
1%83%
Jeff Triplett
Partner at REVSYS, former Director and Vice Chair of the Python Software Foundation

This confirms the growth we have seen in companies moving back to more server apps using Django templates with htmx, Alpine, and other reactive frameworks. It's pretty cool to see.

Which types of testing are used in your project?

39%

pytest

33%

unittest

30%

pytest-django

21%

coverage

12%

django-test-plus

11%

Selenium

8%

Playwright

Which test frameworks do you use?

2021202220232024
39%41%42%39%pytest
36%36%31%33%unittest
31%33%30%pytest-django
19%21%24%21%coverage
4%3%6%12%django-test-plus
12%10%15%11%Selenium
3%9%8%Playwright
6%6%5%4%tox
5%5%8%4%Cypress
4%4%9%3%Other
31%26%25%24%None
0%42%

All options with less than 5% have been merged into “Other”.

Which async technologies do you use?

2021202220232024
24%25%28%37%ASGI
22%23%25%25%asyncio
16%18%21%24%Fast API
13%15%19%20%Uvicorn
16%15%18%16%Channels
10%11%14%14%Django's async views
9%9%13%14%Daphne
5%4%7%9%Starlette
4%5%9%6%asgiref
5%6%23%4%Other
49%47%39%36%None
0%49%

All options with less than 5% have been merged into “Other”.

Which JavaScript framework(s) do you use?

0

40

2021202220232024BackboneEmberMako
William Vincent
Developer Advocate at JetBrains

htmx has quickly established itself as one of the most popular JavaScript frontend choices for Django developers.

Which CSS frameworks do you use?

52%

Bootstrap

32%

Tailwind CSS

23%

Pure CSS

7%

Material Design/Lite

4%

Bulma

2%

UI Kit

1%

Foundation

What are your top five favorite third-party Django packages?

49%

djangorestframework

27%

django-debug-toolbar

26%

django-celery

19%

django-cors-headers

18%

django-filter

18%

django-allauth

15%

pytest-django

Sarah Boyce
Django Fellow

django-ninja continues to increase in popularity as an alternative to Django REST framework (DRF). However, DRF is still at the core of the Django community, with many projects built on top of it.

What do you use Django for?

80%

Full-stack development

51%

RestAPI using DRF

5%

Other

Do you write code professionally using Django?

82%

Yes

7%

No, but I have experience in programming in Django

6%

No, I'm only learning to code in Django

6%

No, coding in Django is a hobby for me

Which task queue libraries do you use?

49%

Celery

7%

RQ

6%

DjangoQ

3%

APScheduler

2%

Huey

2%

Dramatiq

5%

Other

40%

I don’t use any task queue library

Development tools

What is your primary text editor or IDE?

45%

VS Code

37%

PyCharm

5%

Vim

2%

Cursor

2%

Sublime Text

2%

Emacs

1%

Notepad++

5%

Other

What is your primary local operating system?

37%

macOS

33%

Linux

19%

Windows with WSL

10%

Windows without WSL

1%

Other

Which continuous integration (CI) system(s) do you use?

43%

GitHub Actions

24%

GitLab CI

9%

Jenkins/Hudson

3%

CircleCI

3%

AWS CodePipeline

3%

Azure Pipelines

2%

Google Cloud Build

1%

TravisCI

1%

TeamCity

4%

Other

34%

None

Which configuration management tools do you use?

18%

Ansible

6%

Custom solution

4%

Fabric

2%

Puppet

2%

Salt

1%

Chef

2%

Other

71%

None

Which infrastructure-as-code (IaC) tools do you use?

17%

Terraform

5%

AWS CloudFormation

3%

Vagrant

1%

Pulumi

1%

Puppet

1%

Azure Resource Manager

1%

Salt

1%

Google Cloud Deployment Manager

2%

Other

73%

None

Syntax and documentation

Do you use type hints in your Django code?

Which type checkers do you use?

46%

Just my IDE or editor

26%

Mypy

21%

Pyright / Pylance

14%

Pytype

2%

Other

9%

None

How much do you contribute to the documentation of the software you’re creating?

31%

Little, or hardly ever

30%

Some, or sometimes

26%

A lot, or often

13%

None, or never

Which of the following do you use to host and publish documentation for the software you create?

33%

readme

14%

GitHub Pages

14%

Read the Docs

10%

Atlassian Confluence

9%

MkDocs

2%

GitBook

6%

Other

25%

We self-host our documentation

30%

We don’t publish documentation

How do you use Swagger / OpenAPI?

70%

Generate a specification from our backend

58%

Use it for documentation purposes

20%

Write new code according to a given specification

2%

Other

Which systems and languages do you use to create and build documentation?

202220232024
64%57%62%Markdown
37%37%41%Swagger / OpenAPI
24%23%20%Sphinx
14%16%14%Postman
17%17%13%rST
13%16%10%wiki
8%8%6%Other
19%16%18%None
0%64%

All options with less than 5% have been merged into “Other”.

Which of the following principles do you adopt in authoring documentation for the software you’re creating?

82%

No explicitly adopted information architecture

28%

Formal documentation review

13%

Topic-based structure

12%

Code will not be merged without relevant documentation

11%

Explicit style guide for contributors

7%

Inclusive language

4%

Diátaxis

1%

DITA

4%

Other

Languages and frameworks

Is Python your main programming language?

83%

86%

Yes

13%

13%

No, I use Python as a secondary language

3%

1%

Other

Note: This year, we observed an unusually high number of respondents for whom Python was not the primary language. To account for this and maintain consistency with trends from the previous three years, we weighted the data accordingly. This adjustment helped eliminate anomalies and provided a clearer view of year-over-year changes.

Which other programming language(s) do you use in addition to Python?

70%

JavaScript

64%

HTML / CSS

44%

SQL

39%

Bash / Shell

27%

TypeScript

25%

C / C++

11%

Go

What is your main programming language?

This question was shown only to those who didn't choose Python as their main programming language in previous questions.

70%

C / C++

6%

JavaScript

5%

TypeScript

4%

Java

3%

PHP

2%

C#

2%

Go

Other than Django, which web frameworks do you use?

29%

React.js

28%

FastAPI

23%

Flask

18%

JQuery

18%

Vue.js

12%

Angular.js

11%

ASP.NET Core

Which web framework do you use the most?

77%

Django

4%

React.js

3%

ASP.NET Core

3%

Tornado

3%

Angular.js

2%

FastAPI

1%

Vue.js

Resources

Which of the following do you use to follow Django development?

60%

djangoproject.com

22%

YouTube

18%

Stack Overflow

18%

Reddit

15%

Django forum

12%

Django newsletter

9%

Friends

8%

Hacker News

7%

Podcasts

7%

X

6%

Discord

5%

Fediverse

4%

RSS

4%

Google Groups

1%

IRC

4%

Other

18%

I don’t follow Django development

Which of the following resources do you prefer to use to learn Django?

79%

djangoproject.com

39%

StackOverflow

38%

AI tools

38%

YouTube

33%

Blogs

22%

Books

13%

Friends / Coworkers

5%

Paid videos

5%

Podcasts

3%

Other

2%

None

William Vincent
Developer Advocate at JetBrains

AI tools are growing as a means of learning Django, while the shares of blogs, books, and even YouTube are all on the decline.

What web resources do you read or follow for Django, excluding the official Django channels?

Python versions

What do you typically use to upgrade your Python version?

45%

Python.org

29%

OS-provided Python

27%

Docker containers

23%

pyenv

10%

My IDE or editor

5%

Anaconda

3%

Build from source

Which version(s) of Python do you use?

2021202220232024
26%3.13
54%3.12
65%42%3.11
13%58%46%31%3.10
60%51%29%16%3.9
53%36%20%19%3.8
31%17%8%3%3.7
23%8%4%3%3.6 - 3.0
6%4%4%2%2.x
5%3%1%Other
2%2%4%2%I’m not sure
0%65%

Which of the following tools do you use to isolate Python environments?

59%

venv

46%

Docker

30%

Virtualenv

18%

Poetry

12%

Pipenv

10%

Vagrant / Virtual machines

7%

Conda

10%

Other

2%

None

Which code formatters do you use?

2021202220232024
35%51%52%40%Black
30%23%26%26%autopep8
18%28%29%21%isort
19%18%17%pre-commit
6%5%10%17%Other
35%28%24%25%None
0%52%

All options with less than 5% have been merged into “Other”.

Which linters do you use?

2021202220232024
40%43%37%34%Flake8
26%41%42%30%Black
28%Ruff
37%33%29%24%pylint
14%18%20%14%mypy
4%3%11%2%Other
26%23%21%22%None
0%43%

What are your top five favorite Python packages?

42%

Requests

35%

pandas

33%

Psycopg2

29%

Celery

28%

pytest

27%

NumPy

27%

Pillow

Cloud

Which cloud hosting platforms do you use?

38%

AWS

28%

DigitalOcean

21%

Google Cloud Platform

10%

OpenStack

9%

Microsoft Azure

9%

Heroku

8%

PythonAnywhere

5%

Linode

3%

Fly.io

1%

OpenShift

16%

Other

21%

None

Which container orchestration services do you use?

23%

Amazon ECS / Fargate

12%

Kubernetes

8%

Docker Swarm

8%

Amazon EKS

5%

Google Kubernetes Engine

3%

Azure Kubernetes Service

3%

Google Cloud Run

1%

OpenShift

1%

HashiCorp Nomad

4%

Other

50%

None

How do you run code in the cloud?

51%

Within containers

41%

In virtual machines

17%

On a platform-as-a-service

8%

Serverless

2%

Other

13%

I don’t use any of the above

How do you develop locally for the cloud?

56%

Locally with virtualenv

52%

In Docker containers

9%

In virtual machines

6%

In remote development environments

6%

With a local system interpreter

2%

Directly in the production environment

2%

Other

10%

None

Containers

Do you use Docker containers, or something similar?

57%

I use containers during development

44%

The application I build runs in containers in production

40%

Containers are used in the CI/CD process

2%

I use containers for another purpose

25%

No / I’m not sure

What do you run inside Docker containers?

91%

Application code that I develop or that my team develops

57%

Backing services that my code connects to

16%

Utilities I use during development

2%

Other

During development, where do you run your code?

63%

Inside a virtualenv

53%

Inside a container, on my computer

29%

Using the system interpreter on my computer

8%

Inside containers, on a different computer

5%

On a different computer outside of containers

1%

Other

How do you deploy code to remote containers during development?

58%

I use continuous integration

40%

I build the container image locally and then push the image

39%

I transfer code to the host machine and build the container there

13%

I connect to the Docker engine remotely

6%

Other

How do you debug your application?

80%

Using print or log statements

52%

Using my IDE

32%

Using shell / pdb

2%

Other

Do you debug your application on remote hosts or in containers?

29%

I only use log statements

24%

I frequently use a debugger on my application running remotely or in containers

19%

I've attached a debugger once or twice

27%

No

Community

Are you sponsoring any of the third-party libraries, frameworks, or tools that your projects rely on?

18%

Yes

82%

No

Are you aware of the funding options available to support the Django Software Foundation (DSF)?

51%

Yes

49%

No

Have you ever participated in Django-related events or meetups?

71%

No

21%

Yes, in a smaller Django meetup or local event related to Django

8%

Yes, in DjangoCon or an event of a similar size related to Django

Sarah Boyce
Django Fellow

DjangoCons are accessible to a small percentage of our community, and that's why local meetups and events should be celebrated. You can find information about meetups in your area on the Django website or attend/volunteer at a local Django girls event.

Would you like to see type hints added to Django core, and if so, would you contribute to the effort?

45%

Yes, and I would like to contribute

39%

Yes, but I would not contribute

16%

No

A strong majority of respondents (84%) are in favor of adding type hints to Django core, with almost half (45%) indicating a willingness to contribute themselves. This level of interest and engagement suggests that the topic is highly relevant to the community.

Which packages would you like to see integrated into Django core?

52%

django-cors

41%

django-environ

38%

django-extensions

28%

whitenoise

19%

dj-database-url

12%

django-csp

22%

Other

AI

Which of the following AI tools have you ever used or tried for Django development?

69%

ChatGPT

34%

GitHub Copilot

15%

Anthropic Claude

9%

JetBrains AI Assistant

7%

Cursor

7%

Google Gemini

7%

Codeium

Which of the following tasks do you use AI tools for while using Django?

56%

Code autocompletion

51%

Generating code

44%

Generating chunks of boilerplate, repetitive code

36%

Generating tests

35%

Explaining code

34%

Asking questions about software development and coding

33%

Generating code comments or code documentation

Demographics

Which types of projects do you work on using Django?

83%

Websites

41%

Business applications

41%

Web services

18%

DevOps / System administration / Writing automation scripts

16%

Data analysis / Data engineering

14%

Development tools

12%

Cloud services

Which kinds of websites do you develop?

61%

Business website

39%

Personal or portfolio websites

31%

Web interface for a product

29%

E-commerce website

21%

Blog / Social media / Forum platform

19%

Informational website

18%

Intranet portal

What is your current employment status?

65%

Fully employed by a company or organization

8%

Business owner or founder

7%

Self-employed

5%

Freelancer

5%

Student

4%

Partially employed by a company or organization

3%

Currently unemployed

2%

Working student

1%

Retired

1%

Other

What is your job role?

85%

Developer / Programmer / Software Engineer

16%

Team Lead

15%

Architect

13%

CTO / CIO / CEO

11%

Data Analyst / Data Engineer / Data Scientist

6%

Product Manager

5%

Instructor / Teacher / Tutor

What is your company size?

10%

Just me

20%

2–10 people

21%

11–50 people

19%

51–500 people

5%

501–1,000 people

6%

1,001–5,000 people

19%

More than 5,000 people

1%

Not sure

How many people work in your team?

9%

Just me

59%

2–7 people

13%

8–12 people

5%

13–20 people

2%

21–40 people

13%

More than 40 people

Do you work in a team or independently?

67%

I work in a team

30%

I work on my own project independently

3%

I work as an external consultant or trainer

How many projects do you work on?

52%

Many different projects

36%

One main project and several side projects

12%

Only one project

Which of the following industries best describes your company’s business?

27%

Information Technology / Software Development

8%

Accounting / Finance / Insurance

7%

Education / Training

6%

Medicine / Health

4%

Sales / Distribution / Business Development

4%

Non-profit

4%

Science

How many full years of professional coding experience do you have?

9%

Less than 1 year

13%

1–2 years

21%

3–5 years

26%

6–10 years

30%

11 years or more

How long have you been programming in Python?

4%

Less than 1 year

12%

1–2 years

28%

3–5 years

34%

6–10 years

22%

11 years or more

What is your age range?

4%

18–20

28%

21–29

38%

30–39

19%

40–49

7%

50–59

2%

60 or older

1%

I prefer not to answer

Which region are you based in?

41%

Europe

25%

North America

20%

Asia

8%

Africa

7%

South America

4%

Middle East

3%

Oceania

2%

Central America

2%

The Caribbean

2%

Other

Methodology and raw data

Want to dig further into the data?

Download the anonymized survey responses and see what you can learn! Share your findings and insights by mentioning @pycharm and @djangoproject on X, or @django on Fosstodon with the hashtag #djangosurvey. You can also join the conversation and share your ideas about this survey on the Django Forum or the Django Discord server.

Before dissecting the data, please note the following:

The data set includes responses only from official Django Software Foundation channels. The responses were collected from November 2024 to January 2025 through the promotion of the survey on official Django channels, such as djangoproject.com and the DSF's X account, with no involvement of any PyCharm channels. To minimize bias toward any specific tool or technology, no product-, service-, or vendor-related channels were used to collect responses.

This year, we observed a shift in our audience composition, with a significantly larger proportion of C/C++ users. As a result, the data may differ from previous years. With irrelevant or unreliable responses filtered out, the data set includes 4,655 responses.

Here are the filtering criteria we used:

Any response meeting any of the following conditions was filtered out:
  • Age 17 or younger.
  • Did not answer the question “How many full years of professional coding experience do you have?”.
  • Under 21 but has more than 11 years of professional coding experience.
  • Too many single answers for multiple-choice questions (excluding “None” answers).
  • Multiple responses from the same email address (we kept and used only one response).
Any response meeting two or more of the following conditions was also filtered out:
  • More than 10 programming languages used.
  • More than 8 job roles reported.
  • More than 10 choices selected in response to ​​“Which types of projects do you work on using Django?”.
  • Selected country/region is among the top of the list alphabetically and not among popular countries/regions.
  • Both “CEO” and “Technical Support Specialist” selected as job roles.
  • Both CEO and aged under 18.
  • Too many answers selected overall.
  • Answered too quickly (less than 5 seconds per question).

The data is anonymized, with no personal information or geolocation details. Moreover, to prevent the identification of any individual respondents by their verbatim comments, all open-ended fields have been deleted.

To help you better understand the logic of the survey, we are sharing the data set, the survey questions, and all the survey logic.

Once again, on behalf of both the Django Software Foundation and PyCharm, we’d like to thank everyone who took part in this survey.

If you have any questions or suggestions, please contact us at surveys@jetbrains.com.

Join the JetBrains Tech Insights Lab

Take part in surveys and UX studies to make JetBrains products easier to use yet even more powerful. For participating in our research, you'll also get the chance to earn rewards.

Thank you for your time!

We hope you found our report useful. Share this report with your friends and colleagues!

Share: