Terraform (.tf) Formatter
Guide
Terraform (.tf) Formatter
Format and validate your Terraform configuration files directly in the browser. Paste any .tf code and get properly indented, consistently styled output that follows HashiCorp conventions. Supports resource blocks, variables, outputs, data sources, locals, and modules with optional alphabetical attribute sorting.
How to Use
Paste your Terraform code into the input area or upload a .tf file. Click Format to apply consistent indentation, spacing, and block structure. Enable “Sort Attributes Alphabetically” to reorder arguments within each block. The formatter validates HCL syntax and highlights any errors. Copy the formatted output or download it as a .tf file.
Features
- HCL Formatting – Consistent indentation and spacing following HashiCorp style conventions
- Syntax Validation – Detects malformed blocks, unclosed braces, and invalid HCL before formatting
- Attribute Sorting – Optional alphabetical sorting of arguments within resource and data blocks
- File Upload – Drag and drop .tf files directly for formatting
- Full Block Support – Handles resource, variable, output, data, locals, module, provider, and terraform blocks
- Try an Example – Load a sample Terraform config to see the formatter in action
- Download Output – Save formatted code as a .tf file with one click
FAQ
-
What is Terraform and what is HCL syntax?
Terraform is an infrastructure-as-code tool by HashiCorp that lets you define cloud resources in declarative configuration files. It uses HCL (HashiCorp Configuration Language), designed to be both human-readable and machine-parseable. HCL uses blocks (like resource and variable), arguments (key = value pairs), and expressions. Proper formatting of HCL files improves readability and reduces merge conflicts in team environments.
-
Why is consistent code formatting important in infrastructure-as-code?
Consistent formatting in infrastructure-as-code is critical because these files define production infrastructure — misreading a configuration can lead to outages or security vulnerabilities. Standardized formatting reduces cognitive load during code reviews, makes diffs cleaner in version control, and ensures team members can quickly understand any configuration file.
-
What is the difference between terraform fmt and terraform validate?
terraform fmt only handles cosmetic formatting — indentation, alignment, and spacing — without checking whether the configuration is logically correct. terraform validate checks that the configuration is syntactically valid HCL and that resource arguments match the expected schema for each provider. A file can be perfectly formatted but invalid, or valid but poorly formatted. Both commands serve different purposes and are typically run in sequence in CI/CD pipelines.
Install Our Extensions
Add IO tools to your favorite browser for instant access and faster searching
恵 Scoreboard Has Arrived!
Scoreboard is a fun way to keep track of your games, all data is stored in your browser. More features are coming soon!
Must-Try Tools
View All New Arrivals
View AllUpdate: Our latest tool was added on Mar 19, 2026
