Flutter is the leading cross-platform mobile framework, and its interviews center on one big idea: everything is a widget. Master the widget tree, the stateless/stateful distinction, and state management, and most Flutter questions follow. Here are the Flutter interview questions that actually get asked. (See also our Kotlin and Android guides.)
Widgets & the tree
- What is a widget, and why is "everything a widget"?
- StatelessWidget vs StatefulWidget — the key difference.
- The widget, element, and render trees.
- What does the
buildmethod do, and when is it called? - BuildContext — what is it?
State management
- What is
setStateand its cost? - State management options — Provider, Riverpod, BLoC, GetX — when to use each.
- Ephemeral (local) vs app state.
- How do you avoid unnecessary rebuilds?
Dart & lifecycle
- Dart basics — null safety, futures, async/await, streams.
- The StatefulWidget lifecycle (initState, didUpdateWidget, dispose).
- Hot reload vs hot restart.
- Keys — when and why you need them.
How to prepare
Flutter rounds probe the widget model and state verbally. Practise explaining stateless vs stateful and state management out loud. Greenroom runs spoken technical interviews that follow up on your reasoning. Pair it with our Kotlin and Android guides.
Frequently asked questions
What are the most common Flutter interview questions?
Common Flutter questions cover widgets and why everything is a widget, StatelessWidget vs StatefulWidget, the widget/element/render trees, the build method and BuildContext, state management (setState, Provider, Riverpod, BLoC, GetX), ephemeral vs app state, avoiding unnecessary rebuilds, Dart fundamentals (null safety, futures, async/await, streams), the StatefulWidget lifecycle, hot reload vs hot restart, and keys.
What is the difference between StatelessWidget and StatefulWidget?
A StatelessWidget is immutable and has no internal state that changes over its lifetime — it rebuilds only when its inputs change, ideal for static UI like icons or text. A StatefulWidget maintains mutable state through an associated State object and can rebuild itself by calling setState when that state changes, used for interactive UI like forms, animations and counters.
What is state management in Flutter?
State management is how you store, update and share data that affects the UI across your app. Simple local state uses setState within a StatefulWidget, while app-wide or shared state uses solutions like Provider, Riverpod, BLoC or GetX, which separate state from widgets and rebuild only what's needed. Choosing the right approach and avoiding unnecessary rebuilds is a core Flutter skill interviewers probe.
How should I prepare for a Flutter interview?
Focus on the widget tree, StatelessWidget vs StatefulWidget, state management and Dart fundamentals, understanding why setState rebuilds a subtree and when to use a state-management solution. Practise explaining the widget model and state out loud with a voice-based mock interview that follows up, since Flutter rounds probe conceptual understanding over syntax.