
Seedream 4.0
Generate high-quality 2K-4K images from text prompts with optional image-to-image generation using ByteDance's Seedream 4.0 model via BytePlus ARK API.
There's something distinctive about the images that come out of ByteDance's ecosystem. Scroll through Douyin for five minutes and you'll notice it - a particular sensitivity to color grading, an instinct for composition that favors elegance over photorealism, a tendency toward visuals that feel designed rather than documented. Seedream 4.5, ByteDance's image generation model now available on inference shell, carries that same DNA. It generates images up to 2048x2048 (4 megapixels) from text prompts, with flexible aspect ratios and batch generation of up to 6 images per call. But the pricing is almost secondary to what makes it interesting: this model was trained with a different visual vocabulary than anything coming out of OpenAI or Google.
I want to be clear about what that means in practice. If you're generating marketing materials for a Western audience with Western aesthetic expectations, Seedream 4.5 will produce good results. But if your work involves East Asian aesthetics - fashion editorial with that specific Korean or Japanese styling sensibility, product photography that needs to feel at home on Xiaohongshu, or stylized art that draws from anime and manga traditions without looking derivative - this model often outperforms alternatives that cost significantly more.
the bytedance difference is real, not marketing
Every image generation model reflects the biases of its training data and the aesthetic preferences of its creators. DALL-E leans toward a particular brand of American commercial photography. Midjourney has its painterly maximalism. Stable Diffusion models vary wildly depending on the community finetune. Seedream 4.5 comes from a company whose primary product is a short-video platform with over 800 million daily active users, most of them in China and Southeast Asia. The aesthetic feedback loop that shaped this model is fundamentally different from what produced its Western competitors.
This shows up in specific, observable ways. Color palettes tend toward the kinds of harmonies you see in contemporary East Asian design - softer gradients, more sophisticated neutrals, bold accents that feel intentional rather than saturated for attention. Human subjects, particularly faces, render with proportions and lighting that reflect East Asian beauty standards without the uncanny quality that Western models sometimes produce when prompted for similar aesthetics. Fashion and textile rendering is noticeably strong, which makes sense given ByteDance's deep investment in e-commerce through TikTok Shop and Douyin's native shopping features.
Complex compositions hold together well. I've found that Seedream 4.5 handles scenes with multiple subjects and environmental detail better than you might expect from a model with such a minimal interface. Where some generators fall apart when you ask for a crowded street market or an elaborate interior scene, this one maintains coherent spatial relationships and consistent lighting across the frame. Not perfectly, not every time, but consistently enough that it's worth noting.
native high resolution without the upscaling tax
Seedream 4.5 generates natively at up to 2048x2048 pixels (4 megapixels) with support for eight aspect ratios including 1:1, 3:2, 2:3, 4:3, 3:4, 16:9, 9:16, and 21:9. Some providers also offer a 4K upscale tier. The key point is that this is genuinely native resolution generation, not a 1024px image run through a super-resolution model. This distinction matters more than most people realize. Upscaled images have a particular quality - they're sharp in a synthetic way, with detail that looks plausible but doesn't quite hold up to close inspection. Natively generated high-resolution images have detail that emerges organically from the generation process itself.
For print applications, this is the difference between output that looks professional at larger sizes and output that starts showing artifacts when you go beyond A4. For digital displays, native high-resolution generation means you can fill a screen without the visual mushiness that upscaling introduces in gradient areas and fine textures.
The flat per-image pricing removes the typical cost optimization headache. At these prices, generating at maximum resolution every time and cropping or downscaling as needed is the rational approach, which changes how you think about your generation workflow.
simplicity as a design choice
Seedream 4.5 gives you four parameters: prompt, an optional reference image for image-to-image work, resolution choice, and a watermark toggle. That's it. No guidance scale slider, no step count, no scheduler selection, no negative prompts, no seed control.
This will frustrate people who want fine-grained control over the diffusion process. If your workflow depends on iterating with specific seeds, or if you've built intuition around how guidance scale affects output for particular subjects, Seedream 4.5 doesn't offer those levers. The model makes all those decisions internally, and you either like what it produces or you rephrase your prompt.
But for production workflows - especially ones where non-technical team members need to generate images - this constraint is genuinely useful. There's no configuration to get wrong. No parameter combinations that produce garbage. No need to explain to a marketing coordinator why their guidance scale of 3 is giving them abstract blobs while 7.5 gives them something usable. The model handles quality decisions, and the results are consistent enough that you can build reliable automation around it.
The image-to-image capability works by providing a reference image URL alongside your prompt. The model uses the reference as a visual starting point - composition, color relationships, subject positioning - and then modifies according to your text instructions. It's effective for style transfer, seasonal variations, and iterating on compositions where you want to keep the bones of an image while changing its surface qualities.
where it sits in the competitive field
Seedream 4.5 is meaningfully cheaper than most alternatives at comparable quality. The gap is large enough to matter at scale - if you're generating thousands of images for product catalogs or content pipelines, the cost difference between Seedream and premium models compounds quickly.
The quality comparison is more nuanced. Against Gemini's image generation, Seedream 4.5 produces output with stronger aesthetic coherence but less precise prompt adherence for complex instructional prompts. Gemini is better at following multi-clause instructions ("put X to the left of Y, make Z blue, ensure W is in the background"), while Seedream tends to interpret prompts more holistically and sometimes reinterprets spatial relationships in ways it considers more visually balanced.
Against FLUX models, the tradeoff is control versus consistency. FLUX gives you LoRA support, more parameter control, and a broader ecosystem of community finetunes. Seedream gives you higher native resolution, simpler integration, and that distinctive aesthetic quality without any configuration work.
Against Qwen's image generation, which excels at structured infographic layouts, Seedream 4.5 wins on organic scenes - landscapes, portraits, fashion, architecture. Seedream 4.5 actually has strong text rendering for signage, posters, and branded visuals - it handles Latin scripts and even Chinese characters with good accuracy. But for dense information-design layouts like charts, flowcharts, and multi-section infographics, Qwen Image 2 Pro remains the stronger choice.
the practical implications for production work
I think the most interesting use case for Seedream 4.5 isn't any single application but rather the economic math it enables. The pricing is low enough that you can afford to generate speculatively. Need a hero image for a landing page? Generate twenty variations and pick the best one. Building a product catalog with hundreds of SKUs that need lifestyle imagery? The generation cost becomes a rounding error compared to the photography it replaces.
This is particularly relevant for e-commerce businesses targeting Asian markets. The visual language that performs well on platforms like Shopee, Lazada, or Taobao has specific characteristics - particular approaches to product staging, background treatment, and color correction that Western-trained models often miss. Seedream 4.5 produces output that feels native to these platforms in a way that requires less post-processing to get right.
For creative agencies working across cultural contexts, having a model with this particular aesthetic sensibility in the toolkit fills a real gap. Most of the established models produce output that reads as American or European in its visual defaults. Seedream gives you a different starting point, and sometimes that's exactly what a project needs.
Seedream 4.5 supports batch generation of up to 6 images per API call, which keeps the workflow smooth for exploration. Generate a batch, pick the best direction, and iterate from there without needing to fire parallel requests for every variation you want to see.
what it won't do well
Seedream 4.5 is not a general-purpose image editor. It actually handles text rendering quite well for signage, posters, and branded visuals - headlines and short text in Latin and CJK scripts render cleanly in most generations. But for dense information layouts with paragraphs of body copy, multi-column data, or complex infographic structures, dedicated models like Qwen Image 2 Pro are more reliable. The model supports eight aspect ratios including portrait (9:16, 2:3, 3:4), landscape (16:9, 3:2, 4:3, 21:9), and square (1:1), covering the standard range for social media and print workflows.
The lack of negative prompts means you can't explicitly exclude elements. If the model interprets your prompt in a way that includes something unwanted, your only recourse is rephrasing. Experienced users of other diffusion models will find this limiting initially, though the model's default quality is high enough that negative prompts feel less necessary than with models that have more erratic baseline behavior.
Photorealistic rendering of specific named individuals, copyrighted characters, or branded products follows the same restrictions you'd expect - the model avoids these, and prompt engineering around those guardrails isn't reliable or advisable.
the bigger picture
ByteDance entering the image generation space through models like Seedream represents something worth paying attention to. The company has access to an enormous volume of visual content and engagement data from Douyin and TikTok, combined with a user base whose aesthetic preferences differ meaningfully from those of the English-speaking internet that dominates Western training datasets. As these models improve - and Seedream 5.0 Lite launched in January 2026 with additional capabilities including multi-image input (up to 14 reference images) and sequential image set generation - the aesthetic diversity of available generation models expands in ways that benefit everyone building visual products for global audiences.
The pricing pressure is significant too. When a model this capable ships at such a low price point, it compresses margins across the entire market and makes high-resolution generation accessible to projects that previously couldn't justify the cost. That's good for the ecosystem regardless of which model you ultimately prefer for your specific use case.
does seedream 4.5 work for non-asian aesthetics?
Absolutely. The model produces strong results across a wide range of visual styles and subjects. Landscapes, architecture, still life, abstract art, and general commercial photography all render well. The distinction is that it has particular strength with East Asian aesthetics - it's additive capability, not a limitation. Western-style compositions, lighting setups, and color palettes work fine; the model just happens to also excel in an area where most competitors are weaker.
how does the image-to-image mode compare to dedicated editing tools?
It's better understood as guided generation rather than editing. You provide a reference image and a text prompt, and the model uses both as inputs to create something new. It preserves broad compositional elements and color relationships from the reference while applying your text instructions. For precise edits - removing objects, changing specific details while keeping everything else identical - dedicated inpainting tools will serve you better. For style transfer and creative reinterpretation, it works well.
is the pricing sustainable or a loss-leader?
ByteDance operates at a scale where infrastructure costs look different than they do for smaller AI companies. Their compute capacity, built to serve billions of video recommendations daily, gives them cost advantages that make low per-image pricing viable rather than charitable. Whether prices stay this low forever is anyone's guess, but the company has a history of competing aggressively on price in markets they enter. For now, the pricing is genuine and the quality justifies building workflows around it.
api reference
about
generate high-quality 2k-4k images from text prompts with optional image-to-image generation using bytedance's seedream 4.0 model via byteplus ark api.
get an api key
create one in settings → api keys. the examples read it from INFERENCE_API_KEY.
1export INFERENCE_API_KEY="inf_your_key"1. calling the api
install the client
nothing to install. any http client works; the examples use curl, and jq to read responses. every response wraps its result in a data field.
run and get result
send "wait": true to hold the connection until the task finishes. without it the call returns right away with the task still running.
12# "wait": true holds the connection until the task finishes.3# the response is {"data": {"id", "status", "status_text", "output", ...}}4curl -X POST https://api.inference.sh/apps/run \5 -H "Authorization: Bearer $INFERENCE_API_KEY" \6 -H "Content-Type: application/json" \7 -d '{8 "app": "bytedance/seedream-4-0",9 "input": {10 "prompt": "A majestic mountain landscape at sunset with golden light reflecting off snow-capped peaks"11 },12 "wait": true13 }'stream live updates
get real-time progress updates as the task runs. ideal for showing progress bars, partial results, or long-running tasks. send "stream": true and the response is a server-sent event stream that ends when the task does.
12# "stream": true answers with server-sent events until the task finishes3curl -N -X POST https://api.inference.sh/apps/run \4 -H "Authorization: Bearer $INFERENCE_API_KEY" \5 -H "Content-Type: application/json" \6 -d '{7 "app": "bytedance/seedream-4-0",8 "input": {9 "prompt": "A majestic mountain landscape at sunset with golden light reflecting off snow-capped peaks"10 },11 "stream": true12 }'run in the background
start the task and get its id back right away, then check on it later. for long tasks, or when you'd rather be called back, see webhooks.
1# without "wait" the call returns the task right away (status 1, "received")2TASK_ID=$(curl -s -X POST https://api.inference.sh/apps/run \3 -H "Authorization: Bearer $INFERENCE_API_KEY" \4 -H "Content-Type: application/json" \5 -d '{6 "app": "bytedance/seedream-4-0",7 "input": {8 "prompt": "A majestic mountain landscape at sunset with golden light reflecting off snow-capped peaks"9 }10 }' | jq -r '.data.id')1112# later: read its state. done when status is 10 (completed), 11 (failed) or 12 (cancelled)13curl -s https://api.inference.sh/tasks/$TASK_ID \14 -H "Authorization: Bearer $INFERENCE_API_KEY" | jq '.data | {status, status_text, output}'2. authentication
the api uses api keys for authentication. see the authentication docs for detailed setup instructions.
3. files
file inputs are automatically handled by the sdk. you can pass local paths, urls, or base64 data.
automatic upload
pass urls directly or use data uris for inline content.
1# pass URLs or data URIs as input values2curl -X POST https://api.inference.sh/apps/run \3 -H "Authorization: Bearer $INFERENCE_API_KEY" \4 -H "Content-Type: application/json" \5 -d '{6 "app": "bytedance/seedream-4-0",7 "input": {8 "image": "https://example.com/image.png",9 "audio": "data:audio/mp3;base64,..."10 },11 "wait": true12 }'manual upload
you can also upload files manually and use the returned url.
1# 1. create the file: the response has an upload_url and the file's uri2FILE=$(curl -s -X POST https://api.inference.sh/files \3 -H "Authorization: Bearer $INFERENCE_API_KEY" \4 -H "Content-Type: application/json" \5 -d '{"files": [{"filename": "image.png", "content_type": "image/png"}]}')67# 2. PUT the bytes to upload_url8curl -X PUT "$(echo "$FILE" | jq -r '.data[0].upload_url')" \9 -H "Content-Type: image/png" \10 --data-binary @image.png1112# 3. pass the uri as an input value13echo "$FILE" | jq -r '.data[0].uri'4. webhooks
get notified when a task completes by providing a webhook url. when the task reaches a terminal state (completed, failed, or cancelled), a POST request is sent to your url with the task result.
1curl -X POST https://api.inference.sh/apps/run \2 -H "Authorization: Bearer $INFERENCE_API_KEY" \3 -H "Content-Type: application/json" \4 -d '{5 "app": "bytedance/seedream-4-0",6 "input": {7 "prompt": "A majestic mountain landscape at sunset with golden light reflecting off snow-capped peaks"8 },9 "webhook": "https://your-server.com/webhook"10 }'webhook payload
your endpoint receives a JSON POST with the task result:
1{2 "event": "task.completed",3 "timestamp": "2024-01-15T10:30:05Z",4 "data": {5 "id": "task_abc123",6 "short_id": "abc123",7 "status": 10,8 "status_text": "completed",9 "output": { ... },10 "created_at": "2024-01-15T10:30:00Z",11 "updated_at": "2024-01-15T10:30:05Z"12 }13}5. schema
input
text prompt describing the image to generate. be descriptive about style, composition, and details.
optional reference image for image-to-image generation. if not provided, generates from text only.
output image resolution. 2k (2560x1440) or 4k (4096x4096).
whether to add a watermark to the generated image.
Gemini Nano Banana 2.1
google/gemini-nano-banana-2-1
$1.50/M input, $0.0336–$0.1134/image (1K–4K), +$0.014/query Google Search
Grok Imagine Image 2.0
xai/grok-imagine-image-2-0
$0.04/img low 1k, $0.06/img low 2k, $0.06/img med 1k, $0.08/img med 2k; $0.01/source img (edits)
GPT Image 2.5 Sunburst
openai/gpt-image-2-5-sunburst
$0.006-$0.21 per 1024x1024 image: low $0.006, medium $0.013, high $0.053, xhigh $0.094, max $0.21. Larger sizes cost more; edits add ~$0.008 per reference image.
GPT Image 2.5 Flare
openai/gpt-image-2-5-flare
$0.006-$0.21/image at 1024x1024: low $0.0059, medium $0.0132, high $0.0527, xhigh $0.0937, max $0.2107. Larger sizes cost more; edits add ~$0.0083 per reference image.
Image Resize & Crop
eval/resize
from $0.00000277/sec
Seedance 2.5
bytedance/seedance-2-5
$6.40–$11.70/M tokens, varies by output resolution and visual input
Seedance 2.5 Studio
bytedance/seedance-2-5-studio
$6.40–$11.70/M tokens, varies by output resolution and visual input
Seedance 2.0 Studio Mini
bytedance/seedance-2-0-studio-mini
from $0.00000277/sec
Seedance 2.0 Mini
bytedance/seedance-2-0-mini
$0.0035/K tokens (text-only), $0.0021/K tokens (visual input)
new models

Tripo Auto Rig
tripo/tripo-rig
3d$0.01/credit (rig check free, auto rig 25 credits, retarget 10 credits/animation)
Hunyuan 3D Auto Rigging
tencent/hunyuan-3d-auto-rigging
3d$0.02/credit, 10 credits/call ($0.20/call)
TokenRig
infsh/tokenrig
3dGPU time, billed per millisecond
Hunyuan 3D 3.1
tencent/hunyuan-3d-3-1
3d$0.02/credit; Geometry 15cr, Normal 25cr, +10cr views/PBR/face-count
Rodin Gen-2.5
hyper3d/rodin-gen-2-5
3d$0.58/credit; Extreme-High tier +0.5 credits, texture extreme-high +2 credits
ready to run Seedream 4.0?
we use cookies
we use cookies to ensure you get the best experience on our website. for more information on how we use cookies, please see our cookie policy.
by clicking "accept", you agree to our use of cookies.
learn more.