Axis Spatial

Terminus-2 – Kimi K3 (always on): geospatial agent results

Terminus-2 – Kimi K3 (always on) by Moonshot AI, run under Terminus-2: the model's Geospatial Intelligence Index and groups, and this configuration's Geospatial Agent Index, score on each benchmark and each kind of geospatial work, cost, time and token use.

Summary

Geospatial Intelligence Index
Not ranked yet: Earth science: quiz not run; Perception: not yet run or confirmed
Geospatial Intelligence Index, text-only view
Not ranked yet
Perception (look and answer)
No data
Geospatial Agent Index
58* (rank 13 of 31)
Cost per task
$0.336
Time per task
3.9 min
Tokens per attempt
76k
Turns per attempt
7.7
Attempts decided
320
Judged by
Claude Sonnet 5.5 (401 counted attempts); 1 trace review declined by the judge

Geospatial Intelligence Index

Kimi K3 at each reasoning level we run, with its four group scores. Each model is shown at its highest reasoning level, as Artificial Analysis does; other levels are under 'Show every reasoning level'. See the Geospatial Intelligence Index.

Kimi K3: Geospatial Intelligence Index at each reasoning level
ModelGeospatial Intelligence IndexRank (every reasoning level)Text-only viewAgents (3/9)Coding to a written method (2/9)Earth science (2/9)Perception (2/9)Scored in
Kimi K3 (always on) (default view)Not ranked yetNot ranked yetNot ranked yet5892No dataNo dataTerminus-2

Not ranked yet: Kimi K3 (always on): Earth science: quiz not run; Perception: not yet run or confirmed.

Geospatial Agent Index configurations

Every harness and reasoning level of Kimi K3 we run. See the Geospatial Agent Index.

Kimi K3: Geospatial Agent Index configurations
ModelHarnessGeospatial Agent IndexRankCost per taskTime per task
Terminus-2 – Kimi K3 (always on) (this page)Terminus-258*13$0.3363.9 min

Score by benchmark

Terminus-2 – Kimi K3 (always on): score by benchmark

Average pass@1, 0 to 100 · Higher is better

Terminus-2 – Kimi K3 (always on): score by benchmarkEarth-Bench V2: 61 (partial coverage); GeoBenchX: 55025507510061Earth-BenchV255GeoBenchX
Data table: Terminus-2 – Kimi K3 (always on): score by benchmark
Terminus-2 – Kimi K3 (always on): by benchmark
BenchmarkScoreTasks with a decided attemptCost per taskTime per task
Earth-Bench V261147 of 147$0.4815.3 min
GeoBenchX55173 of 173$0.2142.7 min

Score by task format and kind of work

Terminus-2 – Kimi K3 (always on): score by task format

Average pass@1 over the tasks of each task format, 0 to 100 · Higher is better

Terminus-2 – Kimi K3 (always on): score by task formatMulti-step analysis: 72; Single-answer questions: 60 (partial coverage); Recognising infeasible requests: 38025507510072Multi-stepanalysis60Single-answerquestions38Recognisinginfeasiblerequests
How to read this chart

What this shows. The same attempts as the index, grouped by task format. Groups with few tasks are less certain. About these breakdowns.

Data table: Terminus-2 – Kimi K3 (always on): score by task format
Terminus-2 – Kimi K3 (always on): by task format
Task formatScoreTasks with a decided attempt
Multi-step analysis7282 of 82
Single-answer questions60159 of 159
Recognising infeasible requests3879 of 79

Terminus-2 – Kimi K3 (always on): score by kind of work

Average pass@1 over the tasks of each kind of work, 0 to 100 · Higher is better

Terminus-2 – Kimi K3 (always on): score by kind of workRaster and remote sensing: 59 (partial coverage); Vector and overlay: 33; Networks and routing: No data; Climate and time series: 66 (partial coverage); Spatial statistics and interpolation: 50; Mapping and cartography: 78; Recognising infeasible requests: 38025507510059Raster andremotesensing33Vector andoverlayNo dataNetworks androuting66Climate andtime series50Spatialstatisticsand78Mapping andcartography38Recognisinginfeasiblerequests
How to read this chart

What this shows. The same attempts as the index, grouped by kind of work. Groups with few tasks are less certain. About these breakdowns.

Data table: Terminus-2 – Kimi K3 (always on): score by kind of work
Terminus-2 – Kimi K3 (always on): by kind of work
Kind of workScoreTasks with a decided attempt
Raster and remote sensing5994 of 94
Vector and overlay336 of 6
Networks and routingNo data0 of 0
Climate and time series6668 of 68
Spatial statistics and interpolation5014 of 14
Mapping and cartography7859 of 59
Recognising infeasible requests3879 of 79

Terminus-2 – Kimi K3 (always on): score by data type

Average pass@1 over the tasks of each data type, 0 to 100 · Higher is better

Terminus-2 – Kimi K3 (always on): score by data typeOptical multispectral: 55 (partial coverage); Climate or gridded time series: 80 (partial coverage); Other gridded data: 72 (partial coverage); Vector only: 69025507510055Opticalmultispectral80Climate orgridded timeseries72Other griddeddata69Vector only
How to read this chart

What this shows. The same attempts as the index, grouped by data type. Groups with few tasks are less certain. About these breakdowns.

Data table: Terminus-2 – Kimi K3 (always on): score by data type
Terminus-2 – Kimi K3 (always on): by data type
Data typeScoreTasks with a decided attempt
Optical multispectral55114 of 114
Climate or gridded time series8010 of 10
Other gridded data7250 of 50
Vector only6977 of 77

Terminus-2 – Kimi K3 (always on): score by task length

Average pass@1 over the tasks of each task length, 0 to 100 · Higher is better

Terminus-2 – Kimi K3 (always on): score by task lengthShort tasks: 87 (partial coverage); Medium tasks: 60 (partial coverage); Long tasks: 43 (partial coverage)025507510087Short tasks60Medium tasks43Long tasks
How to read this chart

What this shows. The same attempts as the index, grouped by task length. Groups with few tasks are less certain. About these breakdowns.

Data table: Terminus-2 – Kimi K3 (always on): score by task length
Terminus-2 – Kimi K3 (always on): by task length
Task lengthScoreTasks with a decided attempt
Short tasks8770 of 70
Medium tasks6091 of 91
Long tasks43159 of 159

Compared with other models

Geospatial Agent Index

Equal-weight average of the evaluation scores, 0 to 100 · Higher is better

  • Planned attempts still to come
Geospatial Agent IndexClaude Code – Claude Opus 5.5 (xhigh): 69* (partial coverage); Claude Code – Claude Opus 5.5 (high): 68* (partial coverage); Claude Code – Claude Opus 5.5 (medium): 65* (partial coverage); Codex – GPT-6.1 Sol (medium): 65* (partial coverage); Codex – GPT-6.1 Sol (xhigh): 65* (partial coverage); Claude Code – Claude Sonnet 5.5 (high): 65* (partial coverage); Claude Code – Claude Sonnet 5.5 (xhigh): 64* (partial coverage); Claude Code – Claude Haiku 5.5 (xhigh): 63* (partial coverage); Codex – GPT-6.1 Sol (high): 63* (partial coverage); Claude Code – Claude Haiku 5.5 (high): 60* (partial coverage); Codex – GPT-6 Luna (xhigh): 60* (partial coverage); Claude Code – Claude Haiku 5.5 (medium): 58* (partial coverage); Terminus-2 – Kimi K3 (always on): 58* (partial coverage); Claude Code – Claude Sonnet 5.5 (medium): 58* (partial coverage); Terminus-2 – GLM-5.2 (high): 56* (partial coverage); Terminus-2 – GLM-5.2 (max): 55* (partial coverage); Terminus-2 – Kimi K2.7 Code (always on): 55* (partial coverage); Terminus-2 – DeepSeek V4 Pro (high): 54* (partial coverage); Terminus-2 – DeepSeek V4 Flash (max): 53* (partial coverage); Terminus-2 – Kimi K2.6 (always on): 52* (partial coverage); Terminus-2 – DeepSeek V4 Flash (high): 52* (partial coverage); Terminus-2 – GLM-5.2 (none): 43* (partial coverage); Terminus-2 – GLM-5.3-Flash (low): 40* (partial coverage); Terminus-2 – Gemma 4 26B A4B (thinking on): 39* (partial coverage); Terminus-2 – GLM-5.3 (low): 38* (partial coverage); Terminus-2 – GLM-5.3 (max, default): 38* (partial coverage); Terminus-2 – gpt-oss-120b (high): 34* (partial coverage); Terminus-2 – GLM-4.7-Flash (thinking on): 29* (partial coverage); Terminus-2 – GLM-5.3-Flash (max): 27* (partial coverage); Terminus-2 – gpt-oss-120b (low): 25* (partial coverage); Terminus-2 – Llama 3.3 70B (Non-reasoning): 7* (partial coverage)025507510069*Claude CodeClaude Opus5.5 (xhigh)68*Claude CodeClaude Opus5.5 (high)65*Claude CodeClaude Opus5.5 (medium)65*CodexGPT-6.1 Sol(medium)65*CodexGPT-6.1 Sol(xhigh)65*Claude CodeClaude Sonnet5.5 (high)64*Claude CodeClaude Sonnet5.5 (xhigh)63*Claude CodeClaude Haiku5.5 (xhigh)63*CodexGPT-6.1 Sol(high)60*Claude CodeClaude Haiku5.5 (high)60*CodexGPT-6 Luna(xhigh)58*Claude CodeClaude Haiku5.5 (medium)58*Terminus-2Kimi K3(always on)58*Claude CodeClaude Sonnet5.5 (medium)56*Terminus-2GLM-5.2(high)55*Terminus-2GLM-5.2 (max)55*Terminus-2Kimi K2.7Code (alwayson)54*Terminus-2DeepSeek V4Pro (high)53*Terminus-2DeepSeek V4Flash (max)52*Terminus-2Kimi K2.6(always on)52*Terminus-2DeepSeek V4Flash (high)43*Terminus-2GLM-5.2(none)40*Terminus-2GLM-5.3-Flash(low)39*Terminus-2Gemma 4 26BA4B (thinkingon)38*Terminus-2GLM-5.3 (low)38*Terminus-2GLM-5.3 (max,default)34*Terminus-2gpt-oss-120b(high)29*Terminus-2GLM-4.7-Flash(thinking on)27*Terminus-2GLM-5.3-Flash(max)25*Terminus-2gpt-oss-120b(low)7*Terminus-2Llama 3.3 70B(Non-reasoning)
How to read this chart

What this metric means. The equal-weight average of the 2 evaluation scores. Each evaluation score is the average pass@1 over that benchmark's tasks, from 0 to 100.

Partial coverage entries. An entry is ranked only when it has a first attempt on every task of every index component. Entries without that are marked partial coverage: they are listed apart with their coverage, for example "36 of 147 Earth-Bench V2 tasks", and are left out of the ranking, the index charts, the Pareto lines and the highlights. An entry becomes ranked as soon as its first attempts are complete.

Coverage hatch. A hatched bar, and an asterisk in tables, marks an entry that does not yet have results for every planned attempt. While attempts await review, the table gives the range the score could still reach.

First attempt only. Scores currently use each entry's first attempt on every task. The full protocol is 3 attempts; averages over 3 will replace these once every entry has them. An entry without a first attempt on every task yet is marked "partial: attempt 1 on n of N tasks".

Not shown: partial coverage or being added. Terminus-2 – Claude Sonnet 4.6 (adaptive, effort high) (36 of 147 Earth-Bench V2 tasks); Terminus-2 – Gemini 3.1 Flash-Lite (low) (36 of 147 Earth-Bench V2 tasks); Terminus-2 – Gemini 3.1 Flash-Lite (minimal) (36 of 147 Earth-Bench V2 tasks); Terminus-2 – Gemini 3.1 Flash-Lite (high) (35 of 147 Earth-Bench V2 tasks; 170 of 173 GeoBenchX tasks); Terminus-2 – Gemini 3.1 Pro (preview) (low) (36 of 147 Earth-Bench V2 tasks); Terminus-2 – Gemini 3.1 Pro (preview) (high) (36 of 147 Earth-Bench V2 tasks); Terminus-2 – Gemini 3.8 Flash (high) (36 of 147 Earth-Bench V2 tasks); Terminus-2 – Gemini 3.8 Flash (low) (36 of 147 Earth-Bench V2 tasks); Terminus-2 – gpt-oss-20b (high) (172 of 173 GeoBenchX tasks); Terminus-2 – Qwen 3.8 27B (xhigh) (36 of 147 Earth-Bench V2 tasks; 0 of 173 GeoBenchX tasks); Claude Code – Claude Haiku 4.5 (thinking 32k) (47 of 147 Earth-Bench V2 tasks; 47 of 173 GeoBenchX tasks); Kimi Code – Kimi K2.6 (always on) (11 of 147 Earth-Bench V2 tasks; 61 of 173 GeoBenchX tasks); Kimi Code – Kimi K2.7 Code (always on) (12 of 147 Earth-Bench V2 tasks; 70 of 173 GeoBenchX tasks); Claude Code – Claude Opus 5 (high) (112 of 147 Earth-Bench V2 tasks; 48 of 173 GeoBenchX tasks); Claude Code – Claude Sonnet 5 (high) (41 of 147 Earth-Bench V2 tasks; 63 of 173 GeoBenchX tasks); Claude Code – Claude Opus 4.8 (high) (49 of 147 Earth-Bench V2 tasks; 56 of 173 GeoBenchX tasks); Claude Code – Claude Opus 4.7 (high) (49 of 147 Earth-Bench V2 tasks; 60 of 173 GeoBenchX tasks).

Data table: Geospatial Agent Index
Geospatial Agent Index
ModelCreatorGeospatial Agent IndexRange while attempts are pendingBenchmarks coveredCoverage (attempts)
Claude Code – Claude Opus 5.5 (xhigh)Anthropic69*No pending judgements; coverage incomplete2 of 2320 of 614 planned attempts
Claude Code – Claude Opus 5.5 (high)Anthropic68*No pending judgements; coverage incomplete2 of 2320 of 614 planned attempts
Claude Code – Claude Opus 5.5 (medium)Anthropic65*No pending judgements; coverage incomplete2 of 2320 of 614 planned attempts
Codex – GPT-6.1 Sol (medium)OpenAI65*No pending judgements; coverage incomplete2 of 2320 of 614 planned attempts
Codex – GPT-6.1 Sol (xhigh)OpenAI65*No pending judgements; coverage incomplete2 of 2320 of 614 planned attempts
Claude Code – Claude Sonnet 5.5 (high)Anthropic65*No pending judgements; coverage incomplete2 of 2320 of 614 planned attempts
Claude Code – Claude Sonnet 5.5 (xhigh)Anthropic64*No pending judgements; coverage incomplete2 of 2320 of 614 planned attempts
Claude Code – Claude Haiku 5.5 (xhigh)Anthropic63*No pending judgements; coverage incomplete2 of 2320 of 614 planned attempts
Codex – GPT-6.1 Sol (high)OpenAI63*No pending judgements; coverage incomplete2 of 2320 of 614 planned attempts
Claude Code – Claude Haiku 5.5 (high)Anthropic60*No pending judgements; coverage incomplete2 of 2320 of 614 planned attempts
Codex – GPT-6 Luna (xhigh)OpenAI60*No pending judgements; coverage incomplete2 of 2320 of 614 planned attempts
Claude Code – Claude Haiku 5.5 (medium)Anthropic58*No pending judgements; coverage incomplete2 of 2320 of 614 planned attempts
Terminus-2 – Kimi K3 (always on)Moonshot AI58*No pending judgements; coverage incomplete; 1 trace review declined by the judge2 of 2320 of 614 planned attempts
Claude Code – Claude Sonnet 5.5 (medium)Anthropic58*No pending judgements; coverage incomplete2 of 2320 of 614 planned attempts
Terminus-2 – GLM-5.2 (high)Z.ai56*No pending judgements; coverage incomplete; 1 trace review declined by the judge2 of 2320 of 614 planned attempts
Terminus-2 – GLM-5.2 (max)Z.ai55*No pending judgements; coverage incomplete; 1 trace review declined by the judge2 of 2320 of 614 planned attempts
Terminus-2 – Kimi K2.7 Code (always on)Moonshot AI55*No pending judgements; coverage incomplete; 1 trace review declined by the judge2 of 2320 of 614 planned attempts
Terminus-2 – DeepSeek V4 Pro (high)DeepSeek54*No pending judgements; coverage incomplete; 2 trace reviews declined by the judge2 of 2320 of 614 planned attempts
Terminus-2 – DeepSeek V4 Flash (max)DeepSeek53*No pending judgements; coverage incomplete; 1 trace review declined by the judge2 of 2320 of 614 planned attempts
Terminus-2 – Kimi K2.6 (always on)Moonshot AI52*No pending judgements; coverage incomplete2 of 2320 of 614 planned attempts
Terminus-2 – DeepSeek V4 Flash (high)DeepSeek52*No pending judgements; coverage incomplete; 1 trace review declined by the judge2 of 2320 of 614 planned attempts
Terminus-2 – GLM-5.2 (none)Z.ai43*No pending judgements; coverage incomplete2 of 2320 of 614 planned attempts
Terminus-2 – GLM-5.3-Flash (low)Z.ai40*No pending judgements; coverage incomplete2 of 2320 of 614 planned attempts
Terminus-2 – Gemma 4 26B A4B (thinking on)Google39*No pending judgements; coverage incomplete2 of 2320 of 614 planned attempts
Terminus-2 – GLM-5.3 (low)Z.ai38*No pending judgements; coverage incomplete2 of 2320 of 614 planned attempts
Terminus-2 – GLM-5.3 (max, default)Z.ai38*No pending judgements; coverage incomplete2 of 2320 of 614 planned attempts
Terminus-2 – gpt-oss-120b (high)OpenAI34*No pending judgements; coverage incomplete2 of 2320 of 614 planned attempts
Terminus-2 – GLM-4.7-Flash (thinking on)Z.ai29*No pending judgements; coverage incomplete2 of 2320 of 614 planned attempts
Terminus-2 – GLM-5.3-Flash (max)Z.ai27*No pending judgements; coverage incomplete2 of 2320 of 614 planned attempts
Terminus-2 – gpt-oss-120b (low)OpenAI25*No pending judgements; coverage incomplete2 of 2320 of 614 planned attempts
Terminus-2 – Llama 3.3 70B (Non-reasoning)Meta7*No pending judgements; coverage incomplete2 of 2320 of 614 planned attempts

Geospatial Agent Index vs. cost per task

Higher and further left is better

  • Planned attempts still to come
  • Most attractive quadrant
  • Pareto line
Geospatial Agent Index vs. cost per taskTerminus-2 – DeepSeek V4 Flash (max): Geospatial Agent Index 53.07, cost per task (usd) $0.086; Terminus-2 – DeepSeek V4 Flash (high): Geospatial Agent Index 51.94, cost per task (usd) $0.087; Terminus-2 – DeepSeek V4 Pro (high): Geospatial Agent Index 53.89, cost per task (usd) $0.428; Terminus-2 – Gemma 4 26B A4B (thinking on): Geospatial Agent Index 38.9, cost per task (usd) $0.018; Terminus-2 – GLM-4.7-Flash (thinking on): Geospatial Agent Index 28.77, cost per task (usd) $0.035; Terminus-2 – GLM-5.2 (high): Geospatial Agent Index 56.11, cost per task (usd) $0.319; Terminus-2 – GLM-5.2 (none): Geospatial Agent Index 43.19, cost per task (usd) $0.151; Terminus-2 – GLM-5.2 (max): Geospatial Agent Index 55.38, cost per task (usd) $0.443; Terminus-2 – GLM-5.3-Flash (low): Geospatial Agent Index 40.09, cost per task (usd) $0.051; Terminus-2 – GLM-5.3-Flash (max): Geospatial Agent Index 27.24, cost per task (usd) $0.060; Terminus-2 – GLM-5.3 (low): Geospatial Agent Index 38, cost per task (usd) $0.407; Terminus-2 – GLM-5.3 (max, default): Geospatial Agent Index 37.77, cost per task (usd) $0.525; Terminus-2 – gpt-oss-120b (low): Geospatial Agent Index 25.19, cost per task (usd) $0.0061; Terminus-2 – gpt-oss-120b (high): Geospatial Agent Index 34.2, cost per task (usd) $0.033; Terminus-2 – Kimi K2.6 (always on): Geospatial Agent Index 52.23, cost per task (usd) $0.109; Terminus-2 – Kimi K2.7 Code (always on): Geospatial Agent Index 54.77, cost per task (usd) $0.183; Terminus-2 – Kimi K3 (always on): Geospatial Agent Index 58.02, cost per task (usd) $0.336; Terminus-2 – Llama 3.3 70B (Non-reasoning): Geospatial Agent Index 6.92, cost per task (usd) $0.024; Claude Code – Claude Opus 5.5 (medium): Geospatial Agent Index 65.34, cost per task (usd) $0.149; Claude Code – Claude Opus 5.5 (high): Geospatial Agent Index 68.12, cost per task (usd) $0.186; Claude Code – Claude Sonnet 5.5 (medium): Geospatial Agent Index 57.72, cost per task (usd) $0.058; Claude Code – Claude Sonnet 5.5 (high): Geospatial Agent Index 64.8, cost per task (usd) $0.072; Claude Code – Claude Haiku 5.5 (medium): Geospatial Agent Index 58.19, cost per task (usd) $0.0080; Claude Code – Claude Haiku 5.5 (high): Geospatial Agent Index 60.47, cost per task (usd) $0.011; Claude Code – Claude Opus 5.5 (xhigh): Geospatial Agent Index 68.84, cost per task (usd) $0.411; Claude Code – Claude Sonnet 5.5 (xhigh): Geospatial Agent Index 63.83, cost per task (usd) $0.172; Claude Code – Claude Haiku 5.5 (xhigh): Geospatial Agent Index 63.06, cost per task (usd) $0.026; Codex – GPT-6.1 Sol (medium): Geospatial Agent Index 65.29, cost per task (usd) $0.061; Codex – GPT-6.1 Sol (high): Geospatial Agent Index 62.77, cost per task (usd) $0.081; Codex – GPT-6.1 Sol (xhigh): Geospatial Agent Index 64.95, cost per task (usd) $0.126; Codex – GPT-6 Luna (xhigh): Geospatial Agent Index 60.31, cost per task (usd) $0.010Most attractive quadrant01020304050607080$0.005$0.01$0.02$0.05$0.10$0.20$0.50$1.00Cost per task (USD) (log scale)Geospatial Agent IndexClaude Code – Claude Opus 5.5 (xhigh)Claude Code – Claude Opus 5.5 (high)Claude Code – Claude Opus 5.5 (medium)Codex – GPT-6.1 Sol (medium)Codex – GPT-6.1 Sol (xhigh)Claude Code – Claude Sonnet 5.5 (high)Claude Code – Claude Sonnet 5.5 (xhigh)Claude Code – Claude Haiku 5.5 (xhigh)Codex – GPT-6.1 Sol (high)Claude Code – Claude Haiku 5.5 (high)Codex – GPT-6 Luna (xhigh)Claude Code – Claude Haiku 5.5 (medium)Terminus-2 – Kimi K3 (always on)Claude Code – Claude Sonnet 5.5 (medium)Terminus-2 – GLM-5.2 (high)Terminus-2 – GLM-5.2 (max)Terminus-2 – Kimi K2.7 Code (always on)Terminus-2 – DeepSeek V4 Pro (high)Terminus-2 – DeepSeek V4 Flash (max)Terminus-2 – Kimi K2.6 (always on)Terminus-2 – DeepSeek V4 Flash (high)Terminus-2 – GLM-5.2 (none)Terminus-2 – GLM-5.3-Flash (low)Terminus-2 – Gemma 4 26B A4B (thinking on)Terminus-2 – GLM-5.3 (low)Terminus-2 – GLM-5.3 (max, default)Terminus-2 – gpt-oss-120b (high)Terminus-2 – GLM-4.7-Flash (thinking on)Terminus-2 – GLM-5.3-Flash (max)Terminus-2 – gpt-oss-120b (low)Terminus-2 – Llama 3.3 70B (Non-reasoning)
How to read this chart

Partial coverage. Not plotted and not on the Pareto line; listed in the table: Terminus-2 – Claude Sonnet 4.6 (adaptive, effort high), Terminus-2 – Gemini 3.1 Flash-Lite (low), Terminus-2 – Gemini 3.1 Flash-Lite (minimal), Terminus-2 – Gemini 3.1 Flash-Lite (high), Terminus-2 – Gemini 3.1 Pro (preview) (low), Terminus-2 – Gemini 3.1 Pro (preview) (high), Terminus-2 – Gemini 3.8 Flash (high), Terminus-2 – Gemini 3.8 Flash (low), Terminus-2 – gpt-oss-20b (high), Terminus-2 – Qwen 3.8 27B (xhigh), Claude Code – Claude Haiku 4.5 (thinking 32k), Kimi Code – Kimi K2.6 (always on), Kimi Code – Kimi K2.7 Code (always on), Claude Code – Claude Opus 5 (high), Claude Code – Claude Sonnet 5 (high), Claude Code – Claude Opus 4.8 (high), Claude Code – Claude Opus 4.7 (high).

What cost is measuring. What one attempt at a task would cost if paid token by token at the provider's published API prices, averaged over attempts: ordinary input tokens, input tokens served from the provider's cache at the lower cached price, tokens written to the cache where the provider charges for that, and output tokens (thinking included). Cost assumes each harness uses the model's pay-per-token API, priced at public list rates; sandboxes and our own engineering time are not included. Failed attempts count too.

How to read this chart. Each point is one model configuration. Further left means a lower average cost per task (log scale); higher means a higher Geospatial Agent Index. Both axes fit the models shown, so the score axis does not start at zero. The shaded most attractive quadrant is the top-left quarter of the plot, split at the middle of each axis: a reading aid that moves with the axes when you change the models shown, not a fixed bar. The dotted Pareto line joins the shown models that no cheaper shown model beats on score.

Data table: Geospatial Agent Index vs. cost per task
Geospatial Agent Index vs. cost per task
ModelGeospatial Agent IndexCost per task (USD)On the Pareto line
Terminus-2 – Claude Sonnet 4.6 (adaptive, effort high)40* (partial: attempt 1 on 209 of 320 tasks)$0.291Not plotted: partial coverage (36 of 147 Earth-Bench V2 tasks)
Terminus-2 – DeepSeek V4 Flash (max)53*$0.086No
Terminus-2 – DeepSeek V4 Flash (high)52*$0.087No
Terminus-2 – DeepSeek V4 Pro (high)54*$0.428No
Terminus-2 – Gemini 3.1 Flash-Lite (low)37* (partial: attempt 1 on 209 of 320 tasks)$0.013Not plotted: partial coverage (36 of 147 Earth-Bench V2 tasks)
Terminus-2 – Gemini 3.1 Flash-Lite (minimal)29* (partial: attempt 1 on 209 of 320 tasks)$0.0057Not plotted: partial coverage (36 of 147 Earth-Bench V2 tasks)
Terminus-2 – Gemini 3.1 Flash-Lite (high)40* (partial: attempt 1 on 205 of 320 tasks)$0.021Not plotted: partial coverage (35 of 147 Earth-Bench V2 tasks; 170 of 173 GeoBenchX tasks)
Terminus-2 – Gemini 3.1 Pro (preview) (low)44* (partial: attempt 1 on 209 of 320 tasks)$0.061Not plotted: partial coverage (36 of 147 Earth-Bench V2 tasks)
Terminus-2 – Gemini 3.1 Pro (preview) (high)43* (partial: attempt 1 on 209 of 320 tasks)$0.275Not plotted: partial coverage (36 of 147 Earth-Bench V2 tasks)
Terminus-2 – Gemini 3.8 Flash (high)34* (partial: attempt 1 on 209 of 320 tasks)$0.336Not plotted: partial coverage (36 of 147 Earth-Bench V2 tasks)
Terminus-2 – Gemini 3.8 Flash (low)49* (partial: attempt 1 on 209 of 320 tasks)$0.147Not plotted: partial coverage (36 of 147 Earth-Bench V2 tasks)
Terminus-2 – Gemma 4 26B A4B (thinking on)39*$0.018No
Terminus-2 – GLM-4.7-Flash (thinking on)29*$0.035No
Terminus-2 – GLM-5.2 (high)56*$0.319No
Terminus-2 – GLM-5.2 (none)43*$0.151No
Terminus-2 – GLM-5.2 (max)55*$0.443No
Terminus-2 – GLM-5.3-Flash (low)40*$0.051No
Terminus-2 – GLM-5.3-Flash (max)27*$0.060No
Terminus-2 – GLM-5.3 (low)38*$0.407No
Terminus-2 – GLM-5.3 (max, default)38*$0.525No
Terminus-2 – gpt-oss-120b (low)25*$0.0061Yes
Terminus-2 – gpt-oss-120b (high)34*$0.033No
Terminus-2 – gpt-oss-20b (high)28*$0.016Not plotted: partial coverage (172 of 173 GeoBenchX tasks)
Terminus-2 – Kimi K2.6 (always on)52*$0.109No
Terminus-2 – Kimi K2.7 Code (always on)55*$0.183No
Terminus-2 – Kimi K3 (always on)58*$0.336No
Terminus-2 – Llama 3.3 70B (Non-reasoning)7*$0.024No
Terminus-2 – Qwen 3.8 27B (xhigh)28* (partial: attempt 1 on 36 of 320 tasks)$0.051Not plotted: partial coverage (36 of 147 Earth-Bench V2 tasks; 0 of 173 GeoBenchX tasks)
Claude Code – Claude Haiku 4.5 (thinking 32k)36* (partial: attempt 1 on 94 of 320 tasks)$0.155Not plotted: partial coverage (47 of 147 Earth-Bench V2 tasks; 47 of 173 GeoBenchX tasks)
Kimi Code – Kimi K2.6 (always on)56* (partial: attempt 1 on 72 of 320 tasks)$0.219Not plotted: partial coverage (11 of 147 Earth-Bench V2 tasks; 61 of 173 GeoBenchX tasks)
Kimi Code – Kimi K2.7 Code (always on)54* (partial: attempt 1 on 82 of 320 tasks)$0.227Not plotted: partial coverage (12 of 147 Earth-Bench V2 tasks; 70 of 173 GeoBenchX tasks)
Claude Code – Claude Opus 5.5 (medium)65*$0.149Yes
Claude Code – Claude Opus 5.5 (high)68*$0.186Yes
Claude Code – Claude Sonnet 5.5 (medium)58*$0.058No
Claude Code – Claude Sonnet 5.5 (high)65*$0.072No
Claude Code – Claude Haiku 5.5 (medium)58*$0.0080Yes
Claude Code – Claude Haiku 5.5 (high)60*$0.011Yes
Claude Code – Claude Opus 5.5 (xhigh)69*$0.411Yes
Claude Code – Claude Sonnet 5.5 (xhigh)64*$0.172No
Claude Code – Claude Haiku 5.5 (xhigh)63*$0.026Yes
Claude Code – Claude Opus 5 (high)63* (partial: attempt 1 on 160 of 320 tasks)$0.522Not plotted: partial coverage (112 of 147 Earth-Bench V2 tasks; 48 of 173 GeoBenchX tasks)
Claude Code – Claude Sonnet 5 (high)56* (partial: attempt 1 on 104 of 320 tasks)$0.331Not plotted: partial coverage (41 of 147 Earth-Bench V2 tasks; 63 of 173 GeoBenchX tasks)
Claude Code – Claude Opus 4.8 (high)51* (partial: attempt 1 on 105 of 320 tasks)$0.447Not plotted: partial coverage (49 of 147 Earth-Bench V2 tasks; 56 of 173 GeoBenchX tasks)
Claude Code – Claude Opus 4.7 (high)53* (partial: attempt 1 on 109 of 320 tasks)$0.521Not plotted: partial coverage (49 of 147 Earth-Bench V2 tasks; 60 of 173 GeoBenchX tasks)
Codex – GPT-6.1 Sol (medium)65*$0.061Yes
Codex – GPT-6.1 Sol (high)63*$0.081No
Codex – GPT-6.1 Sol (xhigh)65*$0.126No
Codex – GPT-6 Luna (xhigh)60*$0.010Yes

Head-to-head comparisons

Specification and settings

Developer
Moonshot AI
Context window
1,000,000 tokens
Image input
Yes
Reasoning setting
always on
Temperature
Provider default
Maximum output tokens
65,536
Input price per 1M tokens
$3.00
Cached input price per 1M tokens
$0.300
Output price per 1M tokens
$15.00

Why this model was chosen: model selection.