Best Tailwind CSS linters in 2026
Compare Tailwind CSS linting and class tools by what each checks, where it runs, and the setup each one needs.
SayDeploy is published by LunarWerx, which makes some of the tools compared here.
These tools check or tidy Tailwind classes in different places: the editor, ESLint, Prettier, your code, or CI. Match the tool to where you want problems caught.
| Option | Main role | Published version or setup detail |
|---|---|---|
| prettier-plugin-tailwindcss | Sorts classes in its recommended order. [1] | Prettier v3+ plugin for Tailwind CSS v3.0+. [1] |
| eslint-plugin-tailwindcss | ESLint plugin for Tailwind CSS usage. [2] | Made for Tailwind CSS v4; installs with npm as a dev dependency. [2] [2] |
| Tailwind CSS IntelliSense | Autocomplete, syntax highlighting and linting in Visual Studio Code. [3] | Needs tailwindcss installed to activate. [3] |
| tailwind-merge | Merges Tailwind CSS classes without style conflicts. [4] | Supports Tailwind v4.0 up to v4.3. [4] |
| NormWind | Finds class pairs that can be written as one shorthand. [5] | Install from npm as a dev dependency, or run with npx. [5] |
How to read this list
eslint-plugin-tailwindcss is an ESLint plugin for Tailwind CSS usage. [2] Tailwind CSS IntelliSense gives Visual Studio Code users autocomplete, syntax highlighting and linting. [3] prettier-plugin-tailwindcss sorts classes in its recommended order. [1] tailwind-merge merges Tailwind CSS classes without style conflicts. [4] NormWind finds class pairs like px-4 py-4 that can be written as one shorthand like p-4. [5]
Start with where you want feedback: in the editor, on save, in code, or in a pull request.
prettier-plugin-tailwindcss: sort classes in Prettier
prettier-plugin-tailwindcss is a Prettier v3+ plugin for Tailwind CSS v3.0+ that automatically sorts classes according to its recommended class order. [1] By default it sorts classes in class attributes, framework-specific equivalents, and Tailwind @apply directives. [1]
When using Tailwind CSS v4, you must specify your CSS file entry point. [1] The tailwindFunctions option takes function names so classes in function calls can be sorted. [1]
eslint-plugin-tailwindcss: Tailwind rules for ESLint
eslint-plugin-tailwindcss is an ESLint plugin for Tailwind CSS usage. [2] It is made for Tailwind CSS v4 and has 9 rules available, with more on the way. [2] [2]
It is available for free and installs as a development dependency with npm. [2] [2] It needs the cssConfigPath setting. [2] It can run linting inside a hosted repository's pipeline. [2]
Tailwind CSS IntelliSense: linting in Visual Studio Code
Tailwind CSS IntelliSense enhances the Tailwind development experience for Visual Studio Code users with autocomplete, syntax highlighting and linting. [3] Its linting highlights errors and potential bugs in CSS and markup. [3]
Hover Preview shows the complete CSS for a Tailwind class name. [3] The extension needs tailwindcss installed to activate. [3] For v4 and later, activation requires a CSS file that imports a Tailwind CSS stylesheet. [3]
tailwind-merge: merge classes without conflicts
tailwind-merge is a utility function to efficiently merge Tailwind CSS classes in JS without style conflicts. [4] It supports Tailwind v4.0 up to v4.3. [4]
It works in all modern browsers and maintained Node versions. [4] Its published declarations are compatible with TypeScript 3.8 and newer. [4] It is described as a merge function, so check whether you need merging or checking.
NormWind: audit Tailwind classes in code and CI
NormWind is made by the team that publishes this site. It finds class pairs like px-4 py-4 that can be written as one shorthand like p-4. [5] It also flags arbitrary values like rounded-[24px] that match a named Tailwind utility like rounded-3xl, using Tailwind's own logic to match named utilities. [5]
It can rewrite findings automatically in Vue, Svelte, Astro and HTML files, and a wider fix mode also covers JS, TS, JSX and TSX files. [5] --dry-run shows which files a fix would change without writing to disk. [5] Before merging classes it compares the generated CSS before and after, and skips the merge if they differ. [5]
It ships as a GitHub Action that annotates pull requests inline. [5] The audit exits 1 when it finds anything, so it can fail a CI job. [5] NormWind is free with no paid tier, under an MIT licence. [5] [5] It works with Tailwind CSS v4 projects. [5]
How to choose
If you use Visual Studio Code and want feedback while typing, Tailwind CSS IntelliSense provides linting there. [3] If your team already runs ESLint, eslint-plugin-tailwindcss adds Tailwind checks to ESLint. [2] If you want classes in a consistent order, prettier-plugin-tailwindcss sorts them. [1]
If you combine class strings in JavaScript, tailwind-merge resolves style conflicts. [4]
If you want shorthand and named-utility findings reported in pull requests, NormWind annotates them inline. [5] If an old codebase has many findings, --baseline records current per-file counts so only new findings fail CI. [5] --diff-base reports only findings on lines changed since a git ref such as origin/main. [5] Before choosing, check your Tailwind version, your editor, and whether you need reports or fixes.
Frequently asked questions
Is eslint-plugin-tailwindcss free?
eslint-plugin-tailwindcss is available to everyone for free. [2] It installs as a development dependency with npm, so it does not affect the final bundle size. [2] [2] It also needs the cssConfigPath setting, which can be an absolute or relative path. [2] [2]
Does Tailwind CSS IntelliSense lint Tailwind classes?
Tailwind CSS IntelliSense provides linting for Visual Studio Code users, along with autocomplete and syntax highlighting. [3] Its linting highlights errors and potential bugs in CSS and markup. [3] It needs tailwindcss installed to activate, so check your project setup first. [3]
What does prettier-plugin-tailwindcss do?
prettier-plugin-tailwindcss is a Prettier v3+ plugin for Tailwind CSS v3.0+ that automatically sorts classes according to its recommended class order. [1] By default it sorts classes in class attributes, framework-specific equivalents, and Tailwind @apply directives. [1] With Tailwind CSS v4 you must set the CSS entry point. [1]
Can NormWind fail a CI build?
The NormWind audit exits 1 when it finds anything, so it can fail a CI job. [5] The --baseline option records current per-file finding counts so only new findings fail CI. [5] It also prints output as text, JSON or SARIF 2.1.0 for GitHub code scanning. [5]
What is tailwind-merge used for?
tailwind-merge is a utility function to efficiently merge Tailwind CSS classes in JS without style conflicts. [4] It supports Tailwind v4.0 up to v4.3. [4] tailwind-merge is described as a merge function, so check whether you need merging or checking.
Is NormWind free?
NormWind is free with no paid tier. [5] It uses an MIT licence. [5] You can install it from npm as a dev dependency, or run it with npx. [5] It works with Tailwind CSS v4 projects, and its CI runs on Ubuntu, Windows and macOS. [5]
NormWind is free with no paid tier. [5]
Try NormWindSources
- prettier-plugin-tailwindcss, github.com/tailwindlabs/prettier-plugin-tailwindcss, read 2026-10-07
- eslint-plugin-tailwindcss, github.com/francoismassart/eslint-plugin-tailwindcss, read 2026-10-07
- Tailwind CSS IntelliSense, github.com/tailwindlabs/tailwindcss-intellisense, read 2026-10-07
- tailwind-merge, github.com/dcastil/tailwind-merge, read 2026-10-07
- NormWind's own description of itself (the product of this site's publisher)
Related comparisons
- Best Tailwind CSS linters for Tailwind CSS developers in 2026
- Best CSV import and field mapping tools in 2026
- Best Git GUI clients for developers in 2026
- Best local dev server managers in 2026
- Best NumPy acceleration libraries in 2026
- Best programming language syntax references in 2026
- AnatomyOf vs Codecademy in 2026: Pricing, Setup and Features
- AnatomyOf vs DevDocs in 2026: Pricing, Setup, Features
- AnatomyOf vs Exercism in 2026: Pricing, Setup and Features
- AnatomyOf vs Learn X in Y Minutes in 2026