Preview the First Frame Before You Pay for the Video

Video generation is the expensive node in the graph. Image generation is the cheap one. Most of the reasons a clip comes back wrong are visible in a single still, so generate the still first, look at it, and only then spend the video render. Here is the exact node wiring, and the parts of the problem a frame cannot tell you about.

Alex Daro
Alex Daro
Preview the First Frame Before You Pay for the Video

The most common way to waste money on AI video is to write a prompt, press generate, wait four minutes, and discover the subject was framed wrong. Then do it again. Each of those attempts is a full video render at a full video price, and the thing that went wrong was almost always visible in the first frame.

There is a cheaper order of operations. Generate the opening frame on an image model, look at it, and only commit to the video render once the composition is right. On a node canvas this is not a discipline you have to remember, it is a wiring choice you make once.

The cost asymmetry is the whole argument

Image generation and video generation are not in the same price bracket, and the gap is what makes this technique worth the extra node.

Image nodeVideo node
Typical chargeCents per try on a flash-tier modelAround $1.06 for a typical generation
Published rate examplesFlash-tier image models run at cents per imageVeo 3.1 is $0.20 per second silent, $0.40 with audio, $0.60 at 4K with audio
WaitSeconds1 to 5 minutes on an async job
Batch in one nodeUp to 4 images in parallelUp to 4 clips in parallel, each charged separately

An 8 second Veo 3.1 shot with audio is a meaningful charge. Four framing attempts at that rate is a bad afternoon. Four image attempts is loose change and about a minute of waiting, and you can generate all four at once by setting the image node's batch size, since it runs 1 to 4 images in parallel.

That is the trade. You are adding one cheap node so the expensive node fires once.

What a still actually tells you

A first frame is not a preview of the video. It is a preview of a specific subset of the failure modes, and it is worth being precise about which ones.

A still will tell you whether the subject is in frame at the size you wanted, whether the aspect ratio is what you meant, whether the palette and lighting match the rest of the sequence, whether the model understood the noun, and whether any text in the shot rendered legibly.

A still will not tell you whether the motion works, whether the clip holds together over its full length, or anything about generated audio. Camera moves and physics are decided by the video model, not by the frame you hand it, and drift late in a long take is invisible at second zero.

So the honest framing is that this technique kills composition and subject errors and does nothing about motion errors. At the prices above that is still a good trade.

The wiring

Two nodes and one edge.

Put an Image Generation node upstream. It takes a text prompt and returns an image URL, on a model catalog loaded live from OpenRouter, Gemini, FLUX, Seedream, and more. Gemini 2.5 Flash Image is the default because speed and price match how people actually work, in many small steps.

Then wire its image output into the video node's First frame port. That port is documented on the node itself as the exact keyframe the video starts from, and it is separate from the main input on purpose: images wired into the main input become style and content references instead, which is a different behavior. If you want the video to literally begin on the frame you approved, it goes in the First frame port.

Three details that catch people out:

  1. Keyframes and references cannot be combined. Setting a first or last frame ignores reference images. The node config says so explicitly. Pick one strategy per shot.
  2. The port beats the field. You can also paste or upload a first frame into the node's config field, but when both the field and the wired port are set, the port wins.
  3. Not every model takes keyframes. Models in the Treza catalog that accept first and last frame keyframes include Veo 3.1, Seedance 2.5, Wan 2.7, FLUX.3 Video, and Kling Video O1. Check the model page before you build the graph around a keyframe you cannot pass.

If your model supports a last frame too, the same logic applies at the other end of the shot. Bookending a clip with two approved stills is how you make a cut land exactly where the storyboard says it should.

Stop at the image node with Run to here

The wiring above still runs the whole graph when you press run. The part that makes this a workflow rather than a nice idea is the per-node run control: open the image node and use Run to here, which runs the pipeline up to and including that node.

So the loop becomes: Run to here on the image node, look at the frame in the viewer, adjust the prompt, Run to here again. The video node has not been touched and has not been charged. When the frame is right, run the full pipeline once.

For a pipeline that is already running on a schedule, the equivalent control is the Approval node. It pauses the run for a human decision, emails signed approve and reject links, and the chosen link resumes the run exactly where it stopped, reusing everything already generated with no re-billing. Placing one between the image node and the video node turns "check the frame first" into something that happens on unattended runs too.

Lock the frame so it survives the next run

Here is the failure mode that eats the savings: you approve a frame, run the full pipeline, the video comes back wrong for a motion reason, you fix the video prompt, run again, and the image node regenerates a different frame. Now you are debugging two variables at once.

Lock the node. A locked node's output is pinned from the previous run, and the engine short-circuits it with a note that reads "Reused locked output, regeneration skipped." The frame you approved is the frame the video model gets, every run, until you say otherwise.

The lock is deliberately not sticky against your own edits. Changing a locked node's settings clears the lock automatically, on the reasoning that if you edited the prompt you wanted a new image. Toggling the lock itself is exempt from that, so you can lock and unlock without tripping the auto-unlock.

Lock the image, vary the video prompt, and every take you compare started from an identical opening frame.

What this costs you

One image node per video node, and a little latency on the first pass. Billing is prepaid credits with no subscription, each generation is charged at the model's own rate, and only successful runs are charged, so a failed generation costs nothing. Credit packs start at $5 and never expire. Before a run starts the estimator reserves a hold sized to what the graph could cost and the run settles at actual provider cost afterward, so an image node's small reserve does not meaningfully change what a run is allowed to start with.

When to skip it

This is not a universal rule. Skip the preview frame when:

  • The video model is cheap enough that a re-render costs less than the extra node's round trip. Kling Video O1 at roughly 11 cents per second is in that territory for short clips.
  • The shot is motion-first. If what you are unsure about is the camera move, a still answers nothing.
  • You are generating variety on purpose. A daily channel pipeline that wants a different opening image every run should not be pinned to one frame.

It earns its place on expensive models, on shots where composition is the risk, and on any graph where the video node feeds narration, captions, and a publish step, because a bad frame there wastes more than the render.

Building it as a pipeline

Once the pattern is a graph rather than a habit, it composes with everything else on the canvas: an image node, a keyframed video node, narration, burned-in captions, and a publish step, on a schedule. That is the shape of a production AI video pipeline, and the same graph is callable as an API endpoint or over MCP.

Starting from a blank canvas, the AI video generator page walks the basic node chain and AI shorts generator covers the vertical variant with captions. For what a finished video costs once every node is counted, see the cost breakdown.

Frequently Asked Questions

What is a first frame image in AI video generation?

It is an exact keyframe the video model starts from. Instead of generating an opening shot from your text prompt alone, the model is handed a specific image and generates motion forward from it. On Treza this is the First frame port on the Video Generation node, and it is distinct from reference images, which influence style and content without pinning any particular frame.

Can I use a generated image as the first frame?

Yes. Wire an Image Generation node's image output into the video node's First frame port. That is the intended pattern, and the node description points at it directly. You can also upload an image or paste a URL into the node's first frame config field, and when both a wired port and the field are set, the port takes priority.

Which video models support first and last frame keyframes?

In the Treza catalog, Veo 3.1, Seedance 2.5, Wan 2.7, FLUX.3 Video, and Kling Video O1 all accept first and last frame keyframes. Support varies by model and by endpoint, so check the model page before designing a graph around a keyframe. Models that do not take keyframes can still take reference images, which is a looser form of control.

Does previewing the frame actually save money?

It saves money when the video model is expensive relative to the image model, which is most of the time. Veo 3.1 is $0.20 per second silent, $0.40 with audio, and $0.60 at 4K with audio, while a flash-tier image model runs at cents per try. Every framing error caught in the image node is a video render you did not buy, though it saves nothing on motion problems.

How do I stop the image from regenerating on the next run?

Lock the node. A locked node reuses its pinned output and skips regeneration, so downstream takes all start from the same frame. Editing the node's settings clears the lock automatically, on the assumption that a changed prompt means you want a new image.

What happens if the video generation fails after I approved the frame?

Only successful runs are charged, so a failed generation costs nothing. The run record shows per-node results, so you can see which node failed and what the provider returned. If the image node was locked, its output is still pinned and the retry starts from the same approved frame.