YouTube Shorts ad under 60 seconds: stitch clips with Timeline

YouTube suggests Shorts ads under 60 seconds. Sume Timeline 1.0 stitches clips into one MP4 at $0.10 per output minute, so 60 seconds costs $0.10.

5 min readSume
All posts

A YouTube Shorts ad that is 60 seconds or less costs $0.10 to assemble on Sume, because Timeline 1.0 bills $0.10 per output minute rounded up. YouTube's help page, read on 2026-10-07, says Shorts ads are under 60 seconds recommended. Timeline takes an audio spine plus an ordered list of video slots and returns one MP4, with a default output of 1080 by 1920, which is already the vertical frame Shorts use.

What YouTube states and what Sume bills

YouTube's page gives a length note for Shorts ads and no technical file specs in the text we retrieved. The Sume side is exact: the public Timeline rate is $0.10 per ceil of the output minute, and the plan route tells you the billable minutes before you spend anything.

Shorts length note and Timeline billing, read 2026-10-07
Output lengthBillable minutesTimeline cost
15 seconds1$0.10
45 seconds1$0.10
60 seconds1$0.10
61 seconds2$0.20

Stitching a Short from clips

Generate the shots separately, since each model has a maximum duration, and assemble them on a Timeline. The program needs audio.duration_seconds, from 1 to 1800, plus either an audio url, parts or silence mode, and between 1 and 200 video slots. Each slot has a source_url that is a media.sume.com artifact, a start on the output timeline that is 0 for the first slot, and a duration of at least 0.2 seconds.

Transitions are optional on slots after the first: fade, wipeleft, wiperight, slideup, slidedown or dissolve, up to 1 second. Use a short fade or none; hard cuts suit Shorts pacing.

curl -sS -X POST https://api.sume.com/v1/timeline-1.0/plan \
  -H "Authorization: Bearer $SUME_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "audio": {"mode": "silence", "duration_seconds": 24},
    "video": [
      {"source_url": "https://media.sume.com/artifacts/artf_demo/a.mp4", "start": 0, "duration": 8},
      {"source_url": "https://media.sume.com/artifacts/artf_demo/b.mp4", "start": 8, "duration": 8},
      {"source_url": "https://media.sume.com/artifacts/artf_demo/c.mp4", "start": 16, "duration": 8}
    ]
  }'

Plan first, then render

POST /v1/timeline-1.0/plan is unbilled. It checks the schema and the hosting of each URL, compiles the program and returns duration_seconds, segment_count, billable_minutes and estimated_cost_usd_micros. It does not create a job or reserve credits. Render with POST /v1/timeline-1.0/render using an Idempotency-Key, which is required. Default mode is async, so poll GET /v1/jobs/{id}/status, or pass mode sync to wait up to 30 seconds.

The reserve is based on audio.duration_seconds, so a declared 60 seconds reserves one minute. Declare the real length.

Tips for a tight Short

Keep an eye on the soft warnings in the result. Short sources are padded or looped, which is not a failure but can look wrong. If the source clip is shorter than the slot you declared, shorten the slot.

  • Coverage can stop at most 0.5 seconds before the end of the audio spine.
  • Use output fps 24, 25, 30 or 60, or omit it to match the sources.
  • Stay under 61 seconds if you want to stay in one billable minute.

Limits of this advice

The YouTube page we read gave a recommendation, not a hard limit, and did not state aspect ratio or file size. Check Google's requirements for those. Our claims about Timeline come from the Sume docs page for Timeline 1.0.

A worked example

Say you want a 24-second Short built from three 8-second shots. You generate the three clips with POST /v1/videos, each at 8 seconds, which sits inside the 3 to 10 second range of sume/auto and inside every catalog model's range. Their artifacts live on media.sume.com. You declare audio.duration_seconds as 24, send the three slots with start values 0, 8 and 16, and call plan. The answer reports 1 billable minute, so the stitch itself is $0.10. The clip generation is billed separately at each model's price, and Timeline does not change it.

If you later extend the ad to 70 seconds for a different placement, the plan tells you at once that it is now 2 billable minutes. That is the reason to plan every length before you render.

Timeline does not generate anything. It needs finished artifacts, so the cost of a Short is the cost of the shots plus the stitch. If your shots come from a Format run, use the artifact URLs from the finished run. If they come from the video route, fetch the unsigned_urls from the poll. Either way, the slot needs a media.sume.com artifact, and an arbitrary external URL is rejected by plan before any render.

Sources

Related posts

More in Use cases

All Use cases posts

Written by Sume