Gemini 3.6 Flash (gemini-3.6-flash) and Gemini 3.5 Flash-Lite (gemini-3.5-flash-lite) are generally available (GA) and ready for production use.
- Gemini 3.6 Flash: Stronger performance on complex agentic and multimodal tasks while reducing token usage, at a lower price point than 3.5 Flash.
- Gemini 3.5 Flash-Lite: The fastest, lowest-cost model in the 3.5 family. Outperforms prior Flash-Lite generations for high-throughput execution.
This guide explains what's new in each model, what API changes affect your code, and how to migrate.
Gemini 3.6 Flash
Install the skill:
npx skills add google-gemini/gemini-skills --skill gemini-interactions-api --globalApply the skill:
/gemini-interactions-api migrate my app to Gemini 3.6 Flash
Gemini 3.5 Flash-Lite
Install the skill:
npx skills add google-gemini/gemini-skills --skill gemini-interactions-api --globalApply the skill:
/gemini-interactions-api migrate my app to Gemini 3.5 Flash-Lite
New models
| Model | Model ID | Default thinking level | Pricing | Description |
|---|---|---|---|---|
| Gemini 3.6 Flash | gemini-3.6-flash |
medium |
$1.50/1M input tokens and $7.50/1M output tokens | Balances speed with intelligence for agentic and multimodal tasks. |
| Gemini 3.5 Flash-Lite | gemini-3.5-flash-lite |
minimal |
$0.30/1M input tokens and $2.50/1M output tokens | The fastest, lowest-cost 3.5 model for high-throughput execution. |
Both models support the 1M token context window, 64k max output tokens, thinking, and the full suite of built-in tools including Computer Use.
For complete specs, see the model pages:
For detailed pricing, see the pricing page.
Quickstart
Python
from google import genai
client = genai.Client()
response = client.models.generate_content(
model="gemini-3.6-flash",
contents="Write a three.js script that renders an interactive 3D robot.",
)
print(response.text)
JavaScript
import { GoogleGenAI } from "@google/genai";
const ai = new GoogleGenAI({});
async function main() {
const response = await ai.models.generateContent({
model: "gemini-3.6-flash",
contents: "Write a three.js script that renders an interactive 3D robot.",
});
console.log(response.text);
}
main();
REST
curl "https://generativelanguage.googleapis.com/v1beta/models/gemini-3.6-flash:generateContent" \
-H "x-goog-api-key: $GEMINI_API_KEY" \
-H 'Content-Type: application/json' \
-X POST \
-d '{
"contents": [{
"parts": [{"text": "Write a three.js script that renders an interactive 3D robot."}]
}]
}'
What's new in Gemini 3.6 Flash
- Token and turn reduction: Completes multi-step workflows with fewer reasoning steps, conversational turns, and tool calls than Gemini 3.5. It also reduces execution loop spiraling.
- Improved code generation: Produces higher quality production-ready code with fewer unwanted edits and fewer debugging loops.
- Better instruction following: Reduces unwanted file changes during diagnostic tasks.
- Strong multimodal and spatial reasoning: Improved performance on chart interpretation, visual blueprint conversion, and multi-element web layout generation.
- Upfront programmatic inspection: Prefers running diagnostic code scripts before making changes more frequently than Gemini 3.5 Flash. This improves accuracy on complex tasks, but can add extra exploratory steps on simple frontend work.
- Computer Use support: Supported as native tool for agentic UI automation.
- UI styling preference: Better at creating functional code, though human evaluators preferred earlier models for visual layout and styling. You can mitigate this by providing explicit design guidelines.
- Default thinking effort (medium): Uses the same
mediumdefault thinking level as Gemini 3.5 Flash. - Reduced pricing: Lower output token costs ($7.50/1M vs. $9.00/1M for 3.5 Flash). Input tokens remain at $1.50/1M.
What's new in Gemini 3.5 Flash-Lite
- Reduced task execution latency: Highest throughput in the 3.5 family for high-volume data parsing and document extraction.
- Enhanced reasoning and multimodal performance: Strong migration path from Gemini 2.5 Flash, with higher scores on reasoning tasks like HLE (18.0% vs. 11.0%) and multimodal benchmarks like CharXIV (74.5% vs. 63.7%).
- Subagent orchestration and tool reliability: Improves tool execution reliability for code execution, search, and MCP workflows. Increase the thinking level for autonomous planning and complex subagent tasks.
- Improved document understanding: Improves accuracy on document parsing and structured data extraction. Experiment with both minimal and high thinking levels depending on document complexity.
- Interactive web coding and tabular data processing: Performs strongly on frontend JavaScript and tabular data processing by planning via lightweight code execution.
- Chatbot and persona persistence: Stronger multi-turn instruction following and persona consistency over Gemini 3.1 Flash-Lite.
- Computer Use support: Supported as native tool for agentic UI automation.
Choosing the right Flash or Flash-Lite model
Use this table to select the right model and migration path for your workloads.
Both models require removing deprecated sampling parameters (temperature, top_p, top_k) and prefilled model turns. See API changes for details.
| Model | Primary use cases | Recommended migration target |
|---|---|---|
Gemini 3.6 Flashgemini-3.6-flash |
Code generation, spatial/multimodal reasoning, multi-step agentic workflows | Gemini 3.5 Flash, Gemini 3 Flash (Preview), or Gemini 3.1 Pro |
Gemini 3.5 Flash-Lite gemini-3.5-flash-lite |
Autonomous subagent execution, high-volume data analysis and document extraction, structured JSON parsing | Gemini 3.1 Flash-Lite or Gemini 2.5 Flash |
Updated Antigravity agent
Due to its improved performance, Gemini 3.6 Flash is now the new default model powering the Antigravity agent in Gemini Managed Agents. This can be changed by setting a new field on the API.
Python
from google import genai
client = genai.Client()
interaction = client.interactions.create(
agent="antigravity-preview-05-2026",
input="Read Hacker News, summarize the top 10 stories, and save the results as a PDF.",
environment="remote",
)
print(interaction.output_text)
JavaScript
import { GoogleGenAI } from "@google/genai";
const client = new GoogleGenAI({});
const interaction = await client.interactions.create({
agent: "antigravity-preview-05-2026",
input: "Read Hacker News, summarize the top 10 stories, and save the results as a PDF.",
environment: "remote",
}, { timeout: 300000 });
console.log(interaction.output_text);
REST
curl -X POST "https://generativelanguage.googleapis.com/v1beta/interactions" \
-H "Content-Type: application/json" \
-H "x-goog-api-key: $GEMINI_API_KEY" \
-d '{
"agent": "antigravity-preview-05-2026",
"input": "Read Hacker News, summarize the top 10 stories, and save the results as a PDF.",
"environment": "remote"
}'
API changes and parameter updates
Starting with Gemini 3.6 Flash and Gemini 3.5 Flash-Lite, the following API changes apply to these models and all future Gemini model releases.
- Sampling parameter deprecation:
temperature,top_p, andtop_kare deprecated. The API ignores these parameters and returns an error in future model generations. - Prefilled model turn validation: Prefilling model turns is no longer supported. If the last non-empty turn in the request is a
modelturn, the API returns a400error.
Below are detailed explanations and code samples for each API change.
1. Sampling parameter deprecation (temperature, top_p, top_k)
temperature, top_p, and top_k are deprecated and ignored. In future model generations, supplying these parameters returns an HTTP 400 error. Remove these parameters from all requests.
# ⚠️ Remove these parameters (deprecated)
generation_config = {
"temperature": 0.7,
"top_p": 0.9,
"top_k": 40,
}
To improve determinism, define a system instruction with explicit rules for your specific use case.
2. Prefilled model turn validation
API requests ending with a non-empty model role turn are disallowed and return an HTTP 400 Error.
⚠️ Avoid
In legacy generateContent or raw REST payloads, ending with a model role turn
is now disallowed:
/* ❌ DO NOT: End payload contents with a 'model' role turn */
{
"contents": [
{"role": "user", "parts": [{"text": "Translate 'Hello world' to Spanish."}]},
{"role": "model", "parts": [{"text": "Translation:"}]} /* ❌ Returns error */
]
}
✅ Recommended Migration
If your application previously prefilled a model turn to suppress preambles or force JSON formatting, use system_instruction or Structured outputs instead.
# ✅ RECOMMENDED: Use system_instruction to specify output format
response = client.models.generate_content(
model="gemini-3.6-flash",
contents="Translate 'Hello world' to Spanish.",
config={"system_instruction": "Output only the translation without introductory text."},
)
Migration checklist
Gemini 3.6 Flash
Install the skill:
npx skills add google-gemini/gemini-skills --skill gemini-interactions-api --globalApply the skill:
/gemini-interactions-api migrate my app to Gemini 3.6 Flash
Gemini 3.5 Flash-Lite
Install the skill:
npx skills add google-gemini/gemini-skills --skill gemini-interactions-api --globalApply the skill:
/gemini-interactions-api migrate my app to Gemini 3.5 Flash-Lite
Migrate to gemini-3.6-flash
- Update Model ID: Change your target model string to
gemini-3.6-flash. - Remove deprecated sampling parameters:
- Strip
temperature,top_p, andtop_kfrom generation configs. - Replace
thinking_budgetwith the string enumthinking_levelset to"medium"or"high". - Remove
candidate_count(unsupported in Gemini 3.x).
- Strip
- Enforce turn validation rules:
- Remove prefilled model turns.
- Ensure the final user turn contains non-empty text.
- Audit function calling:
- Ensure all
FunctionResponseobjects includecall_idandname. - Place multimodal assets inside the response payload.
- Format inline instructions using
\\n\\n. - If you see
Malformed_Function_Callerrors tied to pre-tool text, see Workarounds for pre-tool text requirements.
- Ensure all
- Baseline Gemini 3.x requirements: For SDK updates and thought signature preservation, see the Gemini 3.5 Migration Checklist.
Migrate to gemini-3.5-flash-lite
- Update Model ID: Change your target model string to
gemini-3.5-flash-lite. - Configure thinking effort level:
- For high-volume extraction, routing, or classification: leave
thinking_levelat"minimal"(default) for maximum throughput. - For autonomous subagents with tool calls, code execution, or multi-step reasoning: set
thinking_levelto"medium"or"high"to prevent premature tool termination.
- For high-volume extraction, routing, or classification: leave
- Remove deprecated parameters and validate function calling: Apply the same rules as 3.6 Flash.
- Baseline Gemini 3.x requirements: Refer to the Gemini 3.5 Migration Checklist.
Next steps
- Review API specs on the Models Overview.
- Explore multi-agent orchestration in the Interactions API Guide.
- Test and refine prompts in Google AI Studio.