Variable font animation

Also called kinetic text, variable font hover, or font weight animation

Animating the axes of a variable font, such as weight, width, or slant, so letters thicken, stretch, or lean smoothly, often following the pointer.

What is Variable font animation?

A variable font packs a whole family into one file, with axes you can set to any value in between: weight (wght), width (wdth), slant (slnt), optical size (opsz), and sometimes custom ones. Because those values are continuous, CSS transitions and JavaScript can animate them. A common version sets each letter's weight from its distance to the pointer, so a heavy bulge travels through the word.

It suits hero words, logos, interactive posters, and portfolio headings, where the type itself is the visual. A narrower range, such as 300 to 700, also works as hover feedback on large links.

Check that the font really is variable and which axes it ships: many web fonts have only wght, and a static font jumps between its few weights. With next/font, leaving out the weight option loads the variable file. Heavier or wider letters take more room, so the line reflows on every frame; keep it to one short word and center it. Keep the word as one accessible label, and hold a still weight when someone prefers reduced motion.

Often confused with

Split text animation
Split text animates each letter's position or opacity as it enters. Variable font animation changes the shape of the letters themselves.
All terms

Split text animation

A text animation that breaks a heading into characters, words, or lines and animates each piece in turn, so the text arrives as a wave.

Hover effect

A visual change, such as a lift, glow, or zoom, that happens when the mouse pointer moves over an element to show it can be clicked.

Typographic hierarchy

Using differences in text size, weight, and color so people can tell at a glance what to read first, second, and last.

Magnetic button

A button that leans toward the mouse pointer as it gets close, then springs back when the pointer leaves.

Build it with Layerwise

Describe your app, watch it run in a live preview, and publish it with a database, storage, and sign-in built in.