Video40 credits / second
Veo 3.1 Native Dialogue
Veo 3.1 Native Dialogue animates a start image into an 8-second talking scene where the dialogue, lip movement, vocal performance, and environmental sound are all generated together — script the lines in quotes and the model performs them.
// Node.js. Running this creates one paid generation.
import { randomUUID } from 'node:crypto';
const base = "https://www.made.app/api";
const headers = {
Authorization: `Bearer ${process.env.MADE_API_KEY}`,
'Content-Type': 'application/json',
};
const input = {
"model": "veo_3_1_native_dialogue",
"prompt": "They talk naturally; one says \"So I finally booked the tickets,\" the other laughs and replies \"No way — when do we leave?\"",
"duration": 8,
"medias": [
{
"value": "https://example.com/reference.jpg",
"role": "start_image"
}
]
};
async function api(path, body) {
const response = await fetch(base + path, {
method: body ? 'POST' : 'GET', headers,
...(body && { body: JSON.stringify(body) }),
});
if (!response.ok) throw new Error(await response.text());
return response.json();
}
const { cost } = await api('/v1/cost', input);
console.log('Quoted cents:', cost.customerCostCents);
// Preserve this request ID when retrying a submission.
const requestId = randomUUID();
let job = await api('/v1/generations', {
...input, request_id: requestId,
max_cost_cents: cost.customerCostCents,
});
console.log('Request:', job.id);
while (!['succeeded', 'failed', 'canceled'].includes(job.status)) {
await new Promise(resolve => setTimeout(resolve, 3000));
job = await api('/v1/generations/' + job.id);
}
if (job.status !== 'succeeded') throw new Error(JSON.stringify(job.error || job.status));
console.log(job.result.assets);Input
Uses your credits. See the exact price before generating.
Result
ExampleDialogue scene
Price
40 credits / second. 8s video = 320 credits Check the exact cost for your settings before generating. Failed generations are refunded. Full price sheet.
More models by Google
Compare available models and their prices. The exact price depends on your settings.
| Model name | Price | Resolution | Duration |
|---|---|---|---|
| Gemini Omni Flash | 10 credits / second | — | 3–10s |
| Gemini Omni Flash 1.1 | from 3 credits / second | 4k · 360p · 720p · 1080p | 3–10s |
| Nano Banana | 4 credits / image | — | — |
| Nano Banana 2 | from 6 credits / image | 1K · 2K · 4K · 0.5K | — |
| Nano Banana 2.1 | from 8 credits / image | 1K · 2K · 4K | — |
| Nano Banana 2 Lite | 5 credits / image | — | — |
| Nano Banana Pro | from 15 credits / image | 1K · 2K · 4K | — |
| Veo 3 | 40 credits / second | — | 4–8s |
| Veo 3.1 | 40 credits / second | — | 4–8s |
| Veo 3.1 Lite | from 5 credits / second | 720p · 1080p | 4–8s |
| Veo 3 Fast | 15 credits / second | — | 4–8s |