Choose Flutter

Choose Flutter when shared app UI and one Dart codebase are worth the platform release work.

Use Flutter When

Product shapeWhy Flutter fits
Android plus iOS app with custom UIShared widgets and business logic reduce duplicate app work
Mobile-first app with later desktop companionDesktop targets can reuse app logic and much of the UI
Branded kiosk/tool/dashboard appConsistent rendering is a benefit, not a drawback
Offline/local-first app with moderate platform APIsShared local models and UI can be productive

Avoid Flutter When

Product shapeBetter default
Android-only app needing deep Android APIsAndroid Kotlin Compose
iOS-first app needing platform-perfect feelSwiftUI/UIKit
Content/SEO-heavy web appAstro, Next.js, SvelteKit, or another web stack
Lightweight internal form/admin workflowWeb app or PWA
Tiny desktop utility with OS-native menus/tray/filesNative desktop, Tauri, or platform-specific stack

Decision Prompt

Ask this before scaffolding:

Which exact targets are first-class for v1?
Which platform APIs are mandatory?
Is consistent branded UI more important than native platform feel?
Can the project own Dart/Flutter dependency and release work?

If the answer to the first question is “Android only”, start with Android Kotlin Compose unless cross-platform is a near-term product requirement.