Virtual staging 8 rooms, 3 takes each: Seedream vs Flux cost

A listing with 8 rooms and 3 staged takes each is 24 images: $1.20 on Seedream 4.5, $1.50 on Flux 2 Flex, $2.40 on Nano Banana 2 at 1K on Sume.

4 min readSume
All posts

Answer

Staging one listing with 8 rooms and 3 takes per room is 24 images, which costs $1.20 on Seedream 4.5, $1.50 on Flux 2 Flex and $2.40 on Nano Banana 2 at 1K, going by Sume's catalog prices on 2026-10-04. The empty-room photo goes in as input_references, and the prompt names the style and the furniture.

Each room is one request with n: 3, so a listing is 8 requests. Sume bills only completed generations, so a take that fails is not charged.

Cost of staging 8 rooms with 3 takes each (24 images) (read 2026-10-04)
ModelPer image24 images10 listings
Seedream 4.5$0.05$1.20$12.00
Flux 2 Pro$0.0375$0.90$9.00
Flux 2 Flex$0.0625$1.50$15.00
Nano Banana 2 (1K)$0.10$2.40$24.00

Settings that matter for rooms

  • Set aspect_ratio: "auto" so the staged room keeps the camera framing of the empty-room photo. Omitting the field does not give the same result.
  • Use one photo per request. A second reference should be a style or furniture picture, not a second room.
  • Say what must not change: walls, windows, floor and the camera angle. Describe only what you add.
  • Tag the output as staged in your listing text. An edit that adds a window or alters a floor misrepresents the property, so check each take against the source photo.

A sensible workflow

Run the first pass on Flux 2 Pro at $0.0375, review the three takes per room, and send the rooms with a weak result to Nano Banana 2 for one more try. If 2 of 8 rooms need a retry, the bill is $0.90 + 2 x 3 x $0.10 = $1.50, still below running every room on the premium row.

If the source photo is a local file, host it at a public HTTPS URL first. Sume rejects localhost, private-network and non-HTTPS reference URLs before the request is submitted. Docs: Sume Image API.

Before a large run

Prices and descriptors change when the catalog changes, so confirm them before you spend. Call GET /v1/images/models/{id}/endpoints for the row you plan to use and read its pricing line and supported_parameters; both come back in one response.

Then run a pilot of three to five images and read usage.cost on each response. Multiply by your planned count for a forecast you can trust. Completed generations are billed in full and failed or cancelled ones are not, so a pilot that errors costs nothing.

For big batches, use mode: "async" or mode: "webhook" with a public HTTPS webhook_url, so no request waits on the 30-second sync limit. Poll GET /v1/jobs/{id}/status and fetch GET /v1/jobs/{id}/result when the job completes.

Sources

Related posts

More in Use cases

All Use cases posts

Written by Sume