Comparisons

html.to.design alternative for animations: when you need the motion too

html.to.design brings a web page into Figma as static layers. Capture Motion brings in how it moves. What each does, when to use which, and how to combine them.

· 5 min read

If you search for an html.to.design alternative, you usually want one of two things. Either you want a different way to import a web page into Figma, or you imported a page, noticed it stands still, and want the animations too. This post is about the second case.

html.to.design and Capture Motion both take something from a live website and put it in Figma. They capture different things. One gives you how a page looks. The other gives you how parts of it move. Knowing which job you have makes the choice easy, and for many projects the answer is both.

What html.to.design does

html.to.design is a Figma plugin that imports a web page into Figma as editable design layers. You give it a page and it rebuilds the layout: frames, text, images, colors and styles, as layers you can select and change. It is a good tool for that job and many designers rely on it.

Typical reasons to use it:

What you get is a snapshot. It captures the page as it is rendered at one moment. Animations, transitions and hover effects are about time, and a snapshot does not hold time. That is not a flaw. It is just a different job.

What Capture Motion does

Capture Motion works on motion. It is a Chrome extension plus a Figma plugin. In Chrome you pick an element and play its animation. The extension records the keyframes, durations, delays and easing of every animated property while it runs. It works with CSS transitions and keyframes, the Web Animations API, GSAP and Lottie, and it triggers hover animations with a real :hover state.

You can then take that capture in several directions:

Capturing and previewing need no account. A free account is needed to copy or download. Captures stay in your browser unless you save them.

Side by side

html.to.designCapture Motion
Main jobImport a web page into Figma as editable layersCapture an element's animation and rebuild the motion
ScopeA page or a large part of oneThe element you pick and its animated children
What it recordsLayout, text, images, colors, stylesKeyframes, durations, delays and easing per property
TimeA snapshot of one momentThe animation as it plays
Result in FigmaStatic, editable design layersA Figma Motion timeline
Other outputsFocused on FigmaHTML and CSS, React, JSON, AI prompt
Best forRedesigns, audits, layout referencesMotion references, micro-interactions, motion handoff

The table is not a scorecard. Each column describes a tool doing what it was made to do.

When to use html.to.design

Use it when the layout is the point. If you are redesigning a marketing site and want the current pages as a starting file, importing them saves hours of redrawing. If you want to compare how three competitors structure their pricing pages, static layers are exactly what you need. Motion does not matter much in those tasks.

When to use Capture Motion

Use it when the movement is the point. Some examples:

In all of these, a static import would give you the element in one state. A capture gives you every state in between, with timing.

Using both together

The two tools fit into one workflow without overlap. Here is a common way to combine them on a redesign.

  1. Import the page. Use html.to.design to bring the current page into Figma as layers. This is your layout baseline.
  2. Find what moves. Open the live page and note the parts that animate: the nav, cards on hover, a hero entrance, a tab indicator.
  3. Capture each one. With the Capture Motion extension, pick each element and play its animation. Check the preview to make sure you caught all of it.
  4. Open the captures in Figma. Run the Capture Motion plugin in the same file. Each capture becomes a Figma Motion timeline with its real timing and easing.
  5. Redesign with both. Change the layout on the imported layers, and tune the motion on the timelines. You keep the parts of the original motion that worked and change the rest with intent.
  6. Hand off. Export the final motion as CSS, React or an AI prompt, so the build uses the same durations and curves you settled on.

This avoids the most common redesign problem with motion: the new layout ships, but nobody wrote down how the old interactions felt, so they get rebuilt from memory.

What a motion spec looks like

To make the difference concrete: a static import of a card tells you its size, radius, colors and text. A capture of the same card's hover tells you something like this, which you can paste straight into CSS:

.card {
  transition:
    transform 320ms cubic-bezier(.22, 1, .36, 1),
    box-shadow 320ms cubic-bezier(.22, 1, .36, 1) 40ms;
}
.card:hover {
  transform: translateY(-6px) scale(1.02);
  box-shadow: 0 18px 40px rgb(0 0 0 / .18);
}

That second set of numbers is what a static layer cannot carry. It is also what developers ask for when a prototype "feels different" from the build. If you want to learn to read these curves, see how to find the easing curve of an animation.

Limits to know about

Be clear about what each tool will not do, so you pick the right one:

The short version

If you need what a page looks like, html.to.design is built for that. If you need how it moves, use Capture Motion. If you need both, run both: import the layout, capture the motion, and design with the real numbers in one Figma file. For a step-by-step guide to the motion half, read how to import a website animation into Figma.

Questions

Does html.to.design import animations?

Its job is to bring a page's layout and styles into Figma as editable layers. If you need the keyframes, durations and easing of an animation as a Figma Motion timeline, use a motion capture tool such as Capture Motion alongside it.

Is Capture Motion a replacement for html.to.design?

Not for importing full pages. Capture Motion records the animation of an element you pick and rebuilds that motion. It does not try to recreate an entire page layout. The two cover different jobs.

Can I use both on the same project?

Yes. Import the static page with html.to.design, then capture the animated parts with the Capture Motion extension and open them in the Capture Motion Figma plugin. Use the captured timing as the spec for those components.

What animations can Capture Motion capture?

CSS transitions and keyframe animations, the Web Animations API, GSAP and Lottie. Hover animations are captured with a real hover state. Exports include HTML and CSS, React, JSON, an AI prompt and a Figma Motion timeline.