Terraform Variable Naming convention

In Terraform, the widely accepted and recommended naming convention for variables is snake_case, which means:

  1. All letters are lowercase.
  2. Words are separated by underscores.
  3. Names should be descriptive and indicate the variable’s purpose or usage.

Following this convention ensures consistency, readability, and easier collaboration, especially in a team environment.

Here are some guidelines and examples:


  1. Descriptive Names: The variable name should clearly indicate its purpose. It’s often better to have a slightly longer, descriptive name than a short, cryptic one.Good: database_instance_sizeBad: db_sz
  2. Avoid Redundancy: If the context of a variable is clear, avoid using redundant prefixes or suffixes.Good: instance_countBad: ec2_instance_count (if it’s clear that you’re working with EC2 resources)
  3. Plural Names for Lists/Sets: If a variable is expected to be a list or a set, use a plural name.Good: security_group_ids
  4. No Uppercase or CamelCase: Stick to lowercase letters and avoid using uppercase or CamelCase.Bad: InstanceSize, instanceSize

Terraform variable names are not case-sensitive, but it is generally considered best practice to use snake case, with all words separated by underscores. This is the most common naming convention used in Terraform, and it is also consistent with the Terraform configuration language itself.

Here are some examples of good Terraform variable names:

  • my_variable
  • vpc_id
  • instance_type
  • key_name
  • security_groups

You should also avoid using reserved words, single letters, and special characters in your variable names. It is also a good idea to use descriptive names that are easy to understand.

Here are some tips for naming Terraform variables:

  • Use all lowercase letters.
  • Use underscores to separate words.
  • Avoid using special characters.
  • Use descriptive names that are easy to understand.
  • Avoid using reserved words.
  • Avoid using single letters.
  • Use abbreviations for common terms.
  • Use prefixes to indicate the type of variable. For example, you could use the prefix account_ for variables that are related to AWS accounts.
Rajesh Kumar
Follow me
Notify of
Inline Feedbacks
View all comments
Would love your thoughts, please comment.x