Skip to main content

Seedream 4.0 is ByteDance's text-to-image model, rendering one image from a prompt. You choose the exact size from sixteen width*height presets, from 1024*1024 up to 4096*2304, at the same per-image rate for every size. Uncensored.

From $0.03/image

Workbench

Input

Text to image
Describe subject, wardrobe, setting, palette and light in one pass, and write it for the frame you chose — a wide preset wants a composition staged across the width, not a portrait pushed sideways. at least 1 characters
An explicit width*height preset, sixteen options from 1024*1024 to 4096*2304; default 2048*2048. Every size costs the same, and anything outside the enum is rejected before the request is sent.
Safety checkerOff

SpicyAPI does not run a safety checker on this model. Your prompt and media go to the model as written, and the model itself decides what comes back.

Checking your account before enabling submission and pricing.

Output

Ready for a new run
aurora-ice-palace-glanceExample result

Related models and next tasks

Missing the model you need?

Tell us what to add and where you would use it. Requests go to the people who decide what gets onboarded next.

Sixteen fixed frames up to 4096*2304, one price for all of them

Seedream 4.0 Text to Image takes a written brief and returns one image at the size you name, picked from sixteen fixed width*height presets between 1024*1024 and 4096*2304. Those sixteen cover eight shapes, from square to a 21:9 ultrawide, and the top presets land around 9.4 megapixels. Every one of them bills as a single image, so the largest frame costs what the smallest does.

Open the playground
Sixteen fixed frames up to 4096*2304, one price for all of them
Output sizes
16 width*height presets, 1024*1024 to 4096*2304
Frame shapes
8 shapes; each has a portrait twin except the 21:9 ultrawide
Largest frame
About 9.4 megapixels at 3072*3072 or 4096*2304
Request fields
prompt and size only, size defaults to 2048*2048
Price
One image per request, same rate at every size
Content filter
None; no maturity flag or per-request declaration
Framing
size sets the ratio and the pixel count in one fieldEach preset is a fixed width*height pair, so there is no aspect-ratio parameter to keep in sync with a resolution tier. The sixteen cover eight shapes, among them three squares at 1024*1024, 2048*2048 and 3072*3072, and every shape has a portrait version except the 21:9 ultrawide.
Billing
The 4096-pixel frame and the 1024-pixel draft cost the sameSize does not move the price here: one request returns one image at one rate, whether that is a small square or a 4096*2304 banner. Pick the delivery size on the first attempt instead of rendering small and asking for the same thing again at full size.
Lineage
The generation kept for work that already matches itByteDance's newer Seedream 5.0 line frames differently: Pro takes an aspect_ratio plus a 1k or 2k tier that also sets its price band, and Lite takes eight fixed sizes that all sit at the 2K tier. A set started on 4.0 keeps its frame sizes and its rendering by staying here.

What the Seedream 4.0 text-to-image API does well

Sixteen frames that are already the delivery size

Sixteen frames that are already the delivery size

size takes one of sixteen exact width*height strings, so the frame is settled before the model starts. They break down as three squares, seven landscape presets and six portrait ones; the most elongated is 3136*1344 at 21:9, and the biggest frames are 3072*3072, 4096*2304 and 2304*4096, which all land at about 9.4 megapixels. The string you send is the frame that comes back.

No cost penalty for the largest frame

No cost penalty for the largest frame

Every request bills as one image whichever of the sixteen sizes it carries, so a 4096*2304 delivery costs what a 1024*1024 test costs. There is no upscale parameter on this endpoint either: the pixels you ask for are the pixels that get rendered, so go straight to the size the placement needs.

  • One prompt carries subject, wardrobe, setting and light

    prompt is the only text field. There is no style selector and no negative prompt, so exclusions travel in the same block of text as the description. A closing line such as 'no text, no lettering' is how a brief rules something out. Write for the frame you picked, because a wide preset wants the subject staged across the width.

  • No maturity flag, no separate route for uncensored work

    Uncensored photography and illustration go through the same text-to-image call as any other subject, with no flag to toggle, no per-request declaration and no alternate endpoint to look up. The platform adds no content filter of its own in front of the model, and the sixteen presets and the single per-image rate apply to that work unchanged.

  • A consistent look for a set, without a seed

    There is no seed field here, so two identical requests return two different frames. What holds a set together is the pair you do control: the same prompt text and the same size preset on every call. That is why storing the brief next to the delivered image matters more on this model than on one with a seed.

Who Seedream 4.0 text-to-image is for

  • Uncensored portrait and character work at one frame size

    Uncensored content sets

    Uncensored portrait and character work at one frame size

    Generate a whole set at 2048*2048 or 3072*3072 and every image lands at the same pixel dimensions, so nothing needs a crop pass to match. No platform content filter sits in front of the model, and uncensored subjects use the same call and the same rate as anything else.

  • Extending a set already built on 4.0

    Campaign continuity

    Extending a set already built on 4.0

    Work first made on Seedream 4.0 can stay on the same sixteen presets and the same rendering instead of being reframed for a newer model's preset list halfway through. The frame sizes a campaign already uses stay available, which keeps old and new deliveries sitting side by side.

  • Wide, tall and ultrawide frames composed from the start

    Poster and banner layout

    Wide, tall and ultrawide frames composed from the start

    Pick 4096*2304 for a banner, 2304*4096 for a story-shaped placement or 3136*1344 for a 21:9 strip, then write the composition for that shape. At 300 dpi a 4096*2304 frame prints about 13.7 by 7.7 inches, and the ultrawide is the one preset with no portrait counterpart.

  • Letting end users choose the frame

    Product teams

    Letting end users choose the frame

    Exposing all sixteen presets to your own users does not change what a generation costs you, because the rate is per image and does not move with size. One number covers every option in your own pricing, from a square avatar to a 4096*2304 banner.

How to call the Seedream 4.0 text-to-image API

  1. Pick one of the sixteen size presets first

    size is the whole framing control, and the composition is built for the exact width*height you send. Omit it and the request runs at the default 2048*2048; send anything outside the sixteen-item list and it is rejected before the request leaves the platform.

  2. Write subject, wardrobe, setting, palette and light in one pass

    There is no style field and no negative prompt, so one block of text carries the direction and the exclusions together. Match the description to the frame: a wide preset wants the subject staged across the width, a 9:16 preset wants it stacked.

  3. Submit the task and poll until it finishes

    The call is asynchronous. Create the task, poll for a terminal state, then fetch the finished image from platform storage instead of holding a connection open while it renders.

  4. Store the prompt with any image you keep

    With no seed field, an identical request does not return the same frame twice. Keep the exact prompt text and the size preset next to any output you might need to extend into a matching series later.

Seedream 4.0 text-to-image worked examples

  • A 21:9 ultrawide strip for a site header

    3136*1344 is the only 21:9 preset and has no portrait twin, so a brief written for it has to spread the subject and the empty space across the full width.

    Ultrawide cinematic still, an adult woman in a tailored charcoal suit walking across an empty marble atrium at dawn, cold blue light falling from a glass ceiling, long reflections on polished stone, subject small in the right third with open space to the left, 35mm lens, fine film grain
  • Packaging art with the label wording spelled out

    ByteDance describes Seedream 4.0 as rendering text correctly and laying out complex content such as tables and charts. There is no text field on this endpoint, so the exact words belong in the prompt, in quotes.

    Product photograph of a matte black skincare bottle standing on wet slate, studio softbox from the left, deep shadows, the label reading 'NOCTURNE' in thin uppercase serif with 'night repair serum' beneath it in small caps, cool grey and silver palette, 85mm macro lens
  • A tall portrait sized for a phone-first placement

    2304*4096 is the biggest of the 9:16 presets, so the brief should stack the frame vertically instead of centring a landscape idea inside it.

    Full-length fashion portrait, an adult woman in a floor-length emerald satin gown on a dark stone staircase, single warm key light from above, deep shadow at the edges of the frame, vertical composition with headroom above and the hem near the bottom edge, 50mm lens

Seedream 4.0 text-to-image API questions

Choose the size preset before drafting the prompt, because the composition is built for that exact frame. Then write one pass covering subject, wardrobe, setting, palette and light, and close it with what must stay out of the picture, since there is no negative prompt to carry that separately. Match the description to the shape: a wide preset wants the subject staged across the width, a 9:16 preset wants the frame stacked from top to bottom.