Direct answer: GPT-6 Sol and GPT-6 Luna are 2 OpenAI models below GPT-6 Astra, released on 22 September 2026. The Sol APIAPIThe official door 2 systems use to exchange data, without anybody copying it by hand.Open the glossary price is $2 input and $10 output per 1M tokens, and Luna costs $0.10 and $0.50. Moving off GPT-5.6 needs 5 changes: model and parameters, tool calling, prompt caching, the 272,000-token line, and a retest.

Main condition: the steps in this article apply to the OpenAI API, mainly the Responses API. Limit: the Artificial Analysis independent test found drops on knowledge work tasks, so do not move reports or presentations without a retest.

We read the OpenAI announcement, the model pages, and the migration guide on 23 September 2026. We took the benchmark numbers from the data labels of the official OpenAI charts. The migration example in this article is a simulation with dummy data.

What changed from GPT-5.6

OpenAI writes that Sol and Luna were trained with methods like those of GPT-6 Astra, which launched in early September 2026. The goal is GPT-6 capability at a lower cost. Source: the OpenAI announcement.

If you still use GPT-5.6, our article on Sol, Terra, and Luna in GPT-5.6 (Indonesian) explains the old routing pattern. The GPT-6 family has no Terra, so you must map your middle lane again to Sol or Luna.

Three GPT-6 family cards: Astra $10 and $50, Sol $2 and $10, Luna $0.10 and $0.50 per 1M tokens, with cache read, knowledge cutoff, and effort levels
All 3 models use a 1,050,000-token context and 128,000 max output tokens. Astra does not accept the none effort.
ItemGPT-6 AstraGPT-6 SolGPT-6 Luna
API IDgpt-6-astragpt-6-solgpt-6-luna
Input / cache read / output$10 / $1 / $50$2 / $0.20 / $10$0.10 / $0.01 / $0.50
Cache write$12.50$2.50$0.125
Knowledge cutoff30 April 202620 April 202618 May 2026
Effort levelslow to maxnone to maxnone to max
Focus per OpenAIThe hardest end-to-end workComplex coding and agentsFocused high-volume tasks

Sources: the GPT-6 Astra, GPT-6 Sol, and GPT-6 Luna model pages, read on 23 September 2026.

Prices fell, and 1 detail is often misread

OpenAI writes that Sol and Luna prices fell 50% against the GPT-5.6 promotional prices. Sol input fell from $4 to $2, and output from $20 to $10. Luna input fell from $0.20 to $0.10.

Luna output actually fell 58%, from $1.20 to $0.50. An OpenAI spokesperson confirmed to VentureBeat that these prices are permanent, not a promotion.

Dumbbell chart of prices from GPT-5.6 to GPT-6: Sol input $4 to $2, Sol output $20 to $10, Luna input $0.20 to $0.10, and Luna output $1.20 to $0.50
Three prices fell 50% and Luna output fell 58%. Recalculate your budget with the new numbers, not with the headline percentage.

Facts, honesty, and answer style

On the OpenAI factuality evaluation, Sol medium answers with a factual error fell to 6.9%, from 15.0% for GPT-5.6 Sol medium. Luna max reached 7.6%, lower than the 8.5% of GPT-5.6 Sol max. The evaluation uses conversations that users had flagged as wrong, so the rates are higher than in normal use.

On the coding deception test, OpenAI reports a rate of 1.3% for Sol and 2.8% for Luna, down from 10.4% and 9.5% on GPT-5.6. The test tasks were chosen on purpose to provoke dishonesty. VentureBeat quotes these numbers from the OpenAI chart.

OpenAI also brought the Astra communication style to Sol and Luna: clearer, less jargon, and slightly shorter answers. Check again any parser that depends on the length or format of old answers.

New API features in the GPT-6 family

  • Async tool calling: the model keeps working while your application runs a tool.
  • Mid-turn steering: you send a correction while the model is still working, over WebSocket.
  • configuration_update: effort changes mid-conversation without breaking the cache.
  • New prompt caching: a cache of at least 30 minutes, explicit breakpoints, and a diagnosis dashboard.

Sources: the Using GPT-6 guide and the Better prompt caching for GPT-6 article.

Official OpenAI benchmarks per effort level

OpenAI published charts with a score per effort level. The table below holds effort medium, which is the default, and effort max. All numbers are vendor claims from the charts of 22 September 2026.

BenchmarkSol mediumSol maxLuna mediumLuna max
FrontierCode 1.1 Main45.9% ($0.80)49.3% ($2.14)35.5% ($0.053)42.4% ($0.11)
DeepSWE 1.156.6% ($0.38)68.8% ($2.74)44.5% ($0.052)66.6% ($0.22)
OSWorld 2.0 offline54.0% ($1.32)64.4% ($3.25)31.5% ($0.062)52.7% ($0.27)
Answers with a factual error6.9%4.6%17.5%7.6%

The numbers in brackets are the cost per task per OpenAI. For context, OpenAI puts Sol max on DeepSWE 1.1 points below ClaudeClaude ProThe paid subscription for the Claude AI assistant from Anthropic. It unlocks connectors to outside tools.Open the glossary Fable 5 xhigh, which scores 69.9%, at about 80% lower cost.

DeepSWE 1.1 line chart per effort level: GPT-6 Sol rises from 37.2% at low to 68.8% at max, GPT-6 Luna rises from 2.4% at low to 66.6% at max, with the Luna cost per task
Luna at effort low almost never finishes a coding task. At effort high, Luna reaches 59.3% at $0.084 per task.

This matches our test. On 23 September 2026, Luna medium got an invoice total wrong 2 of 2 times, then right 3 of 3 times at effort high. The test details are in the GPT-6 Sol, Luna, and Claude Opus 5.5 comparison.

The OpenAI charts do not include Claude Opus 5.5, because both launched on the same day. For a direct comparison, use an independent test or your own test.

What you need first

  • OpenAI API access on a tier that includes GPT-6. The Free tier does not support Sol and Luna.
  • A staging environment that runs the same code as production.
  • 20 real tasks with correct answers, from the workflow you will move.
  • A log that stores input_tokens, cached_tokens, cache_write_tokens, and output_tokens per request.
  • A way back to the old model: 1 config variable, not a code change.

Step 1: Change the model ID, effort, and sampling parameters

Set model to gpt-6-sol or gpt-6-luna. Keep your effective effort, then remove the sampling parameters that reasoning mode does not accept.

Before and after code cards: model gpt-5.6-sol with minimal effort, temperature, and top_p becomes gpt-6-sol with low effort and no temperature or top_p
The minimal effort does not exist in GPT-6, so start at low. Remove temperature, top_p, and top_logprobs when effort is not none.
  • When old code uses minimal, start at low and compare results.
  • Sol and Luna accept none. Astra does not, so use low for Astra.
  • When effort is not none, remove temperature, top_p, and top_logprobs.

Verify: the first staging request returns with no parameter error. Source: the Migration quickstart section of the Using GPT-6 guide.

Step 2: Move tool calling to the Responses API

Chat Completions accepts function calling on Sol and Luna only with reasoning_effort none. For reasoning with tools, use the Responses API.

Comparison of Chat Completions and the Responses API for GPT-6: Chat Completions accepts function calling only at effort none, the Responses API accepts reasoning with built-in tools and async tool calling
The Responses API opens built-in tools such as web search, file search, MCPMCPA standard that lets an AI program use your tools and data under clear permissions.Open the glossary, hosted shell, and computer use. Async tool calling exists only there.

The Responses API on Sol and Luna supports 10 built-in tools. The list: web search, file search, image generation, code interpreter, hosted shell, apply patch, skills, computer use, MCP, and tool search. The list is on the GPT-6 Sol model page.

When a tool is slow, mark it with "async": true. The model keeps working, and your application sends the tool result later with the same call_id.

Verify: 1 request at effort medium calls your tool and receives its result with no error.

Step 3: Order the prompt for GPT-6 caching

Put the stable part at the start of the prompt and the changing part at the end. The cache hits only when the prompt start matches exactly, and a cache read costs 10% of the input price.

GPT-6 prompt order diagram: instructions, tool definitions, app instructions, and chat history sit in the cache before the breakpoint, while the new message pays full price, with 4 cache parameters
Keep tool definitions stable and put the new message at the end. Cache writes now cost 1.25x the input price.
client.responses.create(
    model="gpt-6-luna",
    reasoning={"effort": "high"},
    prompt_cache_options={"mode": "implicit", "ttl": "30m"},
    tools=tools,            # keep the order and schema stable every turn
    input=riwayat + [pesan_baru],
)
  • Coming from GPT-5.5 or older? Replace prompt_cache_retention with prompt_cache_options.ttl set to "30m".
  • Change effort mid-conversation with a configuration_update item. Keep the request-level effort unchanged.
  • Limit tools with allowed_tools. Do not delete tool definitions mid-conversation.
  • A prompt under 1,024 tokens is not cached.

Verify: on the 2nd request, input_tokens_details.cached_tokens is above 0. When it is 0, open the cache diagnosis tool; it names a reason such as tools_changed. Source: Better prompt caching for GPT-6.

Step 4: Set an alert at the 272,000-token line

Above 272,000 input tokens, OpenAI bills 2x the input and cache price, and 1.5x the output price, for the whole request. The rule applies to Sol, Luna, and Astra.

Bar chart of 2 GPT-6 Sol requests without cache: a 270,000-token prompt costs $0.58 and a 280,000-token prompt costs $1.18, a 3.7% longer prompt and a 103% higher cost
A prompt 3.7% longer makes the request cost 103% more. Set an alert before a prompt reaches the line.

An example with 4,000 output tokens: a 270,000-token prompt costs $0.58, while a 280,000-token prompt costs $1.18. The extra 10,000 tokens double the cost.

Verify: your log raises an alert when input_tokens passes 250,000. For long documents, also compare with Claude Opus 5.5, which has no such premium. The math is in the guide to API cost per task.

Step 5: Retest 20 tasks before you move traffic

Run 20 real tasks on the old model and the new model, then compare the pass rate per effort. Artificial Analysis found gains and drops against GPT-5.6.

Eight Artificial Analysis result cards: Sol is better on Coding Agent Index, Terminal-Bench 4.0, and hallucination but worse on GDPval; Luna is worse on Coding Agent Index, DeepSWE, and GDPval but better on hallucination
The cost per task fell by about half. Knowledge work and presentation weakened, so test those workflows first.
  • Sol rose on the Coding AgentAI agentAn AI program that performs work steps by itself, for example reading a message, drafting a reply, and recording the result.Open the glossary Index from 55 to 57 and on Terminal-Bench 4.0 from 37% to 43%.
  • Luna fell on the Coding Agent Index from 43 to 41 and on DeepSWE from 66% to 64%.
  • Sol and Luna fell on GDPval-AA v2.1, by about 100 and 75 Elo.
  • The cost per index task fell: Sol from $1.99 to $1.06, Luna from $0.18 to $0.07.

Verify: the new model does not pass fewer tasks than the old model on the same set. Source: Artificial Analysis, 22 September 2026.

Worked example: moving a support bot in 7 days

A simulation with dummy data. A SaaS moves its customer service bot from GPT-5.6 Luna to GPT-6 Luna. Each conversation holds 6,000 input tokens and 1,600 output tokens.

DayActionWhat the log showsDecision
Day 1Switch the model in stagingtemperature is still sent from 1 moduleRemove it from that module
Day 2Reorder the prompt for the cachecached_tokens rises from 0 to 4,500 per turnKeep the tool order
Day 3Test 20 tasks at medium18 pass, 2 fail a discount calculationTry effort high
Day 4Retest the 2 tasks at high2 passUse high for billing intents
Day 5Move 10% of trafficThe pass rate equals the old modelContinue
Day 7Move 100% of trafficCost of 1,000 chats without cache: $3.12 to $1.40Done, keep the way back

The cost in the last row uses standard prices without cache. With the cache, the real cost is lower again.

GPT-6 migration checklist

  1. Change the model ID through 1 config variable. Owner: developer. Evidence: the config diff.
  2. Map the old effort to the GPT-6 effort. Owner: developer. Evidence: a table of old and new effort.
  3. Remove sampling parameters when effort is not none. Owner: developer. Evidence: the staging request log.
  4. Move tool calling to the Responses API. Owner: developer. Evidence: a passing tool test.
  5. Check cached_tokens on the 2nd request. Owner: developer. Evidence: a usage log excerpt.
  6. Set an alert at 250,000 input tokens. Owner: ops. Evidence: the active alert rule.
  7. Test 20 real tasks on the old and new model. Owner: team lead. Evidence: a pass table per effort.
  8. Stop and return to GPT-5.6 when the pass rate falls more than 5 points on those 20 tasks.

When to stay on the old model, and when to move

This Rama Digital recommendation applies to teams that already run on GPT-5.6.

Your situationChoiceReason
A high-volume bot with a code checkerMove to GPT-6 LunaThe cost per task falls about 60% per Artificial Analysis
A coding or terminal agentMove to GPT-6 SolThe Coding Agent Index rises and the cost falls about 50%
Client reports and presentationsTest first, do not move by defaultGDPval-AA fell on Sol and Luna
Documents above 272,000 tokensCompare with Claude Opus 5.5The long-context premium doubles the input price
The hardest tasks that still fail on Sol maxEscalate to GPT-6 AstraAstra scores highest in the GPT-6 family on the OpenAI charts

Pick Luna when code can check the result and you use effort high for arithmetic. Pick Sol when the task uses tools or touches production code.

Frequently asked questions

When did GPT-6 Sol and GPT-6 Luna launch? OpenAI released both on 22 September 2026. The ChatGPT rollout ran gradually through that day.

Are GPT-6 Sol and Luna in free ChatGPT? Free and Go users get GPT-6 Luna in the desktop app. Sol is in ChatGPT Work and Codex for Plus, Pro, Business, Enterprise, and Edu.

Is there a GPT-6 Terra? There is no Terra in the GPT-6 family as of 23 September 2026. The GPT-6 family holds Astra, Sol, and Luna.

Does old Chat Completions code still work? It still works for requests without tools. Function calling in Chat Completions works only with reasoning_effort none, so move agents to the Responses API.

What is the maximum context of GPT-6 Sol and Luna? Both accept a 1,050,000-token context and 128,000 output tokens. Above 272,000 input tokens, the whole request costs more.

Next step

The limit that still applies: the numbers in this article are vendor claims and third-party tests, not results on your data. A migration is safe when your 20 real tasks pass and the way back is ready.

If you want us to watch an AI system that already runs and update its model and prompts, open OS Care Retainer. To set the migration scope first, pick a Technical Scoping Session slot.

Sources