SQL Formatter

Pretty-print SQL with consistent indentation and uppercase keywords. Select your dialect, paste a query, and click Run.

  • Runs entirely in your browser
  • No data stored or sent to a server
  • Free forever — no signup
  • Instant conversion

Input and Output

Use the interactive encoder and decoder on this page to process your text.

Learn more about JSON formatting

How to Format SQL Queries

SQL Formatting

When to Format SQL

Format SQL before code review, documentation, or debugging complex queries. Readable indentation makes joins, subqueries, CTEs, and window functions easier to follow — especially in long analytics or migration scripts shared across a team.

Choosing a Dialect

Select the dialect that matches your database engine. Keyword handling and identifier quoting differ between PostgreSQL, MySQL, SQLite, T-SQL, and PL/SQL. Using the correct dialect produces idiomatic formatting for your platform.

Common Mistakes

  • Formatting invalid SQL — fix syntax errors first
  • Using the wrong dialect for vendor-specific syntax
  • Assuming formatted output is optimized — formatting is cosmetic only

Frequently asked questions

Does formatting change query results?

No. Formatting only changes whitespace and keyword casing. Query semantics stay the same.

Which SQL dialect should I use?

Match your database: PostgreSQL for Postgres, mysql for MySQL/MariaDB, sqlite for SQLite, tsql for SQL Server, plsql for Oracle.