Skip to content
SPECIFICTION
Get listed

JSQLFormatter vs Sqruff

JSQLFormatter

manticore-projects.com

Sqruff

github.com

Side by side

FigureJSQLFormatterSqruff
Price fromFreeFree
Free planYesYes
Free trial——
Open source——
Web—Yes
WindowsYesYes
macOSYesYes
LinuxYesYes
Self-hostedYesYes
Plans published11
Spec score · SQL Linters and Formatters8.3 (#5)7.5 (#17)
ConfigurationIndent width, comma placement, and keyword, function and object casing can be configured per invocation, file or statement.Sqruff reads dialect and rule settings from a project `.sqruff` configuration file.
MakerManticore Projects describes itself as a consulting company for financial valuation, reporting and credit risk management.The GitHub organization describes Quary as an open-source analytics platform for engineers and lists the United Kingdom as its location.
PurposeJSQLFormatter is a platform independent SQL formatter, beautifier and pretty printer.Sqruff is a SQL linter and formatter written in Rust, focused on formatting valid SQL for specific dialects and providing fast linting and fixing.

Plans

JSQLFormatter

  • JSQLFormatterFree

JSQLFormatter pricing →

Sqruff

  • SqruffFree

Sqruff pricing →

In their own words

JSQLFormatter

JSQLFormatter formats SQL for terminal output, documents, and wikis, and is available as a Java library or command-line executable. It parses SQL with a grammar into an abstract syntax tree rather than relying on regular expressions. Supported statements include SELECT, INSERT, MERGE, UPDATE, DELETE, CREATE, and ALTER, including WITH clauses and nested sub-selects. The listed dialects cover Oracle, SQL Server, MySQL, MariaDB, PostgreSQL, H2, DuckDB, BigQuery, Redshift, Databricks, and Snowflake. Formatting can preserve comments between keywords or within join conditions, while leaving comment-like string literals unchanged. Users can configure indentation, comma placement, and the casing of keywords, functions, and objects, with settings applied per invocation, file, or statement. Output options include ANSI terminal highlighting, HTML, and RTF. A Java-source feature imports SQL strings while retaining variables and can export them as String, StringBuilder, or MessageFormat. JSQLFormatter is free. Its license is Apache 2.0 from version 5.4 onward; releases through 5.3 were AGPL. A NetBeans plugin is a platform target, while Eclipse, JEdit, Squirrel SQL, and DBeaver are listed as planned.

Visit manticore-projects.com

Sqruff

Sqruff is a free SQL linter and formatter written in Rust, focused on formatting valid SQL for particular dialects and providing linting and fixes. It offers configurable automated formatting, custom rules, and column-level data lineage analysis for SQL queries. Dialects include ANSI, Athena, BigQuery, ClickHouse, Databricks, DuckDB, MySQL, Oracle, Postgres, Snowflake, SQLite, and Trino, among others. Dialect and rule settings are read from a project `.sqruff` configuration file. Developers can use the maintained VS Code and Zed integrations, or an LSP server with other LSP-capable editors. A documented GitHub Action supports use in CI, and a browser playground is available. Installation options include Homebrew, a bash installer, pip, cargo, binary releases, and an official Docker image. The public repository provides an Apache-2.0 license. The project identifies dbt project support as experimental and is associated with Quary, an open-source analytics platform for engineers based in the United Kingdom.

Visit github.com