chatunverifiedHand-written lesson

OpenAI

GPT-6 Luna

openai/gpt-6-luna

The fast, cost-efficient model in OpenAI's GPT-6 series, suited to high-volume and latency-sensitive workloads such as chat, classification, and lightweight agentic tasks.

RoleThe in-app chat and classifier

$0.100

In / M

$0.500

Out / M

1.1M

Context

AA intelligence index
27.9
Inputs
file, image, text
Outputs
text
Tools
Listed
Structured output
Listed
Reasoning
Listed
Weights
Not verified
Listed
Sep 22, 2026
Live from the OpenRouter listing ↗

01 · What it's good at

Use it for this.

Three jobs this model is built for, and the ones to give to something else.

01

In-app chat where latency matters

02

Classification and tagging at volume

03

Lightweight agents with one or two tools

Skip it for

  • Calibrated probabilities. OpenAI also lists GPT-6 Luna Decisions for that

02 · Example tasks

What you'd actually send it.

Real inputs, not a benchmark. Paste one into the snippet below to try it.

You send

You are the help assistant for a budgeting app. Answer in under 80 words and link the right settings page.

Why this model

Chat and latency-sensitive workloads lead the listing.

03 · Your stack

Where it sits: Do the volume.

Put it at the front of your product: the chat box, the auto-tagger, the first responder. Hand off to Sol when a request is hard.

04 · Wire it up

One request. Paste and run.

Uses OpenRouter, so one key works for every model on this site. Set OPENROUTER_API_KEY and swap the prompt for one of the tasks above.

// OpenRouter speaks the OpenAI Chat Completions format.
const res = await fetch("https://openrouter.ai/api/v1/chat/completions", {
  method: "POST",
  headers: {
    Authorization: `Bearer ${process.env.OPENROUTER_API_KEY}`,
    "Content-Type": "application/json",
  },
  body: JSON.stringify({
    "model": "openai/gpt-6-luna",
    "messages": [
      {
        "role": "system",
        "content": "You are the help assistant for a budgeting app. Answer in under 80 words."
      },
      {
        "role": "user",
        "content": "How do I split a transaction between two categories?"
      }
    ],
    "reasoning": {
      "effort": "none"
    }
  }),
});
const data = await res.json();
console.log(data.choices[0].message.content);

05 · Watch out for

Gotchas.

  • Reasoning can be set to none for the lowest latency.

  • Batch pricing is listed separately for offline jobs.

Sources

Lessons are written from each model's listing and the linked docs. We don't publish our own benchmark numbers; the index above is Artificial Analysis, as shown on OpenRouter.

Keep learning

Same board, other models.