Image3 credits / image
Seedream 4
Seedream 4.0 combines detailed text-to-image generation with optional reference-image guidance, making it useful for polished concepts across square, portrait, landscape, and wide formats.
// 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": "seedream_4",
"prompt": "Canvas glamping tent in a red desert at twilight, string lights and a low fire pit, first stars. 35mm film still, soft natural light, muted earth tones with one terracotta accent, shallow depth of field, subtle film grain, candid and unposed, no text, logos, or watermark.",
"aspect_ratio": "1:1"
};
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
Example
Seedream 4.0: Desert camp
Price
3 credits / image. Check the exact cost for your settings before generating. Failed generations are refunded. Full price sheet.
More models by ByteDance
Compare available models and their prices. The exact price depends on your settings.
| Model name | Price | Resolution | Duration |
|---|---|---|---|
| Seedance 1.5 Pro | 5.2 credits / second | — | 4–12s |
| Seedance 1 Pro | 12.5 credits / second | — | 5–10s |
| Seedance 2.0 | from 30.24 credits / second | 720p · 1080p | 4–15s |
| Seedance 2.0 Fast | 24.19 credits / second | — | 4–15s |
| Seedance 2.0 (Image to Video) | from 30.24 credits / second | 720p · 1080p | 4–15s |
| Seedance 2.0 Mini | from 7.21 credits / second | 480p · 720p | 4–15s |
| Seedance 2.0 Mini (Video Reference) | from 4.33 credits / second | 480p · 720p | 4–15s |
| Seedance 2.5 | from 22.05 credits / second | 480p · 720p · 1080p | 4–30s |
| Seedance 2.5 (Video Editing) | Priced by input | 480p · 720p · 1080p | — |
| Seedance 2.5 Person Reference | from 16.5 credits / second | 480p · 720p · 1080p | 4–30s |
| Seedance 2.5 (Reference to Video) | from 22.05 credits / second | 480p · 720p · 1080p | 4–30s |
| Seedance 2.5 (Video Reference) | from 13.23 credits / second | 480p · 720p · 1080p | 4–15s |