Validates foundational knowledge of infrastructure as code, the Terraform workflow, configuration, modules, state management and HCP Terraform.
The 004 exam tests whether you can use Terraform's core workflow, write and organise configuration, manage state and use HCP Terraform. Learn from one course or the official study path, practise every objective in a small project of your own, then use practice exams to find gaps.
1Understand the exam
Syllabus
1Infrastructure as code (IaC) with Terraform
1aExplain what IaC is
1bDescribe the advantages of IaC patterns
1cExplain how Terraform manages multi-cloud, hybrid cloud, and service-agnostic workflows
Example scenario: A team creates servers by hand in two clouds and cannot reproduce last month's environment. How would describing it in Terraform change their process?
2Terraform fundamentals
2aInstall and version Terraform providers
2bDescribe how Terraform uses providers
2cWrite Terraform configuration using multiple providers
2dExplain how Terraform uses and manages state
Example scenario: Two colleagues get different provider versions when they run terraform init on the same code. What would you add to keep them consistent?
3Core Terraform workflow
3aDescribe the Terraform workflow
3bInitialize a Terraform working directory
3cValidate a Terraform configuration
3dGenerate and review an execution plan for Terraform
3eApply changes to infrastructure with Terraform
3fDestroy Terraform-managed infrastructure
3gApply formatting and style adjustments to a configuration
Example scenario: You want to see what a change will do before anything is modified. Which command do you run, and what do you look for in its output?
4Terraform configuration
4aUse and differentiate resource and data blocks
4bRefer to resource attributes and create cross-resource references
4cUse variables and outputs
4dUnderstand and use complex types
4eWrite dynamic configuration using expressions and functions
4fDefine resource dependencies in configuration
4gValidate configuration using custom conditions
4hUnderstand best practices for managing sensitive data, including secrets management with Vault
Example scenario: A load balancer must be replaced without downtime when its settings change. Which lifecycle setting would you consider?
5Terraform modules
5aExplain how Terraform sources modules
5bDescribe variable scope within modules
5cUse modules in configuration
5dManage module versions
Example scenario: A child module creates a network, and the root module needs its subnet ID. How does the value reach the root module?
6Terraform state management
6aDescribe the local backend
6bDescribe state locking
6cConfigure remote state using the backend block
6dManage resource drift and Terraform state
Example scenario: Someone changed a tag in the cloud console after the last apply. How would Terraform detect the change?
7Maintain infrastructure with Terraform
7aImport existing infrastructure into your Terraform workspace
7bUse the CLI to inspect state
7cDescribe when and how to use verbose logging
Example scenario: An existing storage bucket was created manually and now needs to be managed by Terraform. What steps would you take?
8HCP Terraform
8aUse HCP Terraform to create infrastructure
8bDescribe HCP Terraform collaboration and governance features
8cDescribe how to organize and use HCP Terraform workspaces and projects
8dConfigure and use HCP Terraform integration
Example scenario: Several teams share one HCP Terraform organisation and need separate permissions for their environments. How would you organise workspaces and projects?
Read the eight objectives and try the official sample questions first. Then learn with one course or the official study path, and practise each objective in a small project.
Most candidates spend 20–50 hours. Plan for the low end if you already use Terraform at work; allow more time if Terraform and HCP Terraform are new to you.
1Understand the examRead the syllabus and format, check you’re eligible and pick a target date.2 h
3Learn the core conceptsWork through one main course or book, topic by topic.20 h
4Practice with mock examsTake timed practice tests and review every mistake.11 h
5Prepare for exam dayBook the exam and check the ID and delivery rules.2 h
3Learn the core concepts
The official study path lists HashiCorp tutorials and documentation for every objective. A video course with labs adds structure if you prefer guided learning.
Use the objectives as a project checklist. Build one small configuration that touches every objective, including a module, a remote backend, an import and an HCP Terraform workspace. Destroy what you create when you finish.
4Practice with mock exams
Use the official sample questions to learn the format, then a full practice exam set to check timing and find weak objectives.
You can explain what each step of init, validate, plan, apply and destroy does
You can pass values into and out of a module and pin its version
You can configure a remote backend and explain state locking and drift
You can finish a fresh timed practice exam and explain each wrong answer
5Prepare for exam day
The exam is online only, through Certiverse with a live proctor.
Log in to the Certification Portal with the same GitHub account you used to register.
Have one physical, unexpired government photo ID. All names must match your portal account exactly; request changes at least 3 business days before.
Check Certiverse's system requirements and network test. Use Chrome and turn off pop-up blockers.
Use one monitor. With an external monitor, close your laptop and use a webcam on the external screen.
Test alone in a quiet, well-lit room with a clear desk. No phones, smartwatches or headphones, and keep your head and shoulders in view.
Join 15 minutes early and set aside at least 90 minutes for the one-hour exam.
Reschedule or cancel at least 24 hours before your appointment. After a failed attempt, wait 7 days and buy a new appointment. You can attempt the exam 4 times in a rolling 365 days.
One 004 passer describes the exam as fair pattern recognition if you have used the CLI, and recommends the HashiCorp documentation even alongside a course. Another candidate suggests using the objectives as a checklist for hands-on projects.
Pass reports single out the workflow, state and backends, and how values move in and out of modules. One passer lists providers versus backends and variables versus outputs as common points of confusion.