Kotlin Census
2020

Introduction

This report shows the results of the Kotlin Census Survey conducted by JetBrains. We surveyed 6,696 developers at the beginning of 2020, and their answers have helped us recognize the trends, patterns, and state of our language. We now better understand the adoption of Kotlin in development teams, the methods and materials developers use to learn Kotlin, its place in college and university education, and much more.

To minimize possible bias against non-English-speaking respondents, we offered the survey in four additional languages: Chinese, French, Japanese, and Korean.

Key highlights

Kotlin has definitely matured as a language since the last Kotlin Census. There is an increase in its adoption at larger companies, in its use in production code, and it being chosen as a main language. All this indicates that there is an upward trend for using Kotlin as a language for industry and professional development. The time of experiments has gone — now it's time for achievements!

66%

of Kotlin users use the language in production, up from last year’s 57%.

56%

of respondents have chosen Kotlin as their main language, up from 39% last year.

4.43

is the mean average rating for experience with the Kotlin plugin for IntelliJ IDEA.

Developers recommend Kotlin first and foremost for Android and server-side development. Every 5th user recommends it for multiplatform development.

Use of Coroutines increased to 56% from 45% in 2018.

The geography of the respondents

11% 9% 7% 6% 6% 6% 5% 4% 3%RussiaUnited StatesGermanySouth KoreaBrazilChinaIndiaFranceUnited Kingdom
Show more

We reached Kotlin users living in 122 different countries. “Other” includes countries with fewer than 1%.

Community Portrait

We open our report with a section describing the people in the Kotlin community. From this section you can get insights about age, years of professional experience, employment status, job roles, and many other interesting facts about the Kotlin community.

Age

18–2021–2930–3940–4950–5960 or older18–203%21–2944%30–3937%40–4912%50–594%60 or older1%

Years of professional coding experience

Less than 1 year1–2 years3–5 years6–10 years11+ yearsI don't have anyprofessional codingexperienceLess than 1 year5%1–2 years13%3–5 years29%6–10 years25%11+ years27%I don't have any professional coding experience1%

Employment status

82% 6% 5% 4% 2% 1% 1%Fully employed by a company / organizationFreelancerWorking studentSelf-employedPartially employed by a company / organizationRetiredOther

Job roles

2020
2018
92%/91%19%/27%17%/22% 5%/0% 5%/6% 2%/4% 2%/2% 2%/3% 1%/2% 1%/2% 1%/1% 2%/2%Software engineer / DeveloperSoftware architectProject lead / Team leadDevOps / Infrastructure DeveloperSystems analyst / EngineerCIO / CEO / CTOTeacher / ProfessorUX / UI designerData analyst / Data scientistData architect / DBAQA engineerOther

Company size

2020
2018
3%/9% 8%/13%20%/20%33%/28% 7%/6%13%/11%15%/12% 1%/2%Just me2–1011–5051–500501–1,0001,001–5,000More than 5,000Not sure

Target industries respondents develop for

42%21%17%14%13%10% 9% 9% 8% 8% 8%Information technology / Software developmentAccounting / Finance / InsuranceBanking / Real estate / Mortgage financingSales / Distribution / Business developmentLogistics / TransportationMedicine / HealthEducation / TrainingBusiness / Strategic managementAdministration / ManagementService / MaintenanceMarketing
Show more

Company’s line of work

Develops own product(s)
Provides software development services
A bit of both
Other
57%25%15%3%

Size of project team

5%24%33%17%10% 6% 5%I am the only one2–4 people5–8 people9–12 people13–20 people21–40 peopleMore than 40 people

Main programming language

2020
2018
56%/39%25%/43% 3%/3% 3%/3% 2%/3% 2%/1% 2%/0% 1%/2% 1%/0% 1%/1% 1%/1% 1%/1% 2%/4%KotlinJavaJavaScriptPythonC#PHPTypeScriptC++DartGoScalaSwiftOther (C, Clojure, Objective-C, etc.)

Additional programming languages

67%48%47%32%23%14%13%11%10%KotlinJavaJavaScriptPythonTypeScriptC#C++GoPHP
Show more

The most frequent combination of languages from 49% of respondents in this survey was Kotlin as the main programming language with Java used additionally. The second most popular combination is Java with Kotlin. The third is Kotlin with JavaScript.

Experience with using Kotlin

2020
2018
18%/20%17%/24%28%/33%32%/20% 5%/2%Less than 6 months6 months to less than 1 year1 year to less than 2 years2 years to less than 4 yearsMore than 4 years

User group membership

I am not a member of any user groups
I’m a member of a Kotlin User Group
I’m a member of another user group
74%18%8%

Kotlin news sources

49%30%29%21%21%17% 9% 6%17%Kotlin blogKotlin websiteKotlin twitterRedditKotlin weeklyKotlin SlackKotlin forumOtherNone

Adoption

This section contains insights into the behavior of the community concerning Kotlin adoption. It explores how people use Kotlin, how often they use it, why people don’t use Kotlin yet, and much more. It also covers which roles in a development team are more likely to become advocates for Kotlin, and the methods and materials respondents prefer to use for learning.

What do respondents develop in Kotlin?

2020
2018
63%/58%40%/48%17%/26% 9%/15% 5%/16% 5%/0% 5%/11%MobileWeb Back-endLibrary or frameworkToolingDesktopSystems programmingWeb Front-end
Show more

Platforms targeted with Kotlin

65%Kotlin/Android
48%Kotlin/JVM Server
15%Kotlin/JVM Other
10%Kotlin/Native
6%Kotlin/JS

Plans to try Kotlin for other platforms

43%28%27%25%17%12%Yes, Kotlin/NativeNoYes, Kotlin/ServerYes, Kotlin/JSYes, Kotlin/AndroidYes, Kotlin/JVM Other

How Kotlin is being used

2020
2018
66%/57%11%/12% 6%/5% 6%/13% 6%/10% 2%/2% 1%/0% 1%/1% 1%/0%In production codeI am only learning Kotlin for nowI don’t use KotlinOn not-yet-released projectsOnly in pet projectsI have used Kotlin before, but I don't anymoreI teach KotlinOnly to test production codeOther

Inspiration to try Kotlin

62%60%59%57%44%34%33%22%15%11% 9% 8% 5% 4% 5%Null SafetyModern Java ReplacementJava interoperabilityLess code neededFunctional programming styleGoogle recommends it for AndroidEase of learningOpen sourceCoroutinesDomain-Specific LanguagesCross-platform development featuresWelcoming communityMost love languages at StackOverflowI don't rememberOther

Looking for inspiring stories to try Kotlin?

Check out the case studies of leading worldwide companies that use Kotlin in production.

Frequency of usage

33%32%14% 7% 6% 5% 3% 1%Every working dayEverydaySeveral times a weekSeveral times a monthOnce a month or less oftenAt least one day every weekEvery weekendOther

More than half of respondents write 70% or more of their daily code in Kotlin.

Who initiates the adoption of Kotlin in teams?

72%16% 5% 4% 4%DevelopersTeam lead / Project managerI'm not sureCompany managementOther

First exposure

19%14%12%12%10% 9% 8% 6% 4% 3% 1% 4%At workGoogle announcementSocial media (Twitter, Facebook, etc.)Through knowledge or usage of JetBrains product(s) (IntelliJ IDEA, ReSharper, PhpStorm, TeamCity, etc.)Technical articleFriends' recommendationsI don’t remember howBlog postAt college / university / during other studiesSearch enginePodcastOther

Helpful learning resources

2020
2018
55%/64%52%/72%52%/59%49%/51%38%/33%35%/31%34%/26%Stack OverflowBlog postsSite documentationSamples and examples on githubBooks (e.g. "Kotlin in Action", "Kotlin for Android Developers", etc.)Conferences and meetupsJava -to-Kotlin converter
Show more

Tasks Kotlin is recommended for

81%62%18%13% 9% 7% 7% 4% 1%Android application developmentServer-side application developmentMultiplatform mobile developmentScriptingMultiplatform web developmentWeb front-end application developmentInfrastructure building/managementiOS application developmentOther

Reasons for not adopting Kotlin

35%33%18%15%14%14%11%10% 4% 4% 4%Lack of information about Kotlin, its environment and why should I start using itI lack Kotlin skillsIt’s difficult to start with a new languageI see no value in itMy team mates don't want to adopt a new languageLow adoption of the languageMy management doesn't allow itWeak ecosystemLack of documentationLack of tooling featuresWeak integration with JavaScript tools
Show more

Ecosystem

This section demonstrates what tools, frameworks, libraries, serverless technologies, and so on the Kotlin community is using.

You can also find insights on the Gradle Kotlin DSL and popularity of Kotlin usage for task automation in this section.

Main IDE for Kotlin development

2020
2018
51%/44%34%/37%14%/17% 1%/2%Android StudioIntelliJ IDEA UltimateIntelliJ IDEA CommunityOther

90%

of respondents rated their overall experience with the Kotlin plugin as 4 or 5 out of 5.

Build tools usage

2020
2018
88%/85%29%/24%16%/14% 2%/2% 3%/2%GradleMavenIntelliJ IDEA build systemANTOther

Do you use the Gradle Kotlin DSL?

2020
2018
42%/32%48%/68%10%/0%YesNoNot anymore

Usage of JetBrains Kotlin libraries and frameworks

2020
2018
56%/45%23%/19%22%/0%19%/18% 6%/6% 5%/6%kotlinx.coroutineskotlin.testkotlinx.serializationKtorExposedkotlinx.html
Show more

Most used kotlinx.coroutines features

Only Coroutines users were asked this question.

99%Basic coroutines
31%Channels
30%Flows
1%Other

Usage of other Kotlin libraries and frameworks

2020
2018
41%/0%34%/0%28%/19%27%/27%24%/23%23%/20%21%/16%21%/11%19%/10%19%/0%gsonRxJavajacksonSpring/Spring Bootmockito-kotlinRxKotlinktlintMockKKoinTimber
Show more

Top-10 Android-specific Kotlin libraries and frameworks

78%67%59%53%44%36% 2% 3%Kotlin Android ExtensionsAndroid KTXJetpack LiveDataJetpack RoomData bindingView bindingSplittiesOther

Do you use serverless computing?

Yes
No
26%74%

Most used language for serverless

36%33%33%30%27%19%JavaNode.jsKotlin/JVMPythonJavaScriptTypeScript
Show more

Popularity of cloud providers

70%AWS Lambda by AmazonWeb Services (AWS)
28%Cloud Functions by GoogleCloud
11%Azure Functions byMicrososft Azure
2%I don’t know
8%Other

Task automation

71%58%54%17%12%11% 8% 1%BuildDeploymentTestingMonitoringWe don't have any automated tasksData processingI don’t knowOther

Languages used for automation scripting

40%40%32%31%28% 7% 1% 9%Shell ScriptingBash/zsh/etc.GroovyPythonKotlinI don't knowPerlOther

56%

of respondents use 2 or more scripting languages for task automation.

Multiplatform

This section provides an overview of how the community uses Kotlin Multiplatform Projects for sharing code across platforms in the applications.

If you want to learn more about the benefits of multiplatform, please visit this section of the Kotlin website.

Do you use Multiplatform Projects for sharing your code across platforms?

Yes
No
13%87%11%89%20202018

79% of respondents would like to try Multiplatform Projects in the future.

Multiplatform Projects usage

Only Multiplatform Project users were asked this question.

74%55%48%36%20%18%16%15% 3% 1%AndroidiOSJVMJavaScript in the browserLinuxWindowsMacJavaScript in node.jsEmbedded systemsOther

The most popular combinations for cross-platform apps with Kotlin Multiplatform Projects (MPP) are Android and iOS (53% of MPP users), Android and JVM (26% of MPP users), and JVM and JavaScript in the browser (26% of MPP users).

Parts of projects shared across multiple platforms

2020
2018
60%/64%49%/50%41%/39%32%/0%22%/20%21%/25%13%/7%12%/21%12%/7% 6%/6% 5%/6% 5%/3%Algorithms and data structuresData formatCommunication protocolsData storageValidation rulesTestsUIEverythingSecurityRPC, RMIML modelsOther

Kotlin Multiplatform Mobile

The natural way to share code between mobile platforms.

Create your first project using our step-by-step guide.

Application types respondents would like to try Multiplatform Projects for

64%55%30%27%20%18%18%12% 5% 1%AndroidiOSJVMJavaScript in the browserLinuxWindowsMacJavaScript in node.jsEmbedded systemsOther

Kotlin Multiplatform Web

Build connected applications and share logic between the server and the client-side running in the browser.

Try it out using our step-by-step guide.

Ktor
An asynchronous framework for creating connected web applications, and more. It’s fun, free, and open source.
Check it out

Kotlin for Server-side

This section is highlighting patterns of Kotlin usage among web backend developers.

If you’re using Kotlin for server-side development or looking at Kotlin for the future, check out our Kotlin Server landing page. It contains all the essential information about Kotlin tooling, libraries, and industrial use cases.

The charts in this section are based on the answers from the respondents who checked “Web backend” in the question “What types of software do you currently develop in Kotlin?” There were 1989 answers in total.

Platforms targeted with Kotlin

JVM ServerAndroidJVM OtherJSNativeI don't knowJVM Server94%Android29%JVM Other19%JS10%Native8%I don't know1%

Main Kotlin development IDE

2020
2018
70%/63%20%/22%10%/13% 0%/3%IntelliJ IDEA UltimateIntelliJ IDEA CommunityAndroid StudioOther
IntelliJ IDEA for Kotlin
A capable and effective IDE for the JVM and beyond.
Check it out

Build tool usage among server-side developers

2020
2018
83%/78%44%/38%15%/15% 2%/2% 1%/1%GradleMavenIntelliJ IDEA build systemANTOther

58%

of respondents who use Kotlin for web backend development use the Gradle Kotlin DSL.

Top 10 Kotlin libraries and frameworks for web backend development

57%56%56%32%31%30%28%25%25%21%Spring/Spring Bootkotlinx.coroutinesjacksonMockKkotlin.testKtormockito-kotlingsonktlintkotlinx.serialization

JDK versions

2020
2018
15%/0% 8%/0%52%/30% 4%/8% 4%/7%72%/86% 3%/7% 2%/5% 1%/2%JDK 13JDK 12JDK 11JDK 10JDK 9JDK 8JDK 7JDK 6I don’t know

Do you use the Java module system?

2020
2018
74%/74%17%/17% 8%/9%NoYesI don’t know

Do you use Multiplatform Projects for sharing code across platforms?

No
Yes
88%12%

Kotlin for Web Frontend

At the moment, according to our analytics, there are over 12,000 projects using Kotlin/JS. As the number of Kotlin use cases for web development with Kotlin is so significant, we just had to dive into the data to learn how exactly respondents are using Kotlin/JS, where they run JavaScript code compiled from Kotlin, and which libraries and frameworks they prefer.

97% of respondents use Kotlin/JS together with Kotlin on the server side of their web applications.

The charts in this section are based on the answers from those respondents that checked “Web Frontend” to the question “What types of software do you currently develop in Kotlin?” There were 255 answers in total.

Platforms targeted with Kotlin

JVM ServerJSAndroidJVM OtherNativeI don't knowJVM Server84%JS51%Android45%JVM Other27%Native21%I don't know1%

Purpose of Kotlin/JS usage

74%To write the whole frontend
69%To share code between thefrontend and the backend
6%Other

Kotlin/JS build approach

52%25%23%15% 5% 9%I use the new Kotlin/JS Gradle plugin with webpackI use custom Gradle logicI use the Kotlin Frontend pluginI use the create-react-kotlin appI manually call the Kotlin compilerOther

Most popular UI frameworks

ReactAngularVue.jsWeb ComponentsPolymerOtherNoneReact52%Angular15%Vue.js11%Web Components8%Polymer2%Other16%None24%

Do you use Multiplatform Projects for sharing code across platforms?

No
Yes
57%43%

The most popular combinations of platforms for code sharing are JVM and JavaScript in the browser (69%) and Android and JavaScript in the browser (34%).

Kotlin in Universities

Over 2019–2020, Kotlin has grown as a language of choice for many educators at universities, colleges, and schools.

We’ve asked a few questions about Kotlin in education and are happy to share insights gained from the Kotlin Census here.

Does your university / school / college offer one or more Kotlin courses?

83%No
7%Yes, as an optional course
7%I don’t know
4%Yes, as a required course

Places where Kotlin is taught

62%University
14%College
9%High school
25%Other

Kotlin Census 2020 Raw Data

These infographics include only the most interesting facts. You are welcome to dig deeper into the raw data and find more insights if you are interested:

Download Raw Data

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

Thank you for your time!

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

Participate in future surveys

By submitting this form I agree to the JetBrains Privacy Policy

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