Skip to content
SPECIFICTION
Get listed

SQLFluff vs TSQLLint

SQLFluff

sqlfluff.com

TSQLLint

github.com

Side by side

FigureSQLFluffTSQLLint
Price fromFreeFree
Free planYesYes
Free trial——
Open source——
WindowsYesYes
macOSYesYes
LinuxYesYes
APIYes—
Self-hostedYes—
Plans published11
Spec score · SQL Linters and Formatters8.0 (#10)7.4 (#19)
Auto-fixSQLFluff can automatically fix many linting violations with a single command.The command-line tool can fix problems it identifies as auto-fixable using the --fix or -x option.
PurposeSQLFluff is an open source, dialect-flexible SQL linter designed with ELT applications in mind.TSQLLint describes, identifies, and reports anti-patterns in TSQL scripts.
SecuritySQLFluff does not execute SQL itself, but templating macros such as dbt’s run_query may execute arbitrary SQL; its Jinja templater uses Jinja2 SandboxedEnvironment to limit unsafe code execution.The repository lists a security policy, but its security-policy page could not be opened during this research.
SupportThe project lists documentation, GitHub, Slack, and Stack Overflow as community channels.The repository provides issue and discussion navigation, but the opened project pages do not state a formal support offering.

Plans

SQLFluff

  • SQLFluffFree

SQLFluff pricing →

TSQLLint

  • TSQLLintFree

TSQLLint pricing →

In their own words

SQLFluff

SQLFluff is an open-source, dialect-flexible SQL linter designed for ELT applications. It reports style and syntax issues, parses SQL without database access and can automatically fix many violations with one command. Documentation describes support for more than 25 dialects, including T-SQL, PostgreSQL, BigQuery and Snowflake, alongside more than 70 rules for style, structure and best practices. Jinja templating and dbt are supported, and CI/CD integration includes GitHub Actions output for pull-request annotations. SQLFluff is free under the MIT License and installs from PyPI with pip or another Python package manager. It does not execute SQL itself, but templating macros such as dbt's run_query may execute arbitrary SQL. The Jinja templater uses Jinja2 SandboxedEnvironment to limit unsafe code execution. The dbt templater requires the relevant adapter and sqlfluff-templater-dbt package; models accessing a database during compilation require database access. Community support includes documentation, GitHub, Slack and Stack Overflow.

Visit sqlfluff.com

TSQLLint

TSQLLint checks T-SQL scripts for anti-patterns and reports the findings. Its command-line tool can correct issues it identifies as auto-fixable with the --fix or -x option. Rules can be set to off, warning, or error; an error-level violation produces a non-zero exit code. Users can save settings in a .tsqllintrc file, or use the tool’s in-memory defaults when no file is present. The listed SQL Server compatibility levels are 80, 90, 100, 110, 120, 130, 140, and 150. Custom .NET plugins can extend it if they implement TSQLLint’s IPlugin interface and target net6.0. Before linting, it substitutes SQL file placeholders with values from environment variables. Official installation methods include dotnet-tool, Homebrew, and NPM. Its VS Code extension marks potential problems in opened .sql files for inspection on hover, and SQL Server Management Studio can invoke it through External Tools. TSQLLint is free under the MIT License and runs on Linux, macOS, and Windows, with an editor extension also listed.

Visit github.com