Using Infracost we can estimate infrastructure costs prior to deployment from Terraform.
The steps to execute it are as follows:
Install Infracost
brew install infracost
infracost --version # Should show 0.10.40
If we already have it installed, we can update to the latest version
brew updateGet API key
To get a free API that uses CLI to retrieve prices from prices in the cloud, it is necessary to make a registration, which directs us to a web page to register our mail.
infracost auth loginOnce you are registered, you will see this message


Create the working directory and file
#Directory creation
mkdir my-terraform-project
cd my-terraform-project
#main file creation
touch main.tf
nano main.tf #edit fileEdit the file with the following code
provider "aws" {
region = "us-east-1"
skip_credentials_validation = true
skip_requesting_account_id = true
access_key = "mock_access_key"
secret_key = "mock_secret_key"
}
resource "aws_instance" "my_web_app" {
ami = "ami-005e54dee72cc1d00"
instance_type = "m3.xlarge" # <<<<<<<<<< Try changing this to m5.xlarge to compare the costs
tags = {
Environment = "production"
Service = "web-app"
}
root_block_device {
volume_size = 1000 # <<<<<<<<<< Try adding volume_type="gp3" to compare costs
}
}
resource "aws_lambda_function" "my_hello_world" {
runtime = "nodejs12.x"
handler = "exports.test"
image_uri = "test"
function_name = "test"
role = "arn:aws:ec2:us-east-1:123123123123:instance/i-1231231231"
memory_size = 512
tags = {
Environment = "Prod"
}
}We apply the configuration

The result of this estimation we have $294 of consumption for the infrastructure we defined in the main.tf file. If we edit some configurations, we can compare the costs of the infrastructure to be deployed. Undoubtedly very useful for estimating costs.
References
Infracost (2025). Get Started, https://www.infracost.io