Scalafix
Scalafix is a free refactoring and linting tool for Scala projects.
What Scalafix is
Scalafix is a free refactoring and linting tool for Scala projects. It can identify code patterns linked to production bugs or style violations, automate routine code-health work and run one-time migration scripts. Teams can apply linting and refactoring rules during code review; its check option fails when fixes or linting are needed. Syntactic rules work directly on source code, while semantic rules need compiled sources with the SemanticDB compiler plugin enabled. Built-in rules include OrganizeImports, RemoveUnused, DisableSyntax, ProcedureSyntax and RedundantSyntax. Developers can also write their own lint and rewrite rules using its public API. The official build integration is for sbt; documentation also lists externally maintained integrations for scala-cli, Mill, Gradle, Maven and Mega-Linter. The latter supports only built-in syntactic rules. Scalafix is tested on macOS, Linux and Windows, and documented tested Scala versions include 2.12.21, 2.13.18 and 3.9.0 LTS. It is no longer published for Scala 2.11 or sbt 0.13.x.
Good
- Free to use.
- Supports custom lint and rewrite rules.
- Rules can run during code review.
- Tested on macOS, Linux and Windows.
- Built-in rules cover imports and unused code.
Watch out
- No longer published for Scala 2.11.
- Semantic rules require SemanticDB-compiled sources.
- Mega-Linter supports only built-in syntactic rules.
- sbt-scalafix is no longer published for sbt 0.13.x.
Who it suits
Scalafix suits Scala developers and teams that want repeatable linting, automated refactoring or migration scripts. Semantic-rule users need compiled sources with SemanticDB enabled.
Verdict
Scalafix offers Scala-focused linting and refactoring, including custom rules and CI checks. Check its Scala version and build-tool requirements, especially if you need semantic rules or Mega-Linter.
The facts
Each one read from Scalafix's own pages, with the date it was checked.
What it does
- Build integration
- The official sbt plugin supports running rules across project configurations and main and test sources.checked 3 Oct 2026
- Build tools
- The documentation describes sbt support and lists externally maintained integrations for scala-cli, Mill, Gradle, Maven, and Mega-Linter.checked 2 Oct 2026
- Built-in rules
- The built-in rule list includes RemoveUnused, OrganizeImports, ExplicitResultTypes, and DisableSyntax.checked 3 Oct 2026
- CI
- Scalafix can enforce refactoring and linting rules during code review.checked 2 Oct 2026
- CI enforcement
- Scalafix can enforce refactoring and linting rules on code reviews, and its --check option fails when fixes or linting are needed.checked 3 Oct 2026
- Community support
- The project links to community discussion on Discord and Scala Users.checked 3 Oct 2026
- Custom rules
- Users can create custom linter and rewrite rules using the Scalafix public API.checked 3 Oct 2026
- Linting
- It reports errors for code patterns that can cause production bugs or violate coding style.checked 3 Oct 2026
- Mega-Linter limit
- The Mega-Linter integration supports only built-in syntactic rules.checked 2 Oct 2026
- Other build tools
- The documentation lists externally maintained support for scala-cli, Mill, Gradle, Maven, and Mega-Linter; Mega-Linter supports only built-in syntactic rules.checked 3 Oct 2026
- Purpose
- Scalafix is a refactoring and linting tool for Scala.checked 3 Oct 2026
- Refactoring
- It can automate day-to-day code health tasks and one-time migration scripts.checked 3 Oct 2026
- Rule types
- It supports syntactic rules that can run without compilation and semantic rules that require SemanticDB compiler output.checked 3 Oct 2026
- Scala support
- The installation guide lists Scala 2.12.21, 2.13.18, and 3.9.0 LTS as tested versions and says Scalafix is no longer published for Scala 2.11.checked 2 Oct 2026
- Semantic rule requirement
- Semantic rules require source files compiled with SemanticDB, and some rules also require compiler options such as unused-import warnings.checked 2 Oct 2026
- Support and community
- The Scalafix site links to community help on Discord and Scala Users.checked 2 Oct 2026
- Supported operating systems
- Scalafix is tested to work on macOS, Linux, and Windows; other setups may work but could behave unexpectedly.checked 2 Oct 2026
- Supported systems
- Scalafix is tested on macOS, Linux, and Windows.checked 3 Oct 2026
- Version limits
- The documentation says Scalafix is no longer published for Scala 2.11 and sbt-scalafix is no longer published for sbt 0.13.x.checked 3 Oct 2026
The company
- Founded
- 2016checked 28 Sep 2026
- Headquarters
- Lausanne, Switzerlandchecked 28 Sep 2026
- Maker
- The project site identifies Scala Center in its copyright notice.checked 3 Oct 2026
Alternatives to Scalafix
- 1

Sourcery
Free planWebAPIExtensionLinux7.9From $12 a month - 2

Moderne
WebAPILinuxmacOS7.3From $2,000 a month - 3

ast-grep
Free planWebAPIExtensionLinux7.0Free plan - 4

ReSharper
Free planExtensionLinuxmacOSWindows6.8From $389 a year - 5
jSparrow
LinuxmacOSWindows6.4From $1,325 a year - 6

CodeRush
Free planExtensionLinuxmacOSWindows6.3Free plan
