First and Last Frame AI Video: How Start/End Frames and Keyframes Work (October 2026)
Image & VideoQuick answer: first and last frame AI video means you give the model the opening image and the closing image, and it generates the motion between them. Google calls this interpolation. Most current tools support it: Veo 3.1 and Gemini Omni Flash in Google Flow and the Gemini API, Kling 4.0, Luma Ray3.2, and several models in Runway’s API. Kling 4.0 and Luma go further with keyframes in the middle of a clip. All details below are from official docs checked on October 18, 2026.
How does first and last frame generation work?
The model treats your two images as fixed points and invents the frames between them. Your text prompt describes what should happen in between. Google’s Veo docs put it this way: “Veo 3.1 lets you create videos using interpolation, or specifying the first and last frames of the video” (Gemini API).
Compared with plain image-to-video, which fixes only the first frame, an end frame lets you control where the shot lands. Kling’s guide lists the best uses as “transformation processes, craftsmanship, and before-and-after comparisons” (Kling 4.0 guide).
Keyframes extend the same idea. Kling explains that “without keyframes, the model determines the order and timing of visual changes. With keyframes, you define the visuals at specific timestamps.”
Which tools support first and last frames?
| Tool / model | Start + end frame | Middle keyframes | Clip length | Official source |
|---|---|---|---|---|
| Google Flow: Veo 3.1 Lite, Fast, Quality | Yes (“Frames to Video: First and last”) | No | 4, 6 or 8 s | Flow models |
| Google Flow: Gemini Omni Flash 1.1 | Yes, on Flow web only | No | 4, 6, 8 or 10 s | Flow models |
| Gemini API: Veo 3.1 | Yes: image plus lastFrame |
No | 4, 6 or 8 s | Veo docs |
| Gemini API: Gemini Omni Flash | Yes: two images in the input | No | See docs | Omni docs |
| Kling 4.0 (Keyframes entry) | Yes | Yes, at any position; up to 10 images | 3–30 s | Kling 4.0 guide |
| Kling API: 3.0, 3.0 Omni, O1 | Yes (2.6 and 2.5 Turbo at 1080p only) | No | 3–15 s (3.0 family) | Kling API capability map |
| Luma Ray3.2 | Through Multi-Keyframe direction | Yes, up to 16 keyframes per clip | 5 or 10 s | Luma Ray3.2 |
| Runway API | Model-dependent: veo3.1, veo3.1_fast and several Kling models accept first and last; gen4.5 accepts first only |
No | Varies by model | Runway API reference |
Luma’s clip length comes from its Ray3.2 pricing table, which lists 5- and 10-second text and image-to-video generations (Luma).
How do you make a first and last frame video in Google Flow?
From Google’s Flow help page:
- In your project’s prompt box, click the model name.
- Click Video > Frames.
- Drag an image to “+ Add start frame” and another to “+ Add end frame”.
- “In your text prompt, describe the action or transition that should happen between the frames.”
- Select your video preferences (aspect ratio, outputs, model, length) and click Generate.
Google notes that “product feature availability may differ by country/region” and that “certain image types may not be supported”. Step-by-step Flow setup is in how to use Veo 3.1.
How do you set keyframes in Kling 4.0?
Kling 4.0 has two entry points, Omni Reference and Keyframes, and they “cannot be combined within a single generation task” (Kling 4.0 guide). For start and end frames, use Keyframes:
- Inputs: up to 10 images, each up to 30 MB, with aspect ratios between 2:5 and 5:2. Text prompts can run to 8,000 tokens.
- Length: 3–30 seconds in 1-second steps, default 10.
- Aspect ratio: after you upload images, “the aspect ratio follows the first keyframe”.
- Limit: “The Keyframes entry does not support uploading reference assets.”
Kling’s suggested prompt format for start and end frames is: “Use @Image1 as the first frame and @Image2 as the last frame, then describe the [process] in between.” For middle keyframes, Kling suggests tying changes to times, for example “raise a hand at 3 seconds, turn around at 7 seconds”.
How do you do it through an API?
- Gemini API (Veo 3.1): pass the starting frame as
imageand the ending frame aslastFramein the config. Google sayslastFrame“must be used in combination with theimageparameter”. When the input includes images of people,personGenerationonly allows"allow_adult"(Veo docs). - Gemini API (Omni Flash): “provide two images in the input list and describe the desired transition in your prompt” (Omni docs).
- Runway API: in
promptImage, setpositiontofirstorlast. For some models, Runway says you “use positionfirst/lastfor keyframe mode, or omit position for reference images. The two modes cannot be mixed” (Runway API reference). - Kling API: first and last frames work on Kling 3.0, 3.0 Omni and O1; “End Frame Only” is listed as not supported on any model (capability map).
For a broader API comparison, see AI video generation APIs compared.
How do you get a smooth transition?
These are general practices, not results from our own testing:
- Match the basics. Use the same aspect ratio, a similar camera angle and similar lighting in both frames, unless the change is the point of the clip.
- Leave enough time. A big change, such as day to night or a full turnaround, needs a longer clip than a small one.
- Describe the path, not the frames. The images already show the start and end; the prompt should say how you get from one to the other: the action, the camera move and the pace.
- Name a single camera move. Kling’s examples ask for “one continuous lateral tracking shot from the side, with no cuts, angle changes, or scene changes” when that’s what they want.
- Use middle keyframes for multi-step changes if your tool supports them, instead of asking two frames to cover several beats.
For single-image animation basics and motion prompts, see how to turn a photo into a video with AI. To pick a model, see Veo 3.1 vs Kling vs Runway. All guides are in the AI video tools hub.
FAQ
What is a first and last frame AI video?
It is an image-to-video mode where you supply the opening frame and the closing frame, and the model generates the motion in between. Google's docs call this interpolation.
Which AI video tools support first and last frames?
Google Veo 3.1 and Gemini Omni Flash (Google Flow and the Gemini API), Kling 4.0 and the Kling 3.0 API models, Luma Ray3.2 with up to 16 keyframes, and several models in Runway's API such as veo3.1 and Kling 3.0. Runway's own gen4.5 API endpoint takes a first frame only.
Can I add frames in the middle, not just the start and end?
Yes, on some models. Kling 4.0 supports middle frames at any position, up to 10 keyframe images, and Luma Ray3.2 supports up to 16 keyframes per clip.
How long can a first and last frame video be?
It depends on the model: 4, 6 or 8 seconds for Veo 3.1, 4 to 10 seconds for Gemini Omni Flash in Flow, and 3 to 30 seconds for Kling 4.0's Keyframes entry.
Can I use an end frame without a start frame?
Usually not. The Gemini API says lastFrame must be used together with the image parameter, and Kling's API capability map lists End Frame Only as not supported.
Sources
- Google Flow Help: Create videos in Google Flow (start and end frames) (accessed 2026-10-18)
- Google Flow Help: Flow models and supported features (accessed 2026-10-18)
- Gemini API: Generate videos with Veo 3.1 (first and last frames) (accessed 2026-10-18)
- Gemini API: Gemini Omni Flash (first and last frame interpolation) (accessed 2026-10-18)
- Kling AI: Kling 4.0 user guide (Keyframes) (accessed 2026-10-18)
- Kling API: Capability map (video) (accessed 2026-10-18)
- Runway Dev: API reference (image_to_video promptImage position) (accessed 2026-10-18)
- Luma: Ray3.2 (accessed 2026-10-18)
- Luma: Official information (accessed 2026-10-18)