How to Use Time Expressions in Adobe After Effects: Automatic Animation Without Keyframes

One of the most useful things you can learn in Adobe After Effects is how to create animation that runs automatically.

Normally, animation starts with keyframes.

You create one value at one point in time, move forward in the Timeline, change the value, and After Effects calculates the movement between those keyframes.

But what if you simply want something to:

  • rotate continuously;
  • move forever;
  • increase steadily;
  • animate automatically;
  • react to composition time;
  • keep working when the composition becomes longer?

You don’t necessarily need keyframes.

You can use the After Effects time expression.

A simple expression such as:

time * 90

can make a layer rotate continuously at 90 degrees per second.

No keyframes.

No copying.

No loops.

The animation simply responds to the current composition time.

In this guide, you’ll learn what the time variable means, how to use it for Rotation, Position, Scale, Opacity, effect controls, counters, and continuous motion, and how to combine time-based animation with keyframes and Expression Controls.

Affiliate disclosure: This article contains affiliate links. If you purchase Adobe After Effects through one of these links, we may earn a commission at no additional cost to you.

What Is the time Expression in After Effects?

In After Effects expressions, time represents the current composition time in seconds.

At the beginning of the composition:

time = 0

After one second:

time = 1

After two seconds:

time = 2

After ten seconds:

time = 10

This means you can use time as an automatically increasing number.

For example:

time * 100

produces:

0 seconds → 0

1 second → 100

2 seconds → 200

3 seconds → 300

10 seconds → 1000

If you apply this to Rotation, the layer keeps rotating automatically.

Why Time Expressions Are Useful

Time expressions are particularly good for animation that should continue at a predictable rate.

Examples include:

  • rotating wheels;
  • spinning logos;
  • clocks;
  • moving backgrounds;
  • scrolling elements;
  • animated textures;
  • counters;
  • mechanical components;
  • interface animation.

Instead of defining when the animation starts and ends with keyframes, you define a rule.

After Effects calculates the value continuously.

Keyframes vs Time Expressions

Suppose you want an icon to rotate continuously for 60 seconds.

With keyframes, you could create:

0 seconds → 0°

60 seconds → 5400°

That works.

But if you later change the composition to two minutes, you’ll need to modify the animation.

With:

time * 90

the layer rotates at 90 degrees per second regardless of composition duration.

Extend the composition to:

  • 30 seconds;
  • 60 seconds;
  • five minutes.

The expression continues working.

How to Add a Time Expression

Let’s create a simple example.

Step 1: Create a Composition

Open After Effects and create a new composition.

Step 2: Add a Shape

Create a Shape Layer.

A square, star, or arrow makes the rotation easy to see.

Step 3: Reveal Rotation

Select the layer.

Press:

R

to reveal Rotation.

Step 4: Enable Expressions

On Windows:

Alt-click the Rotation stopwatch.

On macOS:

Option-click the stopwatch.

Step 5: Enter the Expression

Type:

time * 90

Click outside the expression field.

Step 6: Preview

Press Spacebar.

The layer rotates continuously.

You’ve created automatic animation without a single keyframe.

If you’d like to practice time expressions and procedural animation yourself, you can explore Adobe’s current After Effects options here:

Explore Adobe After Effects and current plans

Understanding time * 90

Let’s break the expression down.

time

is the current composition time.

*

means multiply.

90

is the amount added per second.

Therefore:

time * 90

means:

current time × 90

At one second:

1 × 90 = 90°

At two seconds:

2 × 90 = 180°

At four seconds:

4 × 90 = 360°

The result is constant rotation.

Change the Animation Speed

The number after time determines the speed.

For example:

time * 20

creates slow movement.

time * 90

is faster.

time * 360

creates one full 360-degree rotation every second when applied directly to Rotation.

You can change the animation speed simply by changing one number.

Rotate in the Opposite Direction

Use a negative value:

time * -90

Now the layer rotates in the opposite direction.

This is useful when creating mechanical systems where different elements should rotate in opposite directions.

Example: Rotating Logo

Import a logo.

Apply:

time * 30

to Rotation.

The logo rotates slowly.

For many branding applications, you may want a decorative element to rotate rather than the entire logo itself.

Subtle movement is often more effective than aggressive spinning.

Example: Loading Spinner

Create a circular loading icon.

Apply:

time * 180

to Rotation.

The spinner rotates continuously.

No keyframes or loopOut() expression are required.

This raises an important question.

Time vs loopOut()

Both can create continuous rotation.

So which should you use?

Use time

when the animation can be defined by a constant mathematical rate.

For example:

Rotate continuously at 90° per second.

Use loopOut()

when you already have a keyframed animation that should repeat.

For example:

Scale 80% → 120% → 80% with custom easing.

A useful rule is:

Constant continuous change → time

Repeated keyframed motion → loopOut()

Time vs Wiggle

These expressions also solve different problems.

time

creates predictable continuous change.

wiggle()

creates procedural variation.

For example:

Rotating wheel → time

Shaky camera → wiggle

Moving conveyor belt → time

Floating object → wiggle

Choosing the right expression depends on whether the motion should be predictable or random-looking.

Add Time to an Existing Value

Suppose your layer already has a Rotation value.

You might want the time-based animation to begin from that value rather than ignoring it.

Use:

value + time * 50

Now After Effects takes the property’s base value and adds the time-based animation.

This is extremely useful.

Why value Matters

Imagine your Rotation is manually set to:

45°

If you use:

time * 50

the expression calculates Rotation entirely from time.

If you use:

value + time * 50

the 45-degree starting value is preserved.

Conceptually:

Manual value

Automatic animation

This makes expressions much easier to reuse.

Time-Based Position

Position is more complicated because it contains multiple values.

For a 2D layer:

X

and

Y

For example, conceptually:

[time * 100, value[1]]

can make the X Position increase while keeping Y at its existing value.

The object moves horizontally across the composition.

Understanding Arrays

Position is represented by an array.

For 2D Position:

[x, y]

For 3D Position:

[x, y, z]

This is why Position expressions often look different from Rotation expressions.

Rotation might need one number.

Position needs multiple numbers.

Move Horizontally with Time

Suppose you want a layer to move continuously to the right.

Conceptually:

[value[0] + time * 100, value[1]]

Here:

value[0]

represents the original X Position.

value[1]

represents the original Y Position.

The expression adds 100 pixels per second to X.

Y remains unchanged.

Move Vertically with Time

To move vertically instead:

[value[0], value[1] + time * 100]

Now X remains fixed while Y changes continuously.

Depending on the sign, the object can move upward or downward.

Reverse Direction

Use a negative speed.

For example:

[value[0] - time * 100, value[1]]

The layer moves left instead of right.

This makes directional changes very easy.

Create a Scrolling Background

Time-based Position animation is excellent for scrolling backgrounds.

Imagine a wide cloud layer.

Apply continuous horizontal movement.

If the artwork is designed to tile seamlessly, you can create an endless moving background.

This is useful for:

  • clouds;
  • landscapes;
  • game scenes;
  • motion-graphics backgrounds;
  • abstract patterns.

Time and Shape Layers

Shape Layers contain many properties that can benefit from time expressions.

You can automate:

  • Rotation;
  • Repeater Offset;
  • Trim Paths;
  • Position;
  • effect parameters.

For example, a repeating geometric background can continuously evolve without any manually created keyframes.

Time and Trim Paths

Trim Paths can create animated line drawing.

Its properties include:

  • Start;
  • End;
  • Offset.

A time expression on Offset can make the path animation move continuously.

This works particularly well for:

  • circular loaders;
  • animated borders;
  • technical graphics;
  • HUD designs.

Time-Based Scale

You can technically drive Scale using time.

However, simple expressions such as continually increasing Scale may eventually create enormous values.

For example, if Scale increases forever, your object eventually becomes huge.

Time expressions are most useful when unlimited change actually makes sense or when the result is constrained mathematically.

Time-Based Opacity

Opacity also has practical limits.

A simple:

time * 20

will quickly exceed 100%.

After Effects properties may clamp or interpret such values according to the property.

For controlled fades, keyframes or mapping functions are often more appropriate.

This illustrates an important principle:

Not every property benefits from unlimited time-based growth.

Properties with Natural Cycles

Time works especially well with properties that can naturally continue indefinitely.

Examples:

  • Rotation;
  • angle;
  • offset;
  • phase;
  • scrolling Position;
  • certain effect parameters.

For bounded properties such as Opacity, you’ll often combine time with mathematical functions.

Sine Waves

A more advanced time-based technique uses trigonometric functions such as:

Math.sin(time)

A sine wave oscillates between negative and positive values.

That makes it ideal for repeated smooth motion.

Instead of a value increasing forever, it moves back and forth.

Simple Oscillation

Conceptually:

Math.sin(time) * 50

creates a value that smoothly moves approximately between:

-50

and

+50

over time.

Add it to a base value and you can create smooth procedural oscillation.

Why Use Sine Instead of Pingpong?

loopOut("pingpong") requires keyframes.

A sine expression can generate smooth oscillation without any keyframes.

Use:

Pingpong

when you want to design the exact keyframed motion.

Use:

Sine

when a mathematically smooth repeating wave is sufficient.

Create Floating Motion with Sine

Imagine you want an object to move smoothly up and down.

Instead of Wiggle, use time with a sine wave.

Conceptually:

Base Y + sine wave

The object moves predictably.

This is different from Wiggle.

Wiggle feels random.

Sine feels rhythmic.

Predictable vs Random Motion

Compare:

Wiggle

wiggle(1,20)

Creates organic variation.

Sine-based time animation

Creates smooth repeating oscillation.

Use Wiggle for:

  • natural randomness;
  • camera shake;
  • drifting.

Use sine for:

  • floating;
  • breathing;
  • waves;
  • mechanical oscillation.

Time and Expression Controls

Hard-coding a speed such as:

time * 90

is fine while learning.

But what if you want to change the speed frequently?

Add a Slider Control.

Name it:

Rotation Speed

Then use that Slider as the multiplier.

Conceptually:

time * speedControl

Now the animation speed can be adjusted without editing the expression.

Why Slider Controls Are Better

Suppose you build a reusable loading animation.

Instead of asking the next editor to open the expression and change:

90

to:

120

you provide a control:

Rotation Speed: 120

This makes the project:

  • easier to understand;
  • safer to edit;
  • more reusable.

Create a Master Animation Controller

Create a Null Object named:

CONTROLS

Add Slider Controls such as:

  • Rotation Speed;
  • Scroll Speed;
  • Float Amount;
  • Animation Speed.

Then connect other layers using expressions.

One control layer can manage an entire motion-graphics system.

This is a major step toward professional After Effects project organization.

Time-Based Counter

The time variable can also help create automatically changing numbers.

For example, you could calculate a number based on elapsed time and display it as text.

This can be useful for:

  • timers;
  • counters;
  • technical graphics;
  • data displays;
  • HUD interfaces.

Working with Source Text requires additional expression techniques, but the underlying idea is the same.

Example: Seconds Counter

Conceptually:

Displayed value = current time

At:

0 seconds → 0

1 second → 1

2 seconds → 2

3 seconds → 3

You can format and round the result so the text displays clean integer values.

Math.floor()

A useful JavaScript function is:

Math.floor()

It rounds a value down to the nearest integer.

For example:

Math.floor(time)

produces:

0

1

2

3

4

as time progresses.

This is useful when you don’t want decimal values.

Math.round()

Another option is:

Math.round()

This rounds to the nearest integer.

The exact choice depends on how you want your counter to behave.

Create a Countdown

Once you understand time-based counters, you can reverse the logic.

Suppose you start at 10.

Conceptually:

10 – current time

The displayed number decreases.

With appropriate rounding and constraints, this can create a countdown.

Time-Based Clocks

More advanced expressions can convert elapsed time into:

  • seconds;
  • minutes;
  • hours.

You can format those values into a clock display.

This is useful for:

  • sports graphics;
  • timers;
  • presentation graphics;
  • interface mockups.

Time and Effects

Time expressions aren’t limited to Transform properties.

You can apply them to many effect controls.

For example:

  • Evolution;
  • Angle;
  • Phase;
  • Offset;
  • distortion parameters.

This can create animated textures and backgrounds with almost no keyframes.

Fractal Noise Evolution

Fractal Noise is a classic example.

Instead of keyframing Evolution manually, you can drive it using time.

The texture continuously changes.

This can create:

  • smoke;
  • clouds;
  • abstract backgrounds;
  • energy;
  • atmospheric effects.

Turbulent Noise

Similarly, time-driven animation can make procedural textures evolve automatically.

This is extremely useful because procedural effects often need continuous movement rather than a carefully choreographed start and finish.

Time and Gradient Animation

If an effect exposes animatable positions or angles, time-based expressions can potentially automate their movement.

For example, you might continuously rotate a gradient direction or animate an effect offset.

The exact implementation depends on the property.

Time and Repeater

Shape Layer Repeaters can create repeated geometric elements.

Time expressions can animate:

  • Repeater Rotation;
  • Offset;
  • transformations.

This can produce complex procedural designs from very simple shapes.

Time and 3D Layers

Time expressions also work with 3D properties.

For example:

  • X Rotation;
  • Y Rotation;
  • Z Rotation;
  • Position;
  • effect controls.

A 3D object or layer can rotate continuously through space without keyframes.

Rotating 3D Product

Imagine a product image or 3D layer.

Apply a time-based expression to Y Rotation.

The product rotates continuously.

This can be useful for:

  • product presentations;
  • technology graphics;
  • logo reveals;
  • abstract scenes.

Opposite Rotations

Create two circular elements.

Element A:

time * 30

Element B:

time * -30

They rotate in opposite directions.

Add a third:

time * 15

Now you have a simple mechanical system.

This is useful for:

  • HUD graphics;
  • technology interfaces;
  • rotating rings;
  • abstract backgrounds.

Create an Animated Tech Interface

Build several Shape Layer rings.

Apply different time multipliers:

Ring 1 → 20

Ring 2 → -35

Ring 3 → 10

Each ring rotates automatically.

Add:

  • Trim Paths;
  • Glow;
  • text;
  • grids.

You can create sophisticated interface motion with very few keyframes.

Layer Index and Time

More advanced procedural systems can combine:

time

with:

index

Remember that index represents a layer’s position in the layer stack.

Different layers can therefore receive different speeds based on their index.

This is useful for generating variation across duplicated layers.

Example Concept

Imagine ten rotating circles.

Instead of manually giving each one a different speed, the expression can calculate speed using the layer index.

Layer 1 rotates slowly.

Layer 10 rotates faster.

Duplicate a layer and its behavior changes automatically.

That’s procedural motion design.

Time and Delay

You can offset time mathematically.

For example:

time - 1

represents time delayed by one second in certain calculations.

Time offsets become useful when creating staggered animation systems.

Staggering Multiple Layers

Imagine five layers that should perform similar procedural animation but begin at slightly different moments.

Instead of manually keyframing each layer, you can create time offsets based on:

  • layer index;
  • Slider Controls;
  • fixed delay values.

This allows large animation systems to remain compact.

Time and Layer Start Time

Advanced expressions can reference layer timing so an animation responds to when the layer begins rather than absolute composition time.

This becomes important for reusable templates.

You may want an animation to start at:

0 seconds relative to the layer

regardless of where that layer sits in the composition.

Why Absolute Time Can Cause Problems

Suppose your expression is:

time * 90

At 10 seconds, the value is already:

If you move the layer so it begins at 10 seconds, it doesn’t necessarily behave as though its local animation is beginning at zero.

For reusable systems, you may instead calculate time relative to the layer’s start.

Relative Time Concept

Conceptually:

current composition time – layer start time

This gives you time measured from the layer’s own beginning.

That allows animation to behave consistently when the layer is moved in the Timeline.

This is an important concept for template development.

Time and Markers

More advanced expression rigs can use markers to trigger or control animation.

For example:

  • marker starts animation;
  • marker changes speed;
  • marker triggers a transition.

This can make reusable projects easier for editors to control.

We’ll cover marker-driven animation in a later advanced expressions tutorial.

Time and Conditions

Time can also be used inside conditional statements.

For example:

Before 2 seconds → value A

After 2 seconds → value B

Conceptually:

if (time < 2)

do one thing.

Otherwise:

do something else.

This allows expressions to change behavior at specific moments.

Start Rotation After Two Seconds

Imagine an object that should remain stationary initially.

After two seconds, it starts rotating.

A time condition can control this behavior.

This avoids manually creating hold keyframes.

However, for simple animations, keyframes may still be easier.

Use expressions when they improve the workflow.

Stop Animation After a Certain Time

Likewise, you can constrain a time expression so it stops changing after a certain point.

This requires mathematical or conditional logic.

For example:

0–5 seconds → animate

after 5 seconds → hold final value

This is useful for procedural animations that need a defined duration.

Linear Mapping and Time

The linear() function can map time to another range.

Conceptually:

Time 0–2 seconds

maps to:

Scale 0–100

This creates automatic animation over a defined time range.

Unlike unlimited time * value, mapped time can produce controlled start and end values.

Ease and Time

The ease() function can do something similar while producing smoother acceleration and deceleration.

Conceptually:

0 seconds → 0

2 seconds → 100

with easing between them.

This means expressions can reproduce many behaviors normally created with keyframes.

Should You Replace Keyframes with Time Expressions?

No.

Keyframes remain one of the most important tools in After Effects.

Use keyframes when you need:

  • specific timing;
  • artistic easing;
  • precise choreography;
  • custom animation paths.

Use time expressions when:

  • animation should continue automatically;
  • motion follows a mathematical rule;
  • you need reusable systems;
  • manually extending animation would be repetitive.

Time Expressions and the Graph Editor

The Graph Editor is primarily associated with keyframed animation.

A simple time expression doesn’t create normal editable keyframe velocity curves.

If you need carefully art-directed acceleration, keyframes may be better.

Again, choose the tool that fits the animation.

Time Expressions and loopOut()

You can often solve the same visual result in different ways.

For continuous Rotation:

Option 1

Create Rotation keyframes and use:

loopOut("cycle")

Option 2

Use:

time * speed

Which is better?

If the rotation speed is constant:

time is simpler.

If the rotation contains custom acceleration or multiple keyframes:

loopOut may be better.

Time Expressions and Wiggle

You can also combine time-based motion with Wiggle.

For example:

Main movement → time

Secondary variation → wiggle

Imagine a spacecraft moving continuously across the screen while slightly vibrating.

Time controls the overall travel.

Wiggle creates engine vibration.

This combination can produce sophisticated procedural movement.

Time Expressions and Motion Blur

Fast automatic movement may require motion blur.

If something rotates rapidly but remains perfectly sharp, it can look unnatural.

Enable Motion Blur where appropriate.

As always, motion blur should support the visual result rather than simply be enabled everywhere.

Performance Considerations

Simple time expressions are generally lightweight.

However, very large projects can contain:

  • hundreds of expression-driven layers;
  • complex calculations;
  • nested references.

At that scale, expressions can affect performance.

For beginner and moderate projects, a simple time * speed expression usually isn’t something to worry about.

Common Time Expression Mistakes

Mistake 1: Forgetting That Time Is in Seconds

time * 100 means 100 units per second.

Mistake 2: Using Unlimited Growth on Bounded Properties

Opacity doesn’t need to reach 5,000%.

Mistake 3: Forgetting the Original Value

Use value when you want to preserve the manually set property value.

Mistake 4: Treating Position Like a Single Number

2D Position contains X and Y values.

Mistake 5: Using Time When Keyframes Are Easier

Expressions should simplify the project.

Mistake 6: Hard-Coding Every Speed

Slider Controls make reusable rigs easier to edit.

Mistake 7: Forgetting Layer Timing

Absolute composition time and layer-relative time aren’t always the same thing.

Mistake 8: Ignoring Motion Blur

Fast procedural movement may need appropriate blur.

Mistake 9: Never Testing Negative Values

Negative multipliers can reverse direction instantly.

Mistake 10: Building Complex Expressions Too Soon

Master simple time multiplication first.

Time Expression Cheat Sheet

Continuous Rotation

time * 90

Slower Rotation

time * 20

Reverse Rotation

time * -90

Preserve Existing Rotation

value + time * 90

Integer Time Counter

Math.floor(time)

Smooth Oscillation Concept

Math.sin(time)

These simple concepts can become the foundation for much more advanced procedural animation.

Five Time Expression Exercises

Exercise 1 — Rotating Square

Apply:

time * 90

to Rotation.

Exercise 2 — Reverse Rotation

Change it to:

time * -90

Observe the direction.

Exercise 3 — Preserve Starting Rotation

Set Rotation manually and use:

value + time * 90

Exercise 4 — Scrolling Layer

Use time to increase one Position dimension continuously.

Exercise 5 — Rotating Rings

Create three Shape Layers with different positive and negative time multipliers.

These exercises teach most of the fundamental ideas.

A Practical Mini Project: Animated Tech Dashboard

Create three circular Shape Layers.

Use:

Outer Ring

slow clockwise rotation.

Middle Ring

faster counterclockwise rotation.

Inner Ring

very slow clockwise rotation.

Add Trim Paths.

Create small dots and lines.

Add text in the center.

Now you have a continuously animated technology interface.

And because the motion is driven by time expressions, it keeps running regardless of composition length.

A Practical Mini Project: Endless Background

Create a wide repeating background.

Use time-based Position to move it continuously.

Duplicate or tile the artwork so the transition remains seamless.

Add foreground text.

You now have a reusable animated background for:

  • YouTube videos;
  • presentations;
  • social media;
  • advertisements.

A Practical Mini Project: Rotating Product Graphic

Create a product image surrounded by several circular graphics.

Keep the product relatively stable.

Rotate surrounding design elements at different speeds using time expressions.

This creates motion without distracting from the product itself.

Time Expressions for Motion Graphics Templates

Time expressions are particularly useful in templates because the animation doesn’t depend on fixed keyframe positions.

An editor can make the composition longer.

The background still moves.

The rings still rotate.

The pattern still evolves.

This makes templates more adaptable.

Do You Need to Know JavaScript?

Not for basic time expressions.

You can achieve a lot with:

time * 50

and simple arithmetic.

As you progress, learning JavaScript concepts such as:

  • variables;
  • arrays;
  • functions;
  • conditions;

will make your expressions more powerful.

But don’t let programming terminology prevent you from starting.

Do You Need Plug-Ins?

No.

The time variable is part of After Effects’ native expression system.

You can create sophisticated automatic animation without third-party plug-ins.

Is the Time Expression Worth Learning?

Absolutely.

Together, these three concepts cover a remarkable amount of procedural animation:

Wiggle → random variation

loopOut → repeated keyframed motion

Time → continuous mathematical motion

If you understand those three, you’re already capable of building much cleaner and more automated After Effects projects.

Frequently Asked Questions

What does time mean in After Effects expressions?

time represents the current composition time in seconds.

What does time * 100 do?

It creates a value that increases by 100 for every second of composition time.

How do I continuously rotate a layer?

Apply a time-based expression such as time * 90 to Rotation.

How do I reverse the rotation?

Use a negative multiplier such as time * -90.

Can I use time without keyframes?

Yes. That’s one of its main advantages.

Can I combine time with keyframes?

Yes. Using value and other expression techniques allows time-based behavior to build on existing property values.

Can time animate Position?

Yes, but Position contains multiple dimensions, so you’ll need to account for X and Y—and Z for 3D layers.

Can time animate Scale?

Yes, although continuously increasing Scale may not be useful indefinitely.

Can time animate effects?

Yes. Many numerical effect properties can be driven by expressions.

What is the difference between time and loopOut?

Time generates animation mathematically based on elapsed time. loopOut() repeats or extends existing keyframed animation.

What is the difference between time and wiggle?

Time usually creates predictable mathematical change, while Wiggle creates procedural random-looking variation.

Can time create a counter?

Yes. Time can be converted and formatted into changing numerical displays.

Can I control time-expression speed with a Slider?

Yes. A Slider Control can provide the speed multiplier.

Is time measured in frames?

The standard time value represents seconds. Frame-based calculations can also be created when needed.

Does the time expression require a plug-in?

No. It’s built into After Effects.

Practice Automatic Animation in After Effects

The best way to understand time expressions is to experiment.

Create a shape.

Apply:

time * 30

to Rotation.

Then change it to:

time * 360

Then:

time * -90

Then:

value + time * 45

In just a few minutes, you’ll understand how time becomes an animation source.

After that, try using the same concept on:

  • Position;
  • Trim Paths;
  • effect angles;
  • procedural textures.

If you’d like to explore After Effects expressions and automatic animation yourself, you can check Adobe’s current options below:

Get Adobe After Effects and start creating automatic animation

What Should You Learn Next?

Wiggle gave us random procedural movement.

loopOut() gave us repeating animation.

time gave us continuous mathematical animation.

The next step is making motion feel more physical.

A layer can move into position and:

  • bounce;
  • overshoot;
  • settle;
  • spring;
  • react as though it has momentum.

You could create all of this manually with keyframes and the Graph Editor.

But expressions can automate much of the behavior.

The next article will therefore be:

How to Create Bounce and Overshoot Expressions in Adobe After Effects.

We’ll look at the difference between bounce and overshoot, how expression-driven motion works, how to control amplitude and decay, when to use keyframes instead, and how to create reusable spring-style animation.

Final Thoughts

The time variable is one of the simplest ideas in After Effects expressions.

But it fundamentally changes how you can think about animation.

Instead of telling After Effects:

“At frame 0, use this value.”

and:

“At frame 60, use that value.”

you can tell it:

“Calculate this property from the current time.”

The result becomes automatic.

A wheel can rotate forever.

A background can keep moving.

A procedural texture can continue evolving.

A counter can keep increasing.

A set of interface rings can rotate at different speeds.

And if you make the composition longer, the animation simply continues.

Remember the three expression tools we’ve covered so far:

wiggle()

for variation,

loopOut()

for repetition,

and:

time

for continuous change.

Those three techniques alone can remove enormous amounts of repetitive keyframing from your After Effects projects.

Learn them individually.

Then start combining them.

That’s when expressions stop feeling like isolated pieces of code and start becoming a practical motion-design system.

Explore Adobe After Effects and start building automatic animations with expressions

I’m Ben

Welcome to After Effects Cloud, a place where I share my passion for Adobe After Effects, motion graphics, animation, and visual effects. I created this website to make learning After Effects easier, whether you’re opening the application for the first time or looking for new techniques to improve your creative work. Here you’ll find practical tutorials, feature guides, workflow tips, and updates covering the latest developments in After Effects. I’m constantly exploring new tools, including AI-powered features and the growing 3D capabilities inside After Effects, and I enjoy sharing what I discover along the way. I hope the articles inspire you to experiment, learn something new, and create amazing things with Adobe After Effects.

Let’s connect

Discover more from Adobe After Effects

Subscribe now to keep reading and get access to the full archive.

Continue reading