L LocaleProof Pro Get Elevation free

Design systems · Shadows

Drag one light, get a whole shadow scale

Five hand-tuned shadows give you five unrelated shadows. Derive them from one light instead and the set shares an angle, a blur ramp and an opacity ramp. Move the sliders — every level below is recomputed from the same source, and the numbers are the output of the code, not typed by hand.

0° is directly above. The shadow always falls opposite the light — and every level uses this one angle.

A distant light is a point source and casts crisp edges. A near one wraps the object and smears it.

How high level 1 sits above the surface. Everything above it grows from this number.

Drives density inside a fixed band: 0.04–0.24 alpha. Below that a shadow is invisible, above it reads as a grey box.

Elevation is geometric, not linear. Below ~1.05 the levels stop being distinguishable, so it is not a scale any more.

Set this to 1 and watch the shadow turn into a smudge: one layer cannot carry both the umbra and the penumbra.

Levels

These are the real values at real pixel sizes. Paste them straight into your stylesheet, your tailwind.config.js or a token pipeline.

Why one light instead of five shadows

Nobody hand-tunes one shadow and gets it wrong. The problem starts at five. You nudge each level until it looks right on its own, and the finished set looks like five shadows from five different rooms — the angle drifts, the blur ramp is arbitrary, and the opacities stack into grey.

Three constraints do most of the work here, and you can watch each one break if you push the sliders far enough:

The full derivation, including why a shadow cannot be a Figma variable, is in the article: Why your five shadows don't look like one system.

Same maths, inside Figma

This page runs the exact code the plugin runs — same functions, no reimplementation. Inside Figma, Elevation additionally writes the scale into your file as effect styles, so the levels become real, reusable styles instead of numbers you paste per layer. Free to use.

Get Elevation free