September 2026 Edition, published · The permanent record of that edition, superseded since. The current standing is on the category page →
Index › IT › Cloud and infrastructure › IaC · September 2026 Edition

Infrastructure as code

Asked as “infrastructure-as-code tool”, and as “IaC platform for provisioning cloud resources”, on behalf of a mid-market B2B company. 56 first choices recorded across the direct, paraphrase, budget and scale prompts, twelve models each.
Standing · first-choice share
46%
Clear leader
46Terraform39OpenTofu07Pulumi07others

46% of first choices, clear leader.

By buyer segment

The same question asked on behalf of a different buyer. Each standing is computed within its segment; they sit side by side and are never added together.

The standing

Share is the count of first choices across the direct, paraphrase, budget and scale prompts, over all twelve models, for a mid-market B2B company. Ordered by share.
ProductFirst-choice shareNegative rateLabelsQuadrant
01Terraform46%20%70endorsed leader
02OpenTofu39%0%49endorsed leader
03Pulumi7%6%66accepted challenger
04AWS CDK2%11%28accepted challenger
Show the seven products at 0%, ordered by negative rate
10Chef0%69%13criticized challenger
11Puppet0%69%16criticized challenger
06AWS CloudFormation0%19%43accepted challenger
07Azure Bicep0%15%39accepted challenger
08Crossplane0%12%25accepted challenger
09Spacelift0%10%10accepted challenger
05Ansible0%8%39accepted challenger
Bars are the share of first choices, 0 to 100Every product with at least 10 labels here. Every product name links to its product page.
All six head-to-head pages: the top four products, each against each

Recommended versus criticized

Every product with at least 10 labels here, on both axes. The 30% line names a quadrant, not the verdict above: that one needs more than 40%.

Criticized challengerCriticized default
Negative label rate →
01
02
03
04
05
06
07
08
09
10
11
Accepted challengerEndorsed leader
0%First-choice share → · lines at 30% share and 25% negative60%
Key
01Terraform46%
02OpenTofu39%
03Pulumi7%
04AWS CDK2%
05Ansible0%
06AWS CloudFormation0%
07Azure Bicep0%
08Crossplane0%
09Spacelift0%
10Chef0%
11Puppet0%

What they warned about

Six of twelve models held their first choice under the paraphrase. GPT-5.4 mini, Perplexity Sonar, DeepSeek V4 Flash, Llama 4 Maverick, Kimi K2 and GLM 4.7 FlashX changed. A high negative share on a product with few labels is a warning. A low share on a product with many labels is salience, not sentiment.
Puppet
69%
11 of 16 labels negative · 9 of 12 models · 4 hard negative
“Tools Often Considered Legacy or Declining (Be Cautious for New Projects)... Avoid for new work: Pure legacy config tools” Grok 4.20, negative prompt
Chef
69%
9 of 13 labels negative · 8 of 12 models · 4 hard negative
“Chef Infra Server hits end-of-life in Nov 2026... Avoid for new work: Pure legacy config tools” Grok 4.20, negative prompt
Terraform
20%
14 of 70 labels negative · 8 of 12 models · 1 hard negative
“Avoid starting new projects with: 1. Terraform under BSL (use OpenTofu instead)” Kimi K2, negative prompt
AWS CloudFormation
19%
8 of 43 labels negative · 6 of 12 models
“Pitfalls: Vendor lock-in (AWS-only), verbose JSON/YAML, no native state locking, monolithic templates hard to maintain” Grok 4.20, negative prompt

What they cite

Twelve of the twelve models returned a source list in this edition: four return the pages they cited and eight the search results they consulted.

Sites the answers cite

57 of 72 answers in this category came back with a source list, from 12 of 12 models: citations where the model returns them, or the search results it consulted. 777 links across 231 sites, every framing counted. Ranked by the number of answers carrying the site or page.

vendor site · Pulumi39 answers · 51 citations · 11 models
vendor site · Apiiro31 answers · 31 citations · 9 models
vendor site · Guideflow26 answers · 26 citations · 9 models
23 answers · 24 citations · 9 models
vendor site · Cortex22 answers · 22 citations · 7 models
vendor site · Spacelift21 answers · 24 citations · 10 models
16 answers · 16 citations · 8 models
vendor site · Firefly15 answers · 16 citations · 8 models
13 answers · 13 citations · 8 models
12 answers · 16 citations · 8 models
12 answers · 12 citations · 7 models
vendor site · Gitnux12 answers · 12 citations · 7 models

Pages the answers cite

The ten pages named in the most answers, by full address. A page here is one the models returned with a recommendation, not one the index endorses.

Search against answers

Each company's standing in the answers beside its site's footprint in Google search, one row a site: the products the models named on it with their shares, and the share they add up to; monthly searches on Google, and DataForSEO's estimate of AI search demand (modeled from search signals, directional, not a count of queries to any assistant), for the most-searched of the company's and its products' names (the name is in each row's hover text); estimated monthly organic visits to the site; and its best position in Google's top ten for “best infrastructure-as-code tool”, “infrastructure-as-code tool”, “infrastructure-as-code tools”. US estimates from DataForSEO and Google's Ads Transparency Center. A small company's site, or a mid-sized company's site for its flagship, is marked company; a product on a large parent's site (Google, Microsoft) has no site figures. A column with no figures for this category is left out, and an empty cell means none were seen, not none exist. Two measurements side by side: neither is read as the cause of the other.
Company and productsShareOwn site citedName searches, GoogleAI search demand, est.Organic visitsPaid search a month, est.Google ads, last 30 daysBest Google position
Terraform hashicorp.com46%18049,5009,136173,934$2629
OpenTofu opentofu.org39%1413,600774,792
Pulumi pulumi.com7%1745,40020910,36846
Terragrunt terra.security
Terraform/OpenTofu 5%, Terragrunt 0%
5%92,9001343,1701
AWS parent site
AWS CDK 2%, AWS CloudFormation 0%
2%135368,000114,001
Ansible ansible.com0%11722,2003,16850,787
Azure parent site
Azure Bicep 0%
0%71301,00047,904
Crossplane crossplane.io0%571,9002173,194
Spacelift spacelift.io0%432,4004853,153422
env0 env0.com0%2148031,6351

Google's top ten for the three searches hold 14 sites; 5 of them are among the sites the models cited here (apiiro.com, firefly.ai, pulumi.com, reddit.com, spacelift.io). The first result for “best infrastructure-as-code tool” is reddit.com.

How they answered

Six framings of the same buying question, each sent to every model in a fresh session with search on. One row per model, so a row shows whether it held its answer under rewording, what it named when cost was the constraint, and what it argued against. Computed from the raw judge labels.
ShowHide
ModelDirect“What is the best infrastructure-as-code tool for a mid-market B2B company?”Paraphrase“Which IaC platform for provisioning cloud resources would you recommend to a mid-sized B2B company?”Comparative“What are the top infrastructure-as-code tools and how do they differ?”Budget-constrained“What is the best infrastructure-as-code tool for a company with a limited budget?”Scale-constrained“We are a 500 person company evaluating an infrastructure-as-code tool. What should we look at?”Negative“Which infrastructure-as-code tools should I avoid or be cautious about?”
Claude Haiku 4.5Terraform
Three alternativesAWS CloudFormation, Ansible, Pulumi
TerraformHeld
Three alternativesAWS CloudFormation, Azure Bicep, Pulumi
Pulumi, Terraform
Two alternativesAWS CDK, OpenTofu
Terraform
One alternativeAWS CloudFormation
no first choiceagainst: Azure Bicep, Chef, Puppet, Terraform, tfsec
GPT-5.4 miniOpenTofu, Terraform
Three alternativesAWS CloudFormation, Azure Bicep, Pulumi
Terraform/OpenTofuChanged
Three alternativesAWS CloudFormation, Azure Bicep, Pulumi
Terraform
Six alternativesAWS CDK, AWS CloudFormation, Ansible, Azure Bicep, OpenTofu, Pulumi
OpenTofu, Terraform/OpenTofu
Four alternativesAWS CloudFormation, Azure Bicep, Google Cloud Deployment Manager, Terraform
against: Pulumi
no first choicenothing named
Gemini 3.5 FlashOpenTofu
Four alternativesPulumi, Spacelift, Terraform, env0
against: AWS CDK, Azure Bicep, Crossplane
OpenTofuHeld
Three alternativesPulumi, Spacelift, env0
against: Terraform
OpenTofu, Terraform
Five alternativesAWS CDK, Ansible, Azure Bicep, Crossplane, Pulumi
OpenTofu
Four alternativesAWS CDK, Ansible, Azure Bicep, Pulumi
against: Spacelift, Terraform
OpenTofu, Pulumi
Five alternativesCrossplane, Scalr, Spacelift, Terraform, env0
against: AWS CloudFormation, Azure Bicep, CDK for Terraform, Chef, Puppet, SaltStack, Terraform
Perplexity SonarTerraform
Three alternativesAnsible, OpenTofu, Pulumi
OpenTofu, TerraformChanged
Six alternativesAWS CDK, AWS CloudFormation, Ansible, Pulumi, Spacelift, env0
Terraform
Six alternativesAWS CloudFormation, Ansible, Azure Bicep, Crossplane, OpenTofu, Pulumi
OpenTofu
Three alternativesAWS CloudFormation, Ansible, Terraform
no first choiceagainst: Chef, Puppet, SaltStack
Grok 4.20OpenTofu, Terraform
Three alternativesAWS CloudFormation, Atlantis, Pulumi
OpenTofu, TerraformHeld
Three alternativesAWS CDK, Crossplane, Pulumi
against: Cloud-Native
Pulumi, Terraform
Five alternativesAWS CDK, AWS CloudFormation, Ansible, Crossplane, OpenTofu
OpenTofu
Five alternativesAWS CDK, AWS CloudFormation, Ansible, Azure Bicep, Pulumi
against: Terraform
Terraform
Three alternativesAnsible, OpenTofu, Pulumi
against: AWS CloudFormation
against: AWS CloudFormation, Chef, Crossplane, Pulumi, Puppet, SaltStack
Mistral SmallTerraform
Four alternativesAWS CDK, Azure Bicep, OpenTofu, Pulumi
TerraformHeld
Three alternativesAWS CloudFormation, Azure Bicep, Pulumi
Crossplane, Pulumi, Terraform
Five alternativesAWS CloudFormation, Ansible, Azure Bicep, Google Cloud Deployment Manager, OpenTofu
OpenTofu
Three alternativesCrossplane, Pulumi, Terraform
no first choicenothing named
DeepSeek V4 FlashTerraform
Four alternativesAWS CloudFormation, Ansible, OpenTofu, Pulumi
OpenTofu, TerraformChanged
One alternativePulumi
against: AWS CDK
Terraform
Five alternativesAWS CloudFormation, Ansible, Crossplane, OpenTofu, Pulumi
OpenTofu
One alternativeGitHub Actions
against: Pulumi, Terraform
Pulumi, Terraform/OpenTofu
Two alternativesCloudFormation/CDK, Terraform
against: AWS CloudFormation, CDK for Terraform, Chef, Google Cloud Deployment Manager, Puppet, SaltStack, Terraform
Llama 4 Maverickno first choiceTerraformChanged
Two alternativesAWS CloudFormation, Pulumi
no first choiceOpenTofu, Terraform
Two alternativesCrossplane, Pulumi
no first choicenothing named
Qwen 3.7 FlashTerraform
Four alternativesAWS CDK, Ansible, Azure Bicep, Pulumi
TerraformHeld
One alternativePulumi
Terraform
Four alternativesAnsible, Crossplane, OpenTofu, Pulumi
against: AWS CloudFormation
OpenTofu, Terraform
Two alternativesAnsible, Pulumi
Terraform
Four alternativesAWS CDK, Azure Bicep, Crossplane, Pulumi
against: AWS CloudFormation, Azure Bicep, Chef, Google Cloud Deployment Manager, Puppet, Terraform
Kimi K2OpenTofu, Terraform
Two alternativesAWS CDK, Pulumi
OpenTofuChanged
Three alternativesAWS CDK, Pulumi, Terraform
Terraform
Four alternativesAWS CloudFormation, Ansible, OpenTofu, Pulumi
OpenTofu
Four alternativesAWS CDK, Ansible, Azure Bicep, Pulumi
against: Terraform
AWS CDK, Pulumi, Terraform
Two alternativesAWS CloudFormation, OpenTofu
against: CDK for Terraform, Crossplane
against: AWS CDK, AWS CloudFormation, Azure Bicep, CDK for Terraform, Chef, Google Cloud Deployment Manager, Puppet, Terraform
GLM 4.7 FlashXOpenTofu, Terraform
Three alternativesAWS CDK, AWS CloudFormation, Pulumi
TerraformChanged
Two alternativesPulumi, Scalr
no first choiceOpenTofu
Three alternativesAWS CloudFormation, Ansible, Terraform
against: Pulumi
Pulumi, Terraform
Five alternativesAWS CDK, AWS CloudFormation, Azure Bicep, Google Cloud Infrastructure Manager, OpenTofu
against: Chef Infra Server, Cloudify, Puppet, SaltStack, Terraform
MiniMax M2.5Terraform
Two alternativesAWS CloudFormation, Pulumi
against: Ansible, Chef, Puppet
TerraformHeld
Two alternativesOpenTofu, Pulumi
Terraform
Seven alternativesAWS CloudFormation, Ansible, Azure Bicep, Crossplane, Google Cloud Deployment Manager, OpenTofu, Pulumi
OpenTofu
Four alternativesAWS CloudFormation, Azure Bicep, Pulumi, Terraform
against: Terraform
no first choiceagainst: Ansible, Puppetagainst: AWS CloudFormation, Ansible, Azure Bicep, Chef, Puppet, Terraform
Bold is the first choiceAlternatives are counted; the count opens them.What the answer argued against

The record

One row per call: the version string exactly as returned, whether the model searched, sources cited, and latency.
Seventy-two rows: every prompt, every model, every answer.
PromptModelVersion stringTime (UTC)SearchedSourcesLatency
Direct recommendationClaude Haiku 4.5claude-haiku-4-5-202510012026-09-17 13:21no05 s
Direct recommendationGPT-5.4 minigpt-5.4-mini-2026-03-172026-09-17 11:07no03 s
Direct recommendationGemini 3.5 Flashgemini-3.5-flash2026-09-17 13:19yes1527 s
Direct recommendationPerplexity Sonarsonar2026-09-17 09:30yes207 s
Direct recommendationGrok 4.20spacexai/grok-4.1-fast-non-reasoning via vertex (asked for grok-4.20-non-reasoning; the API answered as this version)2026-09-17 09:58yes2010 s
Direct recommendationMistral Smallmistral/mistral-small via mistral2026-09-17 11:02yes159 s
Direct recommendationDeepSeek V4 Flashdeepseek/deepseek-v4-flash via fireworks2026-09-17 11:16yes1018 s
Direct recommendationLlama 4 Maverickmeta/llama-4-maverick via bedrock2026-09-17 13:55yes53 s
Direct recommendationQwen 3.7 Flashalibaba/qwen3.7-flash via alibaba2026-09-17 10:50no034 s
Direct recommendationKimi K2moonshotai/kimi-k2 via novita2026-09-17 09:25yes1522 s
Direct recommendationGLM 4.7 FlashXzai/glm-4.7-flashx via zai2026-09-17 10:55yes2842 s
Direct recommendationMiniMax M2.5minimax/minimax-m2.5 via minimax2026-09-17 13:56no023 s
ParaphraseClaude Haiku 4.5claude-haiku-4-5-202510012026-09-17 10:14no05 s
ParaphraseGPT-5.4 minigpt-5.4-mini-2026-03-172026-09-17 12:26yes25 s
ParaphraseGemini 3.5 Flashgemini-3.5-flash2026-09-17 14:14yes722 s
ParaphrasePerplexity Sonarsonar2026-09-17 12:52yes167 s
ParaphraseGrok 4.20spacexai/grok-4.1-fast-non-reasoning via vertex (asked for grok-4.20-non-reasoning; the API answered as this version)2026-09-17 13:45yes1910 s
ParaphraseMistral Smallmistral/mistral-small via mistral2026-09-17 11:06yes57 s
ParaphraseDeepSeek V4 Flashdeepseek/deepseek-v4-flash via fireworks2026-09-17 12:05yes1012 s
ParaphraseLlama 4 Maverickmeta/llama-4-maverick via bedrock2026-09-17 14:09yes53 s
ParaphraseQwen 3.7 Flashalibaba/qwen3.7-flash via alibaba2026-09-17 10:32no041 s
ParaphraseKimi K2moonshotai/kimi-k2 via novita2026-09-17 11:53yes1859 s
ParaphraseGLM 4.7 FlashXzai/glm-4.7-flashx via zai2026-09-17 13:44yes1025 s
ParaphraseMiniMax M2.5minimax/minimax-m2.5 via minimax2026-09-17 12:05yes529 s
ComparativeClaude Haiku 4.5claude-haiku-4-5-202510012026-09-17 11:00yes910 s
ComparativeGPT-5.4 minigpt-5.4-mini-2026-03-172026-09-17 10:08yes89 s
ComparativeGemini 3.5 Flashgemini-3.5-flash2026-09-17 11:40yes1331 s
ComparativePerplexity Sonarsonar2026-09-17 10:00yes208 s
ComparativeGrok 4.20spacexai/grok-4.1-fast-non-reasoning via vertex (asked for grok-4.20-non-reasoning; the API answered as this version)2026-09-17 14:03yes2014 s
ComparativeMistral Smallmistral/mistral-small via mistral2026-09-17 11:47yes58 s
ComparativeDeepSeek V4 Flashdeepseek/deepseek-v4-flash via fireworks2026-09-17 12:18yes1020 s
ComparativeLlama 4 Maverickmeta/llama-4-maverick via bedrock2026-09-17 12:05yes52 s
ComparativeQwen 3.7 Flashalibaba/qwen3.7-flash via alibaba2026-09-17 12:12yes524 s
ComparativeKimi K2moonshotai/kimi-k2 via novita2026-09-17 12:28yes1029 s
ComparativeGLM 4.7 FlashXzai/glm-4.7-flashx via zai2026-09-17 11:18no039 s
ComparativeMiniMax M2.5minimax/minimax-m2.5 via minimax2026-09-17 12:35yes521 s
Budget constrainedClaude Haiku 4.5claude-haiku-4-5-202510012026-09-17 13:32no04 s
Budget constrainedGPT-5.4 minigpt-5.4-mini-2026-03-172026-09-17 11:49no03 s
Budget constrainedGemini 3.5 Flashgemini-3.5-flash2026-09-17 13:52yes1124 s
Budget constrainedPerplexity Sonarsonar2026-09-17 12:46yes205 s
Budget constrainedGrok 4.20spacexai/grok-4.1-fast-non-reasoning via vertex (asked for grok-4.20-non-reasoning; the API answered as this version)2026-09-17 11:52yes139 s
Budget constrainedMistral Smallmistral/mistral-small via mistral2026-09-17 11:56yes55 s
Budget constrainedDeepSeek V4 Flashdeepseek/deepseek-v4-flash via deepinfra2026-09-17 14:05yes1329 s
Budget constrainedLlama 4 Maverickmeta/llama-4-maverick via bedrock2026-09-17 11:03yes52 s
Budget constrainedQwen 3.7 Flashalibaba/qwen3.7-flash via alibaba2026-09-17 12:30yes1072 s
Budget constrainedKimi K2moonshotai/kimi-k2 via novita2026-09-17 10:19yes1021 s
Budget constrainedGLM 4.7 FlashXzai/glm-4.7-flashx via zai2026-09-17 12:07yes1836 s
Budget constrainedMiniMax M2.5minimax/minimax-m2.5 via minimax2026-09-17 12:26yes1555 s
Scale constrainedClaude Haiku 4.5claude-haiku-4-5-202510012026-09-17 12:45no07 s
Scale constrainedGPT-5.4 minigpt-5.4-mini-2026-03-172026-09-17 09:52no07 s
Scale constrainedGemini 3.5 Flashgemini-3.5-flash2026-09-17 10:13yes1127 s
Scale constrainedPerplexity Sonarsonar2026-09-17 13:53yes207 s
Scale constrainedGrok 4.20spacexai/grok-4.1-fast-non-reasoning via vertex (asked for grok-4.20-non-reasoning; the API answered as this version)2026-09-17 13:48yes1310 s
Scale constrainedMistral Smallmistral/mistral-small via mistral2026-09-17 14:06no08 s
Scale constrainedDeepSeek V4 Flashdeepseek/deepseek-v4-flash via fireworks2026-09-17 10:44yes2326 s
Scale constrainedLlama 4 Maverickmeta/llama-4-maverick via bedrock2026-09-17 09:51yes52 s
Scale constrainedQwen 3.7 Flashalibaba/qwen3.7-flash via alibaba2026-09-17 13:54no038 s
Scale constrainedKimi K2moonshotai/kimi-k2 via novita2026-09-17 13:13no065 s
Scale constrainedGLM 4.7 FlashXzai/glm-4.7-flashx via zai2026-09-17 14:05yes2842 s
Scale constrainedMiniMax M2.5minimax/minimax-m2.5 via minimax2026-09-17 12:26yes518 s
Negative framingClaude Haiku 4.5claude-haiku-4-5-202510012026-09-17 13:15yes1610 s
Negative framingGPT-5.4 minigpt-5.4-mini-2026-03-172026-09-17 11:41no05 s
Negative framingGemini 3.5 Flashgemini-3.5-flash2026-09-17 13:45yes2323 s
Negative framingPerplexity Sonarsonar2026-09-17 09:46yes205 s
Negative framingGrok 4.20spacexai/grok-4.1-fast-non-reasoning via vertex (asked for grok-4.20-non-reasoning; the API answered as this version)2026-09-17 10:39yes4121 s
Negative framingMistral Smallmistral/mistral-small via mistral2026-09-17 13:18yes57 s
Negative framingDeepSeek V4 Flashdeepseek/deepseek-v4-flash via deepinfra2026-09-17 13:52yes3058 s
Negative framingLlama 4 Maverickmeta/llama-4-maverick via bedrock2026-09-17 09:24yes53 s
Negative framingQwen 3.7 Flashalibaba/qwen3.7-flash via alibaba2026-09-17 10:40yes2361 s
Negative framingKimi K2moonshotai/kimi-k2 via novita2026-09-17 10:59yes2550 s
Negative framingGLM 4.7 FlashXzai/glm-4.7-flashx via zai2026-09-17 13:10yes2432 s
Negative framingMiniMax M2.5minimax/minimax-m2.5 via minimax2026-09-17 11:56yes521 s

Normalization in this category

Every judgment call made between the raw labels and the numbers above, listed so it is visible and reversible.

ShowHide
Category-scoped readings
ARM read as Azure Bicep
ARM Templates read as Azure Bicep
ARM templates read as Azure Bicep
AWS CloudFormation / AWS CDK read as AWS CloudFormation
AWS CloudFormation / CDK read as AWS CloudFormation
AWS CloudFormation/CDK read as AWS CloudFormation
Azure ARM read as Azure Bicep
Azure ARM Templates read as Azure Bicep
Azure ARM/Bicep read as Azure Bicep
Azure Bicep / ARM read as Azure Bicep
Azure Bicep/ARM read as Azure Bicep
Azure Resource Manager (ARM) read as Azure Bicep
Azure Resource Manager (ARM) / Bicep read as Azure Bicep
Azure Resource Manager (ARM) Templates read as Azure Bicep
Azure Resource Manager/Bicep read as Azure Bicep
Unresolved, counted raw
Cloudify
Serverless Framework
Discontinued, still offered
No shut-down product was recommended here.
← Enterprise storageManaged Kubernetes →