# Terraform ou CloudFormation: qual IaC escolher para AWS em 2025

> Terraform e CloudFormation são ferramentas de Infrastructure as Code para AWS. Terraform oferece suporte multi-cloud e é gratuita, mas requer aprendizado de HCL. CloudFormation é nativa da AWS, com integração profunda e modelo de precificação baseado em recursos gerenciados. A escolha ideal depende da necessidade de portabilidade entre nuvens ou da preferência por soluções nativas do ecossistema AWS.

*PosUp · Apps e Software · 30 de julho de 2026 · Patrícia Lemos*

Terraform ou CloudFormation? A escolha entre as duas ferramentas de Infrastructure as Code para AWS depende do seu contexto. Enquanto uma é gratuita e multi-cloud, a outra é nativa e integrada. Veja o comparativo completo.

Escolher entre Terraform e CloudFormation para gerenciar infraestrutura como código (IaC) na AWS é uma decisão que vai além de preferência pessoal. Envolve custo, portabilidade, curva de aprendizado e governança. Neste comparativo, avaliamos lado a lado os principais critérios para ajudar você a decidir qual ferramenta atende melhor seu cenário.

## Preço: qual sai mais barato?

**CloudFormation** é um serviço nativo da AWS e não tem custo adicional de licenciamento. Você paga apenas pelos recursos provisionados (EC2, RDS, etc.). O custo de operação é zero, exceto pelo tempo de engenharia.

**Terraform** (open source) também é gratuito. Mas o modelo de negócio da HashiCorp oferece camadas pagas (Terraform Cloud, Terraform Enterprise) para funcionalidades como estado remoto colaborativo, políticas de segurança e runs automatizados. Para times pequenos, a versão gratuita do Terraform Cloud já resolve. Para empresas, o custo mensal por usuário pode pesar.

**Veredito**: CloudFormation leva vantagem para quem quer custo operacional mínimo. Terraform pode ficar mais caro em escala corporativa, mas o open source continua gratuito.

## Facilidade de uso e curva de aprendizado

**CloudFormation** usa JSON ou YAML, formatos conhecidos por qualquer profissional de DevOps. A sintaxe é declarativa e a AWS oferece uma biblioteca de templates prontos (Quick Starts). Porém, o gerenciamento de atualizações e rollbacks é mais burocrático, exigindo conhecimento do ciclo de vida de cada recurso.

**Terraform** usa HCL (HashiCorp Configuration Language), uma linguagem declarativa própria. Para quem já tem contato com programação, HCL é mais expressivo e permite loops, condicionais e módulos reutilizáveis com facilidade. A curva de aprendizado inicial pode ser maior, mas a produtividade em projetos complexos compensa.

**Veredito**: CloudFormation é mais fácil para quem já conhece AWS e JSON/YAML. Terraform é mais flexível e reutilizável para times com background em programação.

## Portabilidade e multi-cloud

**CloudFormation** é exclusivo AWS. Não é possível usar o mesmo template para Azure ou GCP. Migrar para outro provedor exige reescrever toda a infraestrutura.

**Terraform** foi desenhado para multi-cloud. Com um mesmo workflow, você gerencia recursos em AWS, Azure, GCP, Kubernetes e mais de 100 provedores. A portabilidade reduz o retrabalho em cenários de migração ou adoção de múltiplos clouds.

**Veredito**: Terraform ganha disparado para ambientes multi-cloud. CloudFormation só faz sentido em ambientes 100% AWS.

## Gerenciamento de estado e colaboração

**CloudFormation** gerencia o estado da infraestrutura automaticamente no backend da AWS. Não há arquivo de estado para versionar ou compartilhar. A colaboração é simples, mas o controle sobre o estado é limitado.

**Terraform** mantém um arquivo de estado (terraform.tfstate) que mapeia recursos reais para a configuração. Esse estado precisa ser armazenado remotamente (S3, Terraform Cloud) para trabalho em equipe. Exige cuidado com locks e versionamento, mas oferece mais transparência e auditabilidade.

**Veredito**: CloudFormation é mais simples para times pequenos. Terraform dá mais controle, mas exige disciplina no gerenciamento de estado.

## Suporte a recursos e ecossistema

**CloudFormation** cobre praticamente todos os serviços AWS e recebe suporte no mesmo dia do lançamento de novos recursos. A documentação é oficial e integrada ao console AWS.

**Terraform** depende do provedor AWS mantido pela HashiCorp e pela comunidade. O atraso entre o lançamento de um novo serviço AWS e o suporte no Terraform pode ser de dias a semanas. Em contrapartida, o ecossistema de módulos públicos no Terraform Registry acelera a criação de infraestruturas complexas.

**Veredito**: CloudFormation é mais rápido para novidades AWS. Terraform compensa com módulos reutilizáveis e suporte a provedores não-AWS.

## Segurança e governança

**CloudFormation** oferece políticas de IAM nativas e integração com AWS Organizations. A auditoria é feita via CloudTrail e o controle de alterações é nativo com Change Sets.

**Terraform** permite políticas de segurança com Sentinel (versão paga) ou OPA (open source). A governança de estado e o controle de acesso são mais flexíveis, mas exigem configuração adicional.

**Veredito**: CloudFormation é mais seguro por padrão no ecossistema AWS. Terraform oferece mais flexibilidade, mas demanda mais configuração.

## Tabela comparativa resumida

| Critério | Terraform | CloudFormation | |---|---|---| | Preço base | Gratuito (open source) | Gratuito (serviço AWS) | | Multi-cloud | Sim | Não (apenas AWS) | | Linguagem | HCL | JSON / YAML | | Gerenciamento de estado | Manual (tfstate) | Automático (backend AWS) | | Suporte a novos recursos AWS | Atraso de dias/semanas | Imediato | | Módulos reutilizáveis | Sim (Registry) | Sim (Quick Starts) | | Governança avançada | Sentinel / OPA | IAM + Change Sets |

## Veredito final

Para equipes que operam exclusivamente na AWS e priorizam integração nativa, suporte imediato a novos serviços e custo operacional mínimo, **CloudFormation é a escolha certa**. A simplicidade de gerenciamento de estado e a segurança por padrão são diferenciais importantes.

Para times que trabalham com múltiplos provedores de nuvem, valorizam portabilidade, reutilização de código e flexibilidade na linguagem de configuração, **Terraform é a ferramenta ideal**. Apesar da curva de aprendizado maior e da necessidade de gerenciar estado manualmente, a produtividade em cenários complexos compensa.

## Perguntas frequentes

### Qual é mais barato: Terraform ou CloudFormation?

CloudFormation é gratuito como serviço AWS, você paga apenas pelos recursos provisionados. Terraform open source também é gratuito, mas o Terraform Cloud (plano pago) adiciona custos por usuário para funcionalidades colaborativas.

### Posso usar Terraform e CloudFormation juntos?

Sim. É comum usar CloudFormation para recursos nativos AWS (como VPCs e IAM) e Terraform para o restante da infraestrutura. O Terraform inclusive tem um recurso (aws_cloudformation_stack) que permite gerenciar stacks do CloudFormation.

### Qual ferramenta tem mais suporte da comunidade?

Terraform tem uma comunidade maior e mais ativa, com milhares de módulos públicos no Registry. CloudFormation tem suporte oficial da AWS e uma biblioteca de templates, mas a comunidade é menor.

### CloudFormation funciona fora da AWS?

Não. CloudFormation é um serviço exclusivo da AWS. Não é possível usá-lo para gerenciar infraestrutura em Azure, GCP ou outros provedores.

### Qual tem melhor desempenho em deploys grandes?

CloudFormation tende a ser mais lento em stacks muito grandes (centenas de recursos), pois o serviço gerencia todo o ciclo de vida. Terraform, por ser executado localmente ou em CI/CD, costuma ser mais rápido em operações paralelas.

### Preciso saber programação para usar Terraform?

Sim, um conhecimento básico de lógica de programação (variáveis, loops, condicionais) ajuda muito. CloudFormation é mais acessível para quem só conhece JSON/YAML.

---

Fonte (canonical): https://posup.com.br/apps-e-software/terraform-ou-cloudformation-qual-iac-escolher-para-aws-em-2025/
