---
{"title": "NormWind vs eslint-plugin-tailwindcss in 2026", "description": "NormWind and eslint-plugin-tailwindcss compared on what each does, price, setup and what to check before choosing a Tailwind CSS linter.", "url": "https://saydeploy.com/normwind-vs-eslint-plugin-tailwindcss/", "date": "2026-10-23"}
---
NormWind and eslint-plugin-tailwindcss compared on what each does, price, setup and what to check before choosing a Tailwind CSS linter.

The plugin is an ESLint plugin for Tailwind CSS usage [^1]. NormWind finds Tailwind class patterns that can be written shorter [^2]. NormWind is free with no paid tier [^2].

| Option | Price | Install | Tailwind CSS version |
|---|---|---|---|
| eslint-plugin-tailwindcss | Free for everyone [^1] | npm i -D eslint-plugin-tailwindcss [^1] | Made for Tailwind CSS v4 [^1] |
| NormWind | Free with no paid tier [^2] | Dev dependency from npm, or npx [^2] | Tailwind CSS v4 projects [^2] |

## The short answer

eslint-plugin-tailwindcss is an ESLint plugin for Tailwind CSS usage [^1]. NormWind finds Tailwind class pairs like px-4 py-4 that can be written as one shorthand like p-4 [^2].

If needed, the plugin's page says it supports ESLint v10 [^1] and provides a separate 3.x.x release for Tailwind CSS v3 or older ESLint versions [^1]. NormWind's sources cover shorthand findings [^2], automatic fixes [^2], pull request annotations [^2] and a CI check that can fail a job [^2].

## What eslint-plugin-tailwindcss is built for

Its page describes it as an ESLint plugin for Tailwind CSS usage [^1]. It supports ESLint v10 [^1].

For Tailwind CSS v3 or older ESLint versions, the project points to the 3.x.x releases of the plugin [^1].

The setup section below covers installation and daily use.

## What NormWind is built for

NormWind is made by the team that publishes this site.

It finds Tailwind class pairs like px-4 py-4 that can be written as one shorthand like p-4 [^2]. It also flags arbitrary values like rounded-[24px] that match a named Tailwind utility like rounded-3xl, using Tailwind's own canonicalizeCandidates engine [^2].

The --fix option rewrites findings in Vue, Svelte, Astro and HTML files, and --fixall also covers JS/TS/JSX/TSX files [^2]. The --dry-run option shows which files a fix would change without writing to disk [^2]. Before merging classes it compares the generated CSS before and after, and skips the merge if they differ [^2].

Output can be text, JSON or SARIF 2.1.0 for GitHub code scanning [^2]. It ships as a GitHub Action that annotates pull requests inline [^2]. The --diff-base option reports only findings on lines changed since a git ref such as origin/main [^2].

## Pricing and fees

The table lists the published price information. The plugin's page gives no other price, so no other price is published here.

NormWind is free with no paid tier [^2]. It uses the MIT licence [^2].

Check each tool's own pages for any subscription prices or usage charges, because the provided sources do not state those details.

## Setting it up and daily use

The plugin can be installed as a development dependency with npm using npm i -D eslint-plugin-tailwindcss [^1]. It can also be installed with other package managers such as pnpm [^1]. The facts here say nothing more about its daily use.

NormWind installs from npm as a dev dependency, or runs with npx [^2]. It works with Tailwind CSS v4 projects, and its CI runs on Ubuntu, Windows and macOS [^2].

Day to day, the audit exits 1 when it finds anything, so it can fail a CI job [^2]. The --baseline option records current per-file finding counts so only new findings fail CI [^2].

## Things to check before you choose

Check which Tailwind CSS version you use. NormWind's claims speak of Tailwind CSS v4 projects [^2].

Check whether you already run ESLint, and which version. The plugin's page mentions ESLint v10 support [^1]. Check NormWind's own pages for how it relates to ESLint, since the claims here do not cover it.

Check which file types you want fixed automatically. NormWind's --fix covers Vue, Svelte, Astro and HTML files, and --fixall also covers JS/TS/JSX/TSX files [^2]. The plugin's facts here do not list fix behaviour, so check its page.

Check how your CI reads results. NormWind prints SARIF 2.1.0 for GitHub code scanning [^2].

## How to choose

If you want an ESLint plugin for Tailwind CSS usage, that is what the plugin's page describes [^1].

If you want a plugin that supports the ESLint version you run, its page mentions ESLint v10 support [^1].

If you want shorthand findings such as p-4 in place of px-4 py-4, NormWind's claims describe that [^2].

If you want arbitrary values matched to named utilities, NormWind's claims describe that [^2].

If you want a preview of fixes before they write to disk, NormWind's claims describe --dry-run [^2].

If you want only new findings to fail CI, NormWind's claims describe --baseline [^2].

If you want a free tool, NormWind's claims say so [^2].

## Frequently asked questions

### Is eslint-plugin-tailwindcss free?

The table lists the published price information. Check the project's own pages if you need more detail on future plans or support.

### Is NormWind free and open source?

NormWind is free with no paid tier [^2]. It uses the MIT licence [^2]. The claims here state no other price, so no other price is published here [^2].

### How do you install eslint-plugin-tailwindcss and NormWind?

The plugin installs as a dev dependency with npm i -D eslint-plugin-tailwindcss [^1]. NormWind installs from npm as a dev dependency, or runs with npx [^2].

### Which Tailwind CSS versions does eslint-plugin-tailwindcss work with?

Its page says it is made for Tailwind CSS v4 [^1]. For Tailwind CSS v3 or older ESLint versions, its page points to eslint-plugin-tailwindcss@3.x.x [^1]. NormWind works with Tailwind CSS v4 projects [^2].

### Can NormWind fix Tailwind classes automatically?

The --fix option rewrites findings in Vue, Svelte, Astro and HTML files, and --fixall also covers JS/TS/JSX/TSX files [^2]. The --dry-run option shows which files would change without writing to disk [^2]. Before merging classes it compares generated CSS before and after, and skips the merge if they differ [^2].

NormWind is free with no paid tier. [^2] - [Visit NormWind](/go/normwind-vs-eslint-plugin-tailwindcss)

## Sources

[^1]: eslint-plugin-tailwindcss, github.com/francoismassart/eslint-plugin-tailwindcss, read 2026-10-07 (https://github.com/francoismassart/eslint-plugin-tailwindcss)
[^2]: NormWind's own description of itself (the product of this site's publisher) (/go/normwind-vs-eslint-plugin-tailwindcss)
