Indie game trailer: one 30 s Seedance 2.5 job, 480p then 720p

A 30-second game trailer on Seedance 2.5 is $8.07 at 480p, $17.34 at 720p and $42.65 at 1080p on Sume. Draft cheap, pay once for the final.

5 min readSume
All posts

One 30-second Seedance 2.5 job at 16:9 costs $8.07 at 480p, $17.34 at 720p and $42.65 at 1080p on Sume. Draft at 480p, pay for 720p once, and only render 1080p if the trailer will be shown at that size. Wan 3.0 also lists 30 seconds in one job, at $3.75 for 720p.

Why one 30-second job

fal's Seedance 2.5 explainer, read 2026-10-08, says length doubles from 15 to 30 seconds against Seedance 2.0 and reference capacity rises from 12 to 50 files. A single take avoids stitch seams, but it also means one bad moment costs the whole job. Sume's catalog lists 4 to 30 seconds, so a trailer can also be built from three 10-second jobs.

Game footage is the best reference: send screenshots and character art as images. A gameplay video reference changes the bill, as the table below shows.

Cost of the trailer

Sume bills the provider list price times 1.25, rounded up to the cent per job.

Seedance 2.5 on Sume, 16:9, 30 seconds (rates read 2026-10-08)
Build480p720p1080p
One 30 s job, images only$8.07$17.34$42.65
One 30 s job, with a reference video$7.26$15.61$38.39
Three 10 s jobs, images only$8.07$17.34$42.66

Reading the table

At 30 seconds the reference-video request is cheaper than the plain one, because Sume's estimator adds 15 assumed input seconds, multiplies by 0.6, and the ratio is 0.9 at 30 seconds. It is not a discount to chase. Include a gameplay clip only if you need the motion.

  • Draft: $8.07 for 30 seconds at 480p, enough to check pacing and logo.
  • Keep the title card and release date out of the prompt and add them in the edit.
  • Use the three 10-second route when you want to re-roll a single beat.

Submit it and read the result

Sume reserves the billable amount from your workspace USD balance when the job is submitted, then returns a polling_url. A 30-second job takes longer to finish than a 5-second one, so poll with a wait instead of a tight loop. Poll the job until status is completed or failed; a completed job lists its files in unsigned_urls.

import os
import time
import requests

H = {"Authorization": f"Bearer {os.environ['SUME_API_KEY']}"}
body = {
    "model": "seedance-2.5",
    "prompt": "A slow push-in on the scene, soft natural light",
    "duration": 30,
    "resolution": "480p",
    "aspect_ratio": "16:9",
}
r = requests.post("https://api.sume.com/v1/videos", headers=H, json=body, timeout=60)
r.raise_for_status()
url = r.json()["polling_url"]
while True:
    job = requests.get(url, headers=H, timeout=30).json()
    if job["status"] in ("completed", "failed"):
        break
    time.sleep(10)
print(job["status"], job.get("unsigned_urls"))

Limits

fal's page lists 480p and 720p for Seedance 2.5. Sume's catalog also lists 1080p, and the 1080p column follows the catalog, which I did not render. Check store-page trailer rules for your platform before you pick a length or aspect ratio.

Sources

Related posts

More in Use cases

All Use cases posts

Written by Sume