How to Scale Keyframes in Blender Along Time

Scaling animation keyframes along the time axis in Blender allows you to speed up, slow down, or dynamically retime your animations without moving individual points manually. This guide explains how to select, scale, and precisely adjust keyframes along the timeline using Blender's Dope Sheet, Timeline, and Graph Editor.

Basic Keyframe Scaling in the Timeline or Dope Sheet

The standard method to scale keyframes uses Blender's transform shortcut (S).

  1. Select the Object: Ensure the animated object is selected in the 3D Viewport.
  2. Open an Animation Editor: Open the Timeline or the Dope Sheet editor.
  3. Position the Playhead: Move the playhead (current frame indicator) to the frame you want to scale from. By default, keyframes scale relative to the playhead location.
  4. Select the Keyframes:
    • Press A to select all keyframes.
    • Or, press B (Box Select) to drag and select a specific group of keyframes.
  5. Scale the Keyframes:
    • Press S on your keyboard.
    • Move your mouse horizontally to stretch (slow down) or compress (speed up) the keyframes.
    • Click the left mouse button or press Enter to confirm the transformation.

Scaling to an Exact Value

For precise adjustments, you can input exact numerical scaling factors:

  1. Select the desired keyframes.
  2. Position the playhead at your starting point.
  3. Press S, then type a numerical multiplier:
    • Typing 2 doubles the duration (making the animation twice as slow).
    • Typing 0.5 halves the duration (making the animation twice as fast).
    • Typing -1 reverses the timing of the selected keyframes.
  4. Press Enter to apply.

Changing the Pivot Point for Scaling

By default, keyframes scale outward from the playhead or the center of the selection. You can change this behavior:

  1. Hover over the Dope Sheet or Timeline.
  2. Click the Pivot Point dropdown menu in the editor header (or press the period key . on your keyboard).
  3. Choose one of the following:
    • Current Frame / 2D Cursor: Scales keyframes outward from the exact position of the playhead or 2D cursor.
    • Bounding Box Center: Scales keyframes outward from the center point of the currently selected keyframes.
    • Individual Centers: Scales separate selections around their individual center points.

Scaling Time in the Graph Editor

If you are working with F-Curves in the Graph Editor, you must ensure you only scale along the time (X) axis so you do not accidentally alter value/intensity (Y) data:

  1. Switch to the Graph Editor.
  2. Select the keyframes or curve handles you wish to scale.
  3. Press S to initiate scaling, then press X immediately after to constrain the scale strictly to the time axis.
  4. Move your mouse horizontally or enter a numeric value, then press Enter to confirm.