The first time a product manager asked me for "some motion graphics" on a dashboard, I spent two days building a beautiful animated chart reveal. It shipped, and the support queue filled with people asking why the numbers took so long to appear. The animation was 1.4 seconds. Nobody was watching it; they were waiting for it.
That's the gap this guide is about. Motion graphics as a craft came out of film and broadcast, where the audience sits still and the clock belongs to you. Inside a product, the clock belongs to the user, and almost every rule shifts because of that one change.
TL;DR: Motion graphics in product design means animation that lives inside a running interface, not animation rendered to video. Keep functional motion between 150 and 300ms (Material Design), animate transform and opacity only, and always honour
prefers-reduced-motion. Start in Figma Smart Animate, escalate to Rive or code only when the interface genuinely needs it.
What Separates Product Motion Graphics From Broadcast?
Three constraints, and they reshape everything downstream.
The first is interruption. A title sequence plays start to finish. A product animation gets cut off constantly, because someone taps again, navigates away, or the data arrives early. Every animation you build for a product needs a sensible answer to "what happens if this stops at 40 percent?" Broadcast work never asks that question.
The second is repetition. A viewer sees a brand ident once, maybe twice. A user sees your sheet transition forty times a day. Charm decays fast under that kind of exposure, which is why the animations that survive in shipped products are almost boring in isolation. The ones people compliment in a portfolio review are usually the ones that get stripped out after a month of real use.
The third is the machine. You render broadcast at whatever quality your farm can manage. Product motion runs on a four-year-old Android phone with eleven tabs open, and if it drops below about 60 frames per second people register the interface as slow even when they can't say why.
Which Principles Actually Carry Over?
Most of them, honestly. Timing, easing, and attention hierarchy are the same craft in both worlds; only the numbers change.
Timing is the first thing to recalibrate. Broadcast motion breathes in half-second and full-second beats. Product motion works in fractions of that, with 150 to 300ms covering the bulk of interface work and 500ms as a practical ceiling before functional motion starts to feel like it's dragging its feet.
Easing is where crossover designers usually get it right instinctively. Ease-out for anything entering, so it arrives with confidence. Ease-in for anything leaving. Linear for almost nothing, because nothing in the physical world starts and stops instantly. If a hover state feels hesitant, it's nearly always an ease-in curve applied to an entrance.
Attention hierarchy is the principle that transfers most cleanly, because it barely changes at all. You still decide what the eye reads first, second, and third, and you still use size, contrast, depth, and delay to enforce that order. The difference in a product is that you're competing with the user's own scan pattern rather than controlling it outright. The hierarchy lessons from real styleframes go deeper on how motion directors handle that, and the reasoning survives the trip into interface work more or less intact.
Where Does Motion Actually Earn Its Place?
Four places, in my experience, and a long list of places where it doesn't.
Onboarding. A short animated sequence explains a spatial concept faster than three screens of copy. This is the one area where slightly longer, more illustrative motion is justified, because the user sees it once and hasn't formed expectations yet.
Empty states. An empty list is a dead end. A small looping animation plus a clear next action turns it into a prompt. Keep the loop under three seconds and make sure it doesn't pull attention away from the button. When the empty state leans on a headline rather than an illustration, animating the type itself is often the lighter option.
Data visualisation. Staggered chart reveals genuinely help people parse what changed, as long as the whole reveal finishes inside about 400ms. My dashboard mistake was building a reveal that treated the chart as a performance rather than a readout.
Micro-interactions. Toggles, checkmarks, pull-to-refresh, button presses. These carry the most value per millisecond of any motion you'll build, because they confirm that the system heard you. They're also the cheapest to implement well.
And the places it doesn't earn its place? Anything the user does repeatedly under time pressure. Search results, form submission, table sorting. Adding motion to those is adding latency with extra steps. For the wider question of when web motion helps versus when it gets in the way, the motion design for the web guide has the longer argument with examples.
Which Tools Should You Start With?
Start with the one you already have open. Figma's Smart Animate handles a genuinely large share of interface motion, and the prototype doubles as the spec a developer can read without a handoff meeting. In my experience roughly seven out of ten motion requests never need to leave it. If you need something more polished than a prototype but lighter than a full animation suite, Jitter sits in that gap and takes about an afternoon to learn.
When a request does escalate, the fork is simple. Does the animation need to react to live state? Then you want a real motion tool with a runtime, which in 2026 mostly means Rive; the Rive and Cavalry comparison covers where each one breaks down, and the broader motion tools for UI designers breakdown maps the rest of the field including After Effects and Lottie.
Does it live in the browser and involve elements you already control in code? Then it's a CSS or JavaScript question rather than a tooling one, and the honest answer is that CSS covers most of it. The CSS versus GSAP breakdown lays out where the line sits, but the short version is that you reach for a library when you need choreographed timelines or scroll pinning, not when you need a fade.
One habit worth adopting early, whatever tool you land on: write the reduced-motion behaviour at the same time you write the animation, not after. WCAG 2.2 treats disabling interaction-triggered motion as a requirement rather than a courtesy, and retrofitting it across a shipped product is miserable work.
Where to Start This Week
Pick one interaction in your product that currently changes instantly and shouldn't. A toggle, a list item entering, a modal appearing from nowhere. Build it in Figma Smart Animate at 200ms with an ease-out curve, show it to someone who hasn't seen the before version, and ask them whether the app feels faster or slower. That single test teaches more about product motion than a month of tutorials, because it forces you to defend the milliseconds. Everything else in this guide is refinement on top of that instinct: does this motion tell the user something they didn't already know, and does it get out of the way fast enough to be worth the wait?