Keyframe animation lets you change properties of a clip or element over time — position, scale, opacity, rotation. Instead of a zoom that starts and ends the same way throughout the clip, you can make it move in a specific direction, speed up or slow down, or combine multiple movements in sequence.

This guide covers how keyframes work in CapCut and the most common uses for them.

How Keyframes Work

A keyframe is a snapshot of a property at a specific point in time. You set two keyframes: one at the start state and one at the end state. CapCut automatically calculates everything in between.

Example: At 0 seconds, your text is transparent (opacity 0%). At 1 second, it’s fully visible (opacity 100%). Add keyframes at both points and CapCut fades the text in over that second automatically.

Adding Your First Keyframe

Tap a clip or element on the timeline to select it. Move the playhead to where you want the animation to start. You’ll see a diamond icon (◆) in the toolbar — that’s the keyframe button. Tap it. A keyframe is placed at that position.

Now move the playhead to where the animation should end. Change the property you want to animate (scale, position, etc.) — CapCut will automatically add a second keyframe at this point to record the new state.

Play it back. The element should animate between the two states.

Common Uses

Ken Burns effect (slow zoom on photos): Add a photo to the timeline. Place keyframe at the start with the photo at normal scale. Move playhead to the end. Scale the photo up slightly (pinch out). CapCut animates the zoom over the duration of the clip.

Text flying in: Place text element. At 0 seconds, position it off-screen (drag it out of the frame). Keyframe. Move to 0.5 seconds. Drag the text to its final position. Keyframe. Text will slide in from off-screen.

Opacity fade: Select a clip or sticker. At the start, set opacity to 0 via the Opacity slider. Keyframe. Move forward in time, set opacity to 100. Keyframe. Creates a fade-in.

Editing Keyframes

To move a keyframe, you need to tap it on the timeline (the diamond marker). You can then delete it or adjust the values at that point by changing the property while the keyframe is selected.

To delete all keyframes on an element and reset it to static, tap the highlighted diamond icon (it turns orange/yellow when keyframes exist) and confirm deletion.

A Common Mistake

If your animation isn’t working — the element is jumping instead of animating smoothly — check that you have at least two keyframes. A single keyframe doesn’t create movement, it just records a state. You need a starting state and an ending state for animation to happen between them.

Also check that your keyframes are far enough apart. Two keyframes 0.1 seconds apart will animate so fast it looks like a jump. Space them out at least 0.3–0.5 seconds for anything you want to be visible.

Keyframes vs. In/Out Animations

CapCut also has preset In and Out animations (accessible via the Animation button when a clip is selected). These are simpler to apply but less flexible — you can’t control where an element moves, only the style of the preset. Keyframes give you full control. For quick fades and standard movements, presets are faster. For anything custom, use keyframes.