DevKits

cubic-bezier() Editor — Visual CSS Easing Function Designer

Design custom cubic-bezier() easing functions with two draggable control handles. Live animation preview, common presets (ease, back-out, etc.), and copy-ready CSS. 100% local.

Last updated:

Comments

Animation preview (2s, looped)

Drag the two circular handles on the curve — the ball animates with the same timing function.

Presets

CSS value
cubic-bezier(0.42, 0.00, 0.58, 1.00)
CSS (transition-timing-function)
transition-timing-function: cubic-bezier(0.42, 0.00, 0.58, 1.00);

Frequently Asked Questions

What are the four numbers in cubic-bezier()?

They're the coordinates of two control handles: (x1, y1) and (x2, y2). x is time (must be 0-1), y is progress and can go outside 0-1 to produce back / overshoot effects. The curve always starts at (0,0) and ends at (1,1).

Which bezier maps to 'ease-in-out'?

cubic-bezier(0.42, 0, 0.58, 1). All five CSS keywords (linear, ease, ease-in, ease-out, ease-in-out) are shorthand for specific bezier curves — the presets in this tool show the exact values.

Why can y go below 0 or above 1?

y is progress percent, not time. If y goes below 0 the animation goes backwards briefly (a 'wind-up' effect); if it goes above 1 the animation overshoots the target and springs back (a 'bounce' effect). Both are how you make transitions feel physical.

Related Tools