Skip to main content
Rive5 min readNovember 2026

Why is my Rive animation static or not playing?

Short answer

A Rive animation that shows but does not move usually means the wrong state machine or animation is selected, the entry state has no animation, nothing has set the input that starts it, or the widget has no size. In Flutter on iOS, also test with --no-enable-impeller, and make sure your runtime version supports the features your editor file uses.

Core Takeaway

  • Check the artboard and state machine names your code selects
  • Open the file in the Rive editor and confirm the entry state animates
  • An idle state waiting for an input looks "static" until you set it
  • Give the widget or canvas a real width and height
  • Upgrade the runtime if the file uses newer editor features

"Rive animation on Flutter not working and is static" is one of the top Rive questions on Stack Overflow. Work through these checks in order.

1. The wrong thing is playing

Your code may load the default artboard or a plain timeline instead of the state machine. Select the state machine by name (StateMachineSelector.byName in Flutter, the stateMachines option on the web) and make sure the name matches exactly, including case.

2. The state machine is waiting

Open the state machine in the Rive editor. If the entry state goes to an idle state that holds still until an input or view model property changes, the animation is working. It is just waiting for your code.

3. The widget has no size

In Flutter, a RiveWidget inside an unbounded parent (such as a Column without constraints) can end up with zero size. Wrap it in a SizedBox or Expanded. On the web, the canvas needs a CSS width and height.

4. Renderer issues

Rive's README notes that Impeller is the default renderer on iOS and can show visual differences. Run flutter run --no-enable-impeller; if that fixes it, it may be an Impeller bug worth reporting. You can also switch between Factory.rive and Factory.flutter.

5. Version mismatch

Files made with new editor features may not play on an old runtime. Upgrade the rive package (0.14.11 on pub.dev in November 2026), run flutter clean and flutter pub get.

If your animation needs to be driven by app state in many places, check our guide to Rive state machines in Flutter.

Frequently asked questions

Why does my Rive file play in the editor but not in my app?

Usually a different state machine is selected, or the runtime is older than the editor features used.

Why is my Rive animation blank?

Check that the file loaded (watch for load errors), the artboard name is correct and the widget has a size.

Does autoplay matter?

On the web, autoplay must be true or you must call play(). In Flutter, the controller plays the selected state machine.

What does flutter clean fix?

It clears cached native libraries, which helps after upgrading rive or rive_native.

Related Guides & Examples

See interactive files that play by default

Press and toggle real ExodeUI scenes in your browser.

Open the examples
ExodeUI

EXODEUI DESKTOP

A little space for good ideas.

Choose your platform to get the official ExodeUI installer.

Looking for Intel Mac or other builds? Explore the web studio or check all download options.

Prefer the browser? Try for free in your browser →