Staggering & cascades
Also searched as: staggering, stagger, cascade, delay offsets, sequential reveals
Canonical Definition
Staggering is the deliberate time offset applied between multiple related elements in a group, so they enter sequentially in cascade rather than appearing simultaneously.
3 to 6 frames offset between consecutive items
When a list of features, a grid of cards, or a group of avatars appears on screen, rendering them on the exact same frame creates a harsh, overwhelming flash. Staggering introduces micro-delays (e.g. 3 to 6 frames between each child).
This cascade guides the viewer's eye along a natural path (top-to-bottom or left-to-right) and communicates that the items are distinct components of a whole.
Calculating Delay Offsets in React
Using array indices to parameterize child animation frames
In Remotion, staggering is implemented by passing the array index to offset the input frame to `interpolate()` or `<Sequence>`.
How this works: A list of typographic lines cascading into view with clean 4-frame delay offsets.
- Formula: `const delay = index * 4;`
- Natural reading order prioritization
- Smooth continuous cascade without visual clutter
import { interpolate, spring, useCurrentFrame, useVideoConfig } from "remotion";
export const StaggerList = ({ items }: { items: string[] }) => {
const frame = useCurrentFrame();
const { fps } = useVideoConfig();
return (
<div style={{ display: "flex", flexDirection: "column", gap: 12 }}>
{items.map((item, index) => {
const itemFrame = Math.max(0, frame - index * 4); // 4-frame offset per child
const opacity = interpolate(itemFrame, [0, 10], [0, 1]);
const translateY = spring({ frame: itemFrame, fps, config: { damping: 14 }, from: 20, to: 0 });
return (
<div key={item} style={{ opacity, transform: `translateY(${translateY}px)` }}>
{item}
</div>
);
})}
</div>
);
};Engineering Guidelines & Common Pitfalls
Best Practices (What to do)
- Keep stagger intervals tight (2 to 5 frames) so the cascade feels like a single wave rather than a series of disjointed arrivals.
Common Failure Modes (What to avoid)
- Stagger offsets that are too long (e.g. 20 frames): a list of 5 items takes over 3 seconds just to finish entering.
Build staggering & cascades in Animatiq
Prompt our motion agent in natural language. Get back typed Remotion React code with custom easing curves, brand palettes, and frame-accurate timing.
Related motion principles
Timing, spacing & rhythm
Timing is the number of frames an action takes; spacing is the variation in position between successive frames; rhythm is the overarching cadence governing the pace of cuts and arrivals.
Motion FundamentalsSpring physics & overshoot
Spring physics is a physical simulation model based on Hooke's Law that computes motion from mass, tension (stiffness), and friction (damping), producing organic overshoot and settlement.
Composition & UISocial overlays
Social overlays are authentic recreations of platform-specific interface cards — X posts, Reddit threads, TikTok follows, and push notifications — designed to layer over footage as social proof.