Three caption styles on one clip for $0.60 with source_caption_id
Standalone captions are $0.20 per job for clips up to 60 s. Restyling with source_caption_id reuses the word timings, so three looks cost 3 x $0.20.

Burning three caption styles into one 45-second clip costs 3 x $0.20 = $0.60. The first job transcribes; the next two send source_caption_id instead of video_url, which reuses the stored source video and word timings, so speech-to-text does not run a second time. The docs say the price does not change on a restyle, because it is still a render.
The three jobs
Fixed estimate of $0.20 applies to videos of up to 60 seconds, per the video-captions docs read 2026-10-09.
| Job | Input | Style | Price |
|---|---|---|---|
| 1 | video_url | slam | $0.20 |
| 2 | source_caption_id from job 1 | punch | $0.20 |
| 3 | source_caption_id from job 1 | tiktok-green | $0.20 |
| Total | $0.60 |
Requests
The first call needs a public HTTPS video_url that Sume can fetch; localhost, private-network, signed and provider task URLs are rejected. The restyle call carries only the id and the new style.
Note that punch and tiktok-green do not support design overrides, while slam and the Hangul styles do.
curl -X POST https://api.sume.com/v1/video-captions \
-H "Authorization: Bearer $SUME_API_KEY" \
-H "Content-Type: application/json" \
-H "Idempotency-Key: restyle-punch-001" \
-d '{"source_caption_id":"vc_123","style":"punch"}'Correcting words without a new transcription
If the transcript has a wrong word, send words with source_caption_id and only the text is corrected. You may send only one of script_text, words, cues and segments in a request.
Limits
- The $0.20 figure is for clips of at most 60 s under the current fixed estimate; check the catalog for the live price on longer files.
- Latin styles with Korean text return
caption_hangul_text_latin_style. - SRT upload is not supported; phrase-level text goes in
cues.
Budget
Per-clip cost scales with the number of looks, not with transcription. Ten clips with three styles each is 30 jobs x $0.20 = $6.00. If you decide the style on a test clip first and then run the other nine in the chosen style, the cost is 3 x $0.20 + 9 x $0.20 = $2.40. Pick styles early; the restyle saves a transcription pass but not the render fee. Every media job follows the same lifecycle: submit with an Idempotency-Key, receive a job, poll GET /v1/jobs/:id/status until it is ready, then read GET /v1/jobs/:id/result. A retry with the same key does not queue a second job, so a network error during submit never doubles a charge.
Sources
Related posts
More in Media tools
- TikTok 516 kbps floor: 0.033 bits per pixel at 540x960, 0.008 at 1080p
At 30 fps TikTok's 516 kbps floor is 0.033 bits per pixel at 540x960 but 0.008 at 1080x1920. Why a bigger frame needs a higher real bitrate to look the same.
- TikTok ad bitrate window: 0.516 to 6.67 Mbps for 10 minutes
TikTok wants at least 516 kbps and at most 500 MB. For a 10-minute ad that is a 38.7 MB floor and a 6.67 Mbps average ceiling. The math and what Sume controls.
- TikTok ad captions are white and fixed; burned-in captions differ
TikTok's non-Spark page says ad captions show in white with a font you cannot change. Sume's burned-in caption styles live inside the video, a different thing.
- One 16:9 size for TikTok and LinkedIn ads: 960x540 to 1920x1080
TikTok's 16:9 minimum is 960x540 and LinkedIn's maximum is 1920x1080. 1280x720 and 1920x1080 clear both; 854x480 fails TikTok, 2048x1152 fails LinkedIn.
Written by Sume