6.1.1. The Local Backend
💡 First Principle: The local backend is the zero-configuration default because the simplest place to keep a record is right next to the code that produced it — which is also exactly why it doesn't scale to teams.
With no backend configured, Terraform uses the local backend: state is stored in terraform.tfstate (and a backup terraform.tfstate.backup) in the working directory. It requires no setup and works perfectly for a single practitioner learning or prototyping.
Its limits appear with collaboration: the state file lives on one machine, so teammates can't share it, there's no remote locking to prevent two people applying at once, and the file (which may contain secrets) sits unencrypted on local disk. These limits are the reason to adopt a remote backend.
⚠️ Exam Trap: The local backend is the default — no backend block needed. A question implying Terraform "won't run without a configured backend" is wrong. Also remember local state offers no collaboration and only local-process locking.
Reflection Question: Name two specific problems a team hits with local state that a remote backend solves.