background parameter and splits a finished image into up to 99 layers, reading the font and color of any text it finds.

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

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 For a general script shared by all image models, see Save images from a response.
save_images.py. It handles both url and b64_json responses and names each file after the returned output_format:save_images.py
Generate an image
Send onlyprompt to generate an image. This request produced the bookstore sample above:
Saved bookstore-1.png. A successful response looks like this:
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 returnedoutput_format:
Create a transparent PNG
Setbackground to transparent and output_format to png. This request produced the mug sample above:
RGBA, and the response item reports "background": "transparent". background takes three values:
auto(default): the model decides from the prompt andoutput_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
Addimage 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.
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
backgroundfield.
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: settrueto get the text, font, and color of ordinary text layers.
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 indata[] 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 carriesbounding_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.
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 the2K 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 thedefault group with the Usage first or Per-call billing mode is enough. You don’t need a BytePlus or Volcengine account or key.
Related documentation
- Seedream 5.5 launch announcement: what’s new and how it compares with 5.0
- Seedream API guide: Seedream 5.0 Flash, 5.0 Pro, 5.0, 4.5, and 4.0, plus layer fields and the recompose script
- Choose an image generation API: compare Seedream with other image models
- Images API reference: shared request and response format
- Model and pricing catalog: current prices and groups
- Call logs: check the model and charge for each request
Sources
- BytePlus ModelArk image generation API (checked November 13, 2026): request parameters,
sizeranges,background, layer options, and URL lifetime - BytePlus ModelArk model list: Seedream 5.5 model name and release