Three hook cuts for a YouTube A/B test: trim jobs and bulk runs

Sume does not run the YouTube test, but it can make the three cuts: one video-trim job per hook, then a Timeline join. Bulk Format runs scale it to 100 items.

4 min readSume
All posts

Sume does not run or measure a YouTube hook test; YouTube does that. What Sume can do is produce the three cuts: submit one POST /v1/video-trim job per hook range on the same source, optionally join each with the rest of the video in Timeline 1.0, and upload the three files yourself.

YouTube's post says that, coming soon, creators will be able to test up to three video cuts to see which hook performs best. Sume facts below are from the Video trim and Bulk runs docs, read 2026-10-01.

How do I cut three hooks from one video?

Video trim takes one workspace media.sume.com clip plus start and exactly one of end or duration, and returns a new MP4; the source is untouched. Import the source first with POST /v1/media-imports, then send three requests with different ranges. Idempotency-Key is required, so give each cut its own key.

const hooks = [
  { start: 0, duration: 8 },
  { start: 95, duration: 8 },
  { start: 310, duration: 8 },
];
const jobs = await Promise.all(
  hooks.map(async (hook, i) => {
    const res = await fetch("https://api.sume.com/v1/video-trim", {
      method: "POST",
      headers: {
        Authorization: "Bearer " + process.env.SUME_API_KEY,
        "Content-Type": "application/json",
        "Idempotency-Key": "hook-test-cut-" + i,
      },
      body: JSON.stringify({
        video_url: "https://media.sume.com/artifacts/artf_demo/talk.mp4",
        ...hook,
      }),
    });
    return res.json();
  }),
);
console.log(jobs.map((job) => job.request_id));

How do I put each hook in front of the full video?

Each trim result is a kind: video_trim with a new video_url. The docs say to drop that MP4 into timeline_create video[] with source_in 0. For a hook-first cut, make the trimmed hook slot one and the body slot two, with a fade or dissolve transition on the second (transitions apply only to slots after the first). See assemble long-form video for the audio spine a Timeline needs.

What does this cost?

Per-job prices from the Sume docs and rate card, read 2026-10-01
StepPriceSource
Video trim$0.02 per jobVideo trim docs
Timeline render$0.10 per output minuteRate card
Bulk run queueEach item is an ordinary Format runBulk runs docs

When do bulk Format runs make sense?

Three trim calls need no queue. Bulk runs fit when you do this for many videos: POST /v1/formats/{format_id}/bulk-runs queues up to 100 Format runs with a concurrency of 1 to 16, and each item is one ordinary Format run with its own receipt. Poll GET /v1/format-run-queues/{queue_id} for progress. Note that completed means every item is terminal, not that every item succeeded, so check counts.failed.

Does keyframe precision matter for a hook?

Yes, for the first second. precision defaults to exact, a frame-accurate re-encode. keyframe is a stream copy whose cut may start a GOP early, so re-base against actual_start_seconds. For a hook, keep the default.

Sources

Related posts

More in Use cases

All Use cases posts

Written by Sume