detekt
detekt.dev
What it is
detekt is a free static code analyzer for Kotlin that helps identify code smells. It supports Android, JVM, JS, Native, and Multiplatform projects, and runs on Linux, macOS, and Windows. Developers can configure rule sets, create baselines for existing issues, and suppress findings with @Suppress annotations. Reports can be generated as HTML, Markdown, SARIF, Checkstyle XML, or custom formats; complexity reports can include lines of code, cyclomatic complexity, and code smell counts. The project provides a Gradle plugin and documents use with Gradle, Maven, and Bazel builds. Its Gradle plugin requires Gradle 6.8.3 or higher. Custom rule sets can be added through detekt's RuleSetProvider and ServiceLoader pattern, and the marketplace lists community rules, extensions, and plugins. CLI installation guidance covers Homebrew on macOS, Scoop on Windows, SDKMAN on Unix-like systems, and NixOS. detekt supports autofix, IDE use, and CI. Its security policy says patches are applied up to the current minor version, with earlier versions handled case by case.
Spec sheet
- Purpose
- detekt is a static code analyzer for Kotlin that helps identify code smells.Read 4 Oct 2026 · detekt.dev
- Build integrations
- The project provides a Gradle plugin and documents use with Gradle, Maven, and Bazel builds.Read 4 Oct 2026 · detekt.dev
- CLI downloads
- The CLI installation guide documents Homebrew on macOS, Scoop on Windows, SDKMAN on Unix-like systems, and NixOS installation.Read 4 Oct 2026 · detekt.dev
- Community integrations
- The project marketplace lists community-built rules, extensions, and plugins, including a GitLab Code Quality reporter and ktlint rule wrappers.Read 4 Oct 2026 · detekt.dev
- Community support
- The project site links to Kotlin Slack and Stack Overflow for community discussion.Read 4 Oct 2026 · detekt.dev
- Complexity reports
- detekt can report lines of code, cyclomatic complexity, and code smell counts.Read 4 Oct 2026 · detekt.dev
- Extensibility
- Developers can add custom rule sets using detekt's RuleSetProvider and ServiceLoader pattern.Read 4 Oct 2026 · detekt.dev
- Gradle requirement
- The Gradle plugin guide states that detekt requires Gradle 6.8.3 or higher.Read 4 Oct 2026 · detekt.dev
- Project types
- The site says detekt supports Android, JVM, JS, Native, and Multiplatform projects.Read 4 Oct 2026 · detekt.dev
- Reports
- Supported report formats include HTML, Markdown, SARIF, Checkstyle XML, and custom reports.Read 4 Oct 2026 · detekt.dev
- Rules
- Users can configure rule sets, generate baselines for existing issues, and suppress findings with @Suppress annotations.Read 4 Oct 2026 · detekt.dev
- Security support
- The security policy says patches are applied up to the current minor version and earlier versions are considered case by case.Read 4 Oct 2026 · github.com
- Vulnerability reporting
- The security policy asks reporters to email [email protected] and says the team commits to respond within two weeks.Read 4 Oct 2026 · github.com
Plans and prices
Strong points and limits
Strong points
- Free, with no commercial limits stated
- Supports five project types
- Reports include HTML, Markdown, and SARIF
- Custom rule sets are supported
Limits
- Gradle plugin requires Gradle 6.8.3 or higher
- Security patches cover the current minor version
Who it suits
detekt suits Kotlin developers who want configurable static analysis in builds, IDEs, or CI. It also fits teams needing multiple report formats or custom rules.
Verdict
detekt provides configurable Kotlin analysis with multiple reports and build integrations at no listed cost. Check the Gradle requirement and patch policy when choosing how to use it.
Where Specifiction places it
- Linters#16 of 337.8