Cubic Bézier
An easing curve, expressed as the two control points of a cubic Bézier.
Value format
{ "$type": "cubicBezier", "$value": [0.25, 0.1, 0.25, 1] }The array is [P1x, P1y, P2x, P2y].
| Constraint | |
|---|---|
| Length | Exactly 4 entries |
P1x, P2x | Must be between 0 and 1 — a curve cannot move backwards in time |
P1y, P2y | Unbounded, so overshoot and anticipation curves are valid |
Individual entries may be references, e.g. [0.25, "{ease.y1}", 0.25, 1].
What you can type
All three of these produce the same value:
0.25, 0.1, 0.25, 1cubic-bezier(0.25, 0.1, 0.25, 1)[0.25, 0.1, 0.25, 1]Applying to Figma
Not applicable
Figma’s easing curves live on prototype interactions, not on layers, so there is no apply target for a cubic Bézier token.
What does work
Authoring, validation, references, export, and sync — plus use as the
timingFunction slot of a transition token.
Common curves
| Name | Value |
|---|---|
| ease | 0.25, 0.1, 0.25, 1 |
| ease-in | 0.42, 0, 1, 1 |
| ease-out | 0, 0, 0.58, 1 |
| ease-in-out | 0.42, 0, 0.58, 1 |
| linear | 0, 0, 1, 1 |