The Best JavaScript & TypeScript Linters
From the ESLint standard to the new wave of Rust linters, ranked on rule coverage, speed, DX, and cost.
Last updated Jul 3, 2026
JavaScript and TypeScript linting is in the middle of a shift: ESLint still owns the ecosystem, while Rust-based tools like Biome and Oxlint chase it on raw speed. We compared the linters JS/TS teams actually deploy, scoring each on how much it catches, how fast it runs on real codebases, how painful it is to set up, and what it costs. Everything here is free and open-source; outbound links are labelled and never affect the ranking.
-
1
ESLint
Our pickThe mature, endlessly pluggable standard for linting JavaScript and TypeScript projects.
8.2/ 10Pros
- + The largest rule and plugin ecosystem of any JS/TS linter, covering nearly every framework and style guide
- + Type-aware linting through typescript-eslint catches issues that syntax-only linters miss
- + Free and open-source (MIT) with universal editor and CI support
Cons
- − Flat config and plugin sprawl make setup more involved than newer alternatives
- − Slower than Rust-based linters on very large repositories
- − Full type-aware linting adds meaningful configuration and run-time cost
From $0.00Visit ESLint -
2
Biome
Best valueA fast Rust linter and formatter for JS/TS that aims to replace ESLint plus Prettier in one binary.
8.5/ 10Pros
- + Lints and formats in one very fast binary, collapsing two tools into a single dependency
- + Near-zero-config defaults and one config file make onboarding quick
- + Free and open-source (MIT) with strong first-party editor integration
Cons
- − Rule coverage and third-party plugins trail ESLint significantly
- − Limited to the JS/TS/JSON/CSS family of languages
- − Some framework-specific and advanced rules are still missing
From $0.00Visit Biome -
3
Oxlint
Best for teamsAn extremely fast Rust JS/TS linter designed to run in a fraction of ESLint's time.
8.4/ 10Pros
- + Blazingly fast — routinely 50x or more quicker than ESLint on large repos
- + Runs usefully with zero configuration and a large set of ported rules out of the box
- + Free and open-source (MIT), and can run alongside ESLint during migration
Cons
- − Younger project with narrower rule and plugin coverage than ESLint
- − Type-aware linting is limited compared with typescript-eslint
- − Custom-rule authoring is far less mature than ESLint's plugin API
From $0.00Visit Oxlint -
4
StandardJS
Best for beginnersA zero-config, opinionated JavaScript linter and style enforcer with no rules to bikeshed.
6.8/ 10Pros
- + Truly zero-config — install and lint with a single fixed, sensible rule set
- + Eliminates style arguments and onboarding friction for small teams
- + Free and open-source (MIT), built on the trusted ESLint engine
Cons
- − No configurability by design, so teams with custom conventions cannot adapt it
- − Inherits ESLint's speed, so it is slow relative to Rust-based tools
- − TypeScript support and modern tooling lag behind mainstream ESLint configs
From $0.00Visit StandardJS -
5
quick-lint-js
A tiny, near-instant JavaScript linter focused on catching obvious bugs as you type.
7.4/ 10Pros
- + Extremely fast with real-time, as-you-type feedback in editors
- + Zero configuration and immediately useful for catching obvious mistakes
- + Free and open-source with a very small footprint
Cons
- − Deliberately narrow rule set — not a replacement for a full linter
- − No configurable rules or plugin ecosystem
- − Limited TypeScript and framework-specific coverage
From $0.00Visit quick-lint-js
Side-by-side
| Product | Rule coverage & ecosystem | Setup & developer experience | Speed on large codebases | Cost & licensing | Overall |
|---|---|---|---|---|---|
| ESLint | 9.6 | 7.5 | 6.0 | 10.0 | 8.2 |
| Biome | 7.2 | 8.8 | 9.5 | 10.0 | 8.5 |
| Oxlint | 6.8 | 8.5 | 9.9 | 10.0 | 8.4 |
| StandardJS | 5.5 | 8.0 | 5.8 | 10.0 | 6.8 |
| quick-lint-js | 4.5 | 8.2 | 9.7 | 10.0 | 7.4 |
How we scored this
Each linter is scored on four weighted criteria: rule coverage and ecosystem (weight 3), speed on large codebases (2), setup and developer experience (2), and cost and licensing (1). Scores reflect our own hands-on testing and the tools' documented behaviour, not vendor numbers. Rankings are editorial and independent of any affiliate relationship.