Keyframes are the main tool to control your animation with. It’s therefore really important that they provide us with as much information about our animation as possible.

(1) Currently the Keyframes have a thin border and no fill when there is only one Keyframe—(2) half-filled when the Keyframe is at the start or end—(3) and fully-filled if the Keyframe is in between other Keyframes. This gives three different looks for the same Keyframe. Let's make all Keyframes just have a border and fill them when they are selected. (4) Selected Keyframes stay the same color and also be a bit lighter than unselected Keyframes.

(5) Often the Keyframes look scattered across the timeline. (6) To show where animation starts and ends we could add a thick line that connects Keyframes that change value. This way it becomes clear where movement happens such as in a transition, for example.

(7) The iconic shape of the Keyframe sits centered on the start point of every Frame. But when you zoom into the Timeline, it becomes hard to see how much space one Frame actually takes up. (8) A solution might be to add a darker area behind the Keyframe. See how it lines up with the Out Point of the second layer? This only applies for the closest three zoom levels of the Timeline.

Sometimes you have so many Keyframes—it becomes difficult to know what does what—especially after opening the project later on. Like Layers, we could color Keyframes to highlight a group of them. A walk cycle, for instance, could be its own color group.

One of the most used features is the "Keyframe Velocity" window. It shows the amount of easing that comes in—and goes out of a Keyframe. This is valuable information to know but right now it's hidden in the "Keyframe Velocity" window.

It'd make a huge difference to get better access to this information—especially directly in the Timeline ( right next to the keyframe when selected ) or the "Info Panel". Adobe Edge Animate does this with the values of Keyframes.

Here's how I think we could extend the Velocity data to the Keyframes.

Scripts to adjust velocity:

When you select Keyframes from multiple layers and you want to paste them somewhere else in time, After Effects duplicates the Layers that you have selected. It'd be great if we could copy and paste Keyframes from different Layers. This might seem like a small request but the amount of times people run into this daily makes it more important. To copy Keyframes one by one is very time consuming.

The "Easy Ease In" Keyframe icon only shows up when the Ease value is exactly 33.33% — 0.01%. When the Ease changes to 66.66% — 0.01% or any other value, the icon changes to a regular Ease Keyframe. This is inaccurate feedback because the easing is still only applied to the Incoming Velocity.

It doesn't really matter if both sides of the Keyframe have easing. Maybe three different icons for easing is confusing and we can reduce it to one icon. When we remove "Easy Ease In" and "Easy Ease Out" we also have two new shortcuts available that we could use for Hold Keyframes ( Shift-F9 ) and to back to a Linear Keyframe. ( Command-Shift-F9 )

The Spatial Interpolation makes a nice bezier position path, but can sometimes create (A) weird, unexpected loops. Many of which are often invisible—hiding behind the (B) Tangents. This happens when the Position Keyframes have the same value over time. The solution can be a function that resolves these loops between keys that have the same value.

In the "Keyframe Assistant" you can find "Exponential Scale". This creates Keyframes on every frame and should be replaced by an "Exponential Scale Expression" that does the same to keep your animation dynamic. When people do need Keyframes, they can convert the Expression to Keyframes in the "Keyframe Assistant".