Visual QA
April 16, 2026

What is design drift and how to detect it between Figma and your live site

Design drift is the gap that accumulates between a Figma design and its live implementation over time. It enters through approximation, stale references, and inconsistent review.

What is design drift and how to detect it between Figma and your live site

Design drift is the gap that accumulates between a Figma design and its live implementation. It is not a single mistake. It is the compounding effect of small approximations made during implementation, design updates that do not reach the developer, and visual review that is too infrequent or too manual to catch what has changed. The result is a product that gradually diverges from its intended design without any single obvious cause.

Where drift comes from

Drift enters the process at predictable points.

The first is the translation step. Moving from a Figma design to running code involves multiple decisions: how to interpret a spacing value, which CSS property to use for a layout, how to handle a component at a size the design did not specify. Each decision is a potential point of divergence. Most are small. Together they add up.

The second is design updates after handoff. Figma files change. A designer refines a component, a stakeholder requests a layout adjustment, a design system token gets updated. If those changes do not reach the developer who already built the original version, the implementation continues reflecting the old design while the file moves on.

The third is inconsistent review. Visual QA that depends on someone eyeballing a page catches obvious deviations and misses subtle ones. Small differences in font weight, spacing, and colour pass review not because they are acceptable but because they are hard to perceive without measuring.

Why drift is hard to notice

Individual deviations are small. A heading at font weight 400 instead of 500. A gap of 14px instead of 16px. A colour that is close but not exact. None of these look obviously wrong in isolation. The problem is that they do not stay isolated.

A page with ten small deviations does not look like a page with ten small deviations. It looks like a page that feels slightly off, without any single element being clearly wrong. Users notice the feeling without being able to identify the cause. Designers notice it and have to work backwards to find the specifics. Developers do not notice it at all because their eye has adapted to what they built.

Drift also compounds over time. Each release cycle adds more implementation, more potential for approximation, more design updates that may or may not reach the code. A product that has been in development for a year has had many more opportunities for drift to accumulate than one that shipped last month.

How to detect it

Detecting drift requires comparing the rendered live page against the current Figma design, not against the developer's memory of what the design said when they built it.

The comparison needs to be specific. A visual scan of both side by side will catch major deviations. It will miss the font weight that is one step off, the spacing that is a few pixels out, the colour that has drifted since the design system was last updated. Detecting these requires measuring rendered values against design specifications, not looking at both and judging whether they appear to match.

The practical approach is to run a comparison against the Figma file for the specific frames that correspond to the pages being reviewed. The output is a list of specific differences with values: what the live page shows, what the design specifies, where on the page the deviation is. That list is what makes drift actionable rather than a vague feeling that something is off.

When to check for drift

The most effective point to check is during development, before implementation is submitted for review. Drift caught at that stage is cheap to fix.

Checking periodically on existing pages is also worth doing, particularly after design system updates or significant codebase changes. A CSS change intended to fix one thing can shift values elsewhere without anyone realising. A token update that cascades through the product can create drift across pages that were previously accurate.

The pages most worth checking regularly are the ones with the highest visibility: key flows, landing pages, anything shown to new users. These are the pages where drift is most likely to affect perception of quality, and where the cost of it being noticed is highest.


Uiprobe detects design drift by comparing rendered web pages against Figma designs and surfacing specific differences with values. Try it free.

Related articles

Stop pixel-peeping by hand.

Free to start. No credit card. See your first comparison in under a minute.

No credit card · Works in Chrome, Arc, Brave & Edge
Uiprobe

The fastest way to see how your implementation compares to the design. No screenshots, no guessing

© 2026 · Built by UIPROBE