Skip to main content
Seedream 5.5 is the newest Seedream image model from BytePlus ModelArk, released on November 12, 2026. It returns transparent PNGs from a single background parameter and splits a finished image into up to 99 layers, reading the font and color of any text it finds.
A bookstore window at night with a cat asleep on a stack of books and a hand-lettered OPEN LATE sign, generated by Seedream 5.5

Output of the Generate an image example: size 2K, watermark false. Returned at 2496×1664, resized for this page

A white ceramic mug with small blue flowers on a transparent background, generated by Seedream 5.5

Output of the transparent PNG example: background transparent, output_format png, size 1K. Returned as a 1024×1024 RGBA PNG

Seedream 5.5 vs 5.0

  • Choose 5.5 for transparent product assets, fine-grained layers, and posters whose text you want to edit later.
  • Choose 5.0 Flash for low-cost bulk generation.
  • Choose 5.0, 4.5, or 4.0 for 3K or 4K output, or for sequential generation (several related images per request). The Seedream API guide covers all of them.

Before you start

1

Create a token

Register, then open Token management and create a token in the default group. Set Billing mode to Usage first (recommended) or Per-call.The sk- key you get calls Seedream 5.5 directly. You don’t need a BytePlus or Volcengine account.
2

Set up your environment

Export the key and install requests for the API calls and Pillow for checking transparency:
3

Add a save script

Image URLs in the response are temporary (BytePlus says they last 24 hours), so save each image as soon as it arrives. Save this script as save_images.py. It handles both url and b64_json responses and names each file after the returned output_format:
save_images.py
For a general script shared by all image models, see Save images from a response.

Generate an image

Send only prompt to generate an image. This request produced the bookstore sample above:
The script prints Saved bookstore-1.png. A successful response looks like this:
With a preset such as 2K, the model picks the aspect ratio from the prompt. To fix the ratio, pass exact pixels instead, such as 2048x2048 or 2848x1600, with the letter x between width and height.

Generate with Python

This version saves the file with the extension that matches the returned output_format:

Create a transparent PNG

Set background to transparent and output_format to png. This request produced the mug sample above:
The last command prints RGBA, and the response item reports "background": "transparent". background takes three values:
  • auto (default): the model decides from the prompt and output_format. JPEG output never has an alpha channel.
  • transparent: returns an RGBA image with a transparent background.
  • opaque: returns an RGB image with a solid background.
background also works on edit requests that include image. Don’t combine it with layer_decomposition: that request returns an error.

Edit with reference images

Add image to edit an image or combine several. Pass one reference as a string, or up to 10 as an array.
  • Each item is a public URL or a data URL such as data:image/png;base64,..., with the format name in lowercase.
  • References are numbered in array order, so the prompt can say image 1, image 2, and so on.
  • Each reference image costs $0.008, so this two-image edit costs $0.051 in total.
  • Size and format limits per image are the same as for other Seedream versions: see local images and their limits.
This example sends two local files as data URLs. Replace mug.png and table.jpg with your own files:

Edit with Python

Split an image into layers

Layer decomposition turns one finished image into a background plus transparent PNG layers, one element per layer. Use it to move elements, swap the background, or rebuild a poster in a design tool. A layer request needs:
  • "layer_decomposition": true.
  • Exactly one image in image: PNG or JPEG, at least 512×512 pixels in total, up to 30 MB.
  • No background field.
Two options go in layer_decomposition_options:
  • max_images: the most images to return, counting the background. Accepts 2–100 and defaults to 30. Set it to cap the cost.
  • text_recognition: set true to get the text, font, and color of ordinary text layers.
Replace the image URL with a publicly downloadable image of your own, or pass a data URL. With max_images set to 6, this request returns at most 6 images and costs at most $0.218. At 1K it usually takes 20–30 seconds; 2K takes longer, so keep the client timeout at 300 seconds or more.

Read the text recognition result

The first item in data[] is the opaque background, with z_index 0. Each later item is one transparent layer. With text_recognition on, a text layer looks like this (trimmed, from a poster):
text_recognition.text holds the full text. lines splits it into lines, and each line into runs that share one style: Artistic lettering and handwriting don’t get a text_recognition object.

Recompose the layers

Each layer also carries bounding_box.absolute, its position on the background in pixels, plus an English name and a description. A layer PNG isn’t necessarily the size of its box: the example above is a 1616×649 file that belongs in an 836×336 box. Scale each layer into its absolute box when you put the image back together. Read the layer response on the Seedream page explains every layer field, and Save the layers and recompose the image has a Pillow script that reads the same fields.

Parameters

Seedream 5.5 doesn’t support sequential generation, streaming, or web search. Leave sequential_image_generation, stream, and web search options out of the request.

Billing

Each output image costs $0.035 at 1K, 1.5K, or 2K, and each reference image adds $0.008, including the first.
  • Non-200 responses, such as parameter errors and moderation blocks, aren’t charged.
  • A client timeout doesn’t cancel the request. If the server finishes, the images are charged, so check call logs before you resend.
  • Call logs are the record of what each request actually cost.
Layer decomposition charges $0.035 for every returned image, including the background.
  • Without max_images, a request can return up to 30 images and cost up to $1.058.
  • Set layer_decomposition_options.max_images to cap the count. A cap of 6 keeps the cost at $0.218 or less.
  • Set the client timeout to at least 300 seconds. If your client disconnects first, the request still finishes and is charged.

Frequently asked questions

What is the Seedream 5.5 model ID?

seedream-5-5-261028. The BytePlus name dola-seedream-5-5-261028 also works at the same price, and the model field in the response shows dola-seedream-5-5-261028 either way.

How much does the Seedream 5.5 API cost per image?

$0.035 per output image, whether you ask for 1K, 1.5K, or 2K. Each reference image adds $0.008, and layer decomposition is billed for every returned image. The Billing table lists common requests.

Does Seedream 5.5 support fast mode?

No. optimize_prompt_options.mode accepts only standard. Sending fast returns HTTP 400 with a message containing must be standard for Seedream 5.5, and the request isn’t charged. In the Seedream family, only 5.0 Pro and 4.0 accept fast mode.

Can Seedream 5.5 generate 4K images?

No. The largest output is the 2K preset or exact pixels up to 4,624,220 in total, such as 2048x2048 or 2848x1600. There is no 3K or 4K preset. For 3K use Seedream 5.0, and for 4K use 4.5 or 4.0; see which Seedream version to use.

Can one Seedream 5.5 request return several images?

Only through layer decomposition, which returns a background plus layers in one response. Seedream 5.5 doesn’t support sequential generation, so send one request for each image you need. To get several related images from one request, use Seedream 5.0’s sequential generation.

Do I need a BytePlus account to use Seedream 5.5?

No. A LaoZhang API token in the default group with the Usage first or Per-call billing mode is enough. You don’t need a BytePlus or Volcengine account or key.

Sources