New: LLM Rankings are live!
See how the top LLMs rank on real infrastructure tasks
GPT-6.1 Terra on iac-bench 2026-10
How GPT-6.1 Terra did on iac-bench 2026-10: an overall composite of 84.9, scores per fixture, strengths, weaknesses and the patterns in its OpenTofu modules.
Every model evaluated on the 2026-10 fixtures side by side, with a sortable leaderboard, picks by use case and the cost of each: LLM rankings.
| Developer | OpenAI |
| API identifier | gpt-6.1-terra |
| Access | OpenAI API (Responses) |
| Weights | Closed |
| List price (USD / M tokens, in / out) | 1.00 / 5.00 (OpenRouter, 2026-11-10) |
| Evaluated | 2026-11-10 (generation and judge) |
| Attempts | 9 (3 fixtures × 3 samples) |
| Overall composite | 84.9 (95% CI 80.7–85.9) |
| Rank | 8 of 16 (95% rank interval 6–12) |
| Mechanical only / judge only | 81.1 (rank 9) / 93.9 (rank 6) |
| Failed gates · insecure attempts | 0/9 · 1/9 |
| Estimated cost, all 9 attempts | $0.42 |
Summary
GPT-6.1 Terra places eighth of 16 by composite (84.9), with a 95% rank interval of 6–12. In the bootstrap it finishes ahead of each of the seven models above it in under 8% of resamples (Claude Sonnet 5.5 7%, GPT-6.1 Sol 4%, GPT-6 Astra under 1%), and ahead of Kimi K3 in 73%, GLM-5.3 in 66% and GPT-6 Luna in 91%. All 9 attempts cost $0.42, less than half of Sol ($1.02) and a seventeenth of Astra ($7.26); Luna is cheaper at $0.05.
All 9 attempts planned. One has a security finding: G003 e3 leaves basic-auth publishing on
(H2). App Service (G003) is its strongest fixture, fourth in the field by median
composite. S3 (G001) is its weakest, twelfth, with a median mechanical score of 0.667.
Scores
| Fixture | Composite median (range) | Rubric median | Expertise | Judge median | ✗ gate | ⚠security | Median inputs | Median output tokens | Median time | Median cost |
|---|---|---|---|---|---|---|---|---|---|---|
| G001 · S3 | 76.7 (72.8–76.7) | 0.674 | 4/7 | 100.0 | 0/3 | 0/3 | 4 | 2,480 | 90 s | $0.019 |
| G002 · Cloud SQL | 84.8 (76.9–87.0) | 0.853 | 4/9 | 92.1 | 0/3 | 0/3 | 15 | 5,674 | 100 s | $0.043 |
| G003 · App Service | 93.2 (88.5–94.1) | 0.958 | 4/5 | 89.5 | 0/3 | 1/3 (H2) | 19 | 9,245 | 329 s | $0.075 |
Rubric items not at full credit, counted over attempts that planned: G001: B1 3/3, H6 3/3, H7 3/3, H9 3/3, H12 3/3, H13 3/3, H14 1/3, H15 3/3; G002: A3 1/3, A4 2/3, A5 1/3, B1 3/3, H3 1/3, H4 3/3, H5 3/3, H11 3/3; G003: B2 1/3, H2 1/3, H7 1/3. Definitions are in Scoring criteria.
Strengths
- Fast and short. Median wall time is 100 seconds per attempt, the lowest in the field, and its median S3 attempt writes 2,480 output tokens, also the lowest.
- App Service near the top. Median composite 93.2, behind only Claude Fable 5.2, GPT-6 Astra and GPT-6.1 Sol. Every attempt has autoscale rules and sets the container port (E1, E2, 3/3), and two define a 5xx metric alert (E3). Two validate that zone balancing comes with at least 3 instances.
- Registry pulls ordered correctly in G003 e1. A user-assigned identity is created and
granted
AcrPullbefore the app, whichdepends_onthe role assignment, so the first image pull does not wait on a system-assigned identity that does not yet exist. - Fixed security posture on S3 and Cloud SQL. All S3 attempts block public access,
enforce
BucketOwnerEnforcedownership and deny non-TLS requests (E1, E4, 3/3). Cloud SQL attempts disable public IPv4, setssl_mode = "ENCRYPTED_ONLY"and force thecloudsql.iam_authenticationflag, whichdatabase_flagscannot override. - The judge rates it highly. Judge-only score 93.9 (sixth), with a median of 100 on S3, matched only by Claude Fable 5.2 and Claude Haiku 5.5.
Weaknesses
- Minimal S3 buckets. The only lifecycle rule aborts incomplete multipart uploads, so
transition, expiration and noncurrent-version rules are missing (
H6,H7, 3/3), and no attempt offers access logging (H9,H13, 3/3). GPT-6 Astra and GPT-6 Luna lose the same three items in 3/3; Claude Fable 5.2 and Kimi K3.1 Pro lose none of them. With 2–4 inputs, there is also no region input (H15, 3/3). - IAM database users that cannot log in. No Cloud SQL attempt grants
roles/cloudsql.instanceUser(E6, 0/3), which GPT-6.1 Sol grants in 3/3. The judge cites it under Scope in G002 e3. - Data loss and lock-in on Cloud SQL. No
google_sql_databasesetsdeletion_policy(H11, 3/3), and backups and point-in-time recovery cannot be turned off (H4/H5at 0.75 in 3/3). G002 e3 also hardcodesdeletion_protection = true(H3) andavailability_type = "REGIONAL". - Basic auth left on in G003 e3. Neither
ftp_publish_basic_authentication_enablednorwebdeploy_publish_basic_authentication_enabledis set on the app or the slot, so both stay at the provider default of on. The other two attempts disable both. - Provider constraints that admit a new major in 6 of 9 attempts (
B1):>= 5.0, < 7.0in all S3 modules and>= 5.30, < 7.0or< 8.0in all Cloud SQL modules. The App Service modules use~> 4.0or an upper bound of< 5.0.0. - Duplicate registry inputs on App Service, as with Sol and Astra:
acr_resource_idandcontainer_registry_urlcan disagree. Data sources vs inputs 1 in G003 e1 and e3.
Characteristic patterns
- The judge and the rubric disagree most on S3. Two S3 modules score 100 with the judge, which reads the 4-input interface as right for app developers, while the rubric median is 0.674. The gap puts Terra sixth on judge-only score and ninth on mechanical score (81.1).
- Variables outside
variables.tf. G002 e2 putsdeletion_protectionalone inprotection.tf, G003 e1 puts one inregistry.tf, and G003 e2 mixes variables with an alert inrollouts.tf(File layout 1 in each). - Cloud SQL interfaces shrink across samples: 17, 15 and 11 inputs. The 11-input attempt hardcodes backups and the maintenance window and is its lowest Cloud SQL score (76.9).
Representative excerpt
G001/gpt-6.1-terra-e1/main.tf lines 44–58
# Clean up abandoned multipart uploads, but never expire completed objects or versions.
resource "aws_s3_bucket_lifecycle_configuration" "assets" {
bucket = aws_s3_bucket.assets.id
rule {
id = "abort-incomplete-multipart-uploads"
status = "Enabled"
filter {}
abort_incomplete_multipart_upload {
days_after_initiation = 7
}
}
}
The whole lifecycle configuration of an S3 attempt: one rule that aborts incomplete multipart uploads, with a comment promising never to expire completed objects or versions. Versioning is on, so old versions accumulate with no expiry. All three S3 attempts ship this single rule, which loses the lifecycle and noncurrent-version items (H6, H7) while the judge scores two of the modules 100.


