Answers to the technical and practical questions we get most often about Flutter: from "what is it?" to "when do you choose native instead?"
Flutter is an open-source UI framework from Google that lets you build apps for iOS, Android, web and desktop from a single codebase. The programming language is Dart. Flutter compiles to native ARM code, resulting in high performance and a native user experience on both platforms.
Google introduced Flutter in 2018 and the framework has since built a large community. At the core of Flutter is the Impeller rendering engine, which draws UI elements directly without going through native OS components. This ensures consistent rendering on every device and makes complex animations possible.
We switched from Xamarin and Cordova to Flutter in 2018 because Flutter offers the best balance between development speed, performance and maintainability. With a single codebase we reach both iOS and Android without compromising on quality.
That translates directly into lower costs: you pay for one codebase instead of two, and updates only need to be written once. Because our team is fully specialised in Flutter, we work fast and make fewer mistakes than teams mixing multiple frameworks. The choice for Flutter is deliberate and consistent, not dependent on availability.
Dart is the programming language Flutter uses, developed by Google. It is a strongly typed language, comparable to TypeScript or Java. Dart compiles to native ARM code for mobile and to JavaScript for web.
Dart is less widely known than Swift or Kotlin, but has a growing community. For developers with Java, Kotlin or TypeScript experience, Dart is quick to pick up.
In most cases, yes. Flutter compiles to native ARM code and has access to all native device features via platform channels. For the vast majority of apps, the difference in performance and user experience compared to fully native development is not noticeable. Animations and transitions run smoothly at 60 or 120 fps.
The exception is apps that rely heavily on deep Apple Watch features or Android Auto. In those cases we advise native development and present the trade-offs clearly.
Flutter apps are slightly larger in file size than comparable native apps. Apps that rely heavily on platform-specific features such as CarPlay, Android Auto or widget extensions require extra work via platform channels, which increases development time.
Dart is less widely known, so the external talent pool is smaller. And although the Flutter community is growing strongly, some third-party packages are less mature than their JavaScript or native equivalents. In practice, for most projects these downsides do not outweigh the benefits.
Both frameworks build cross-platform apps from a single codebase, but the approach differs fundamentally. Flutter renders its own UI elements via the Impeller engine, completely independent of native OS components. React Native uses native UI components via a JavaScript bridge, which can cause slight behavioural differences on iOS and Android. Flutter therefore offers more consistent performance and a more uniform appearance across both platforms.
React Native has a larger community and more available developers in the market. We consistently choose Flutter for its better rendering performance, faster development cycle, less error-prone architecture and lower long-term maintenance burden.
Yes, Flutter supports web, iOS, Android and desktop from one codebase. Flutter Web has different performance characteristics from a regular web application: it excels for interactive tools and dashboards, but is less suitable for content-heavy websites or SEO-sensitive pages.
For web applications we more often build with TypeScript and a modern web stack. During an intake meeting we decide together which approach best fits your goals.
Yes. We build offline-first apps where data is stored locally on the device and synchronised with the server once a connection is available again. This is essential for apps in environments without a reliable network, such as:
We use a local SQLite database (via Drift) for reliable offline storage. Offline-first requires more architectural work, which affects the price and timeline.
Yes. We also build the backend and APIs ourselves, so you have one point of contact for the entire technical picture. We have extensive experience integrating with AFAS, Exact, SAP, Salesforce and custom APIs.
During the intake meeting we assess which integrations are needed and whether the existing systems have well-documented APIs.
A simple Flutter app starts from €10,000. A fully developed app with a backend, multiple user roles and external integrations can easily reach €30,000 to €60,000+. Because Flutter uses one codebase for both iOS and Android, you save significantly compared to two separate native apps.
The exact price depends on the number of screens, the complexity of the backend, the amount of custom design and any integrations. After an intake meeting we produce a transparent quote per phase, so you know exactly what you are getting and what it costs.
Yes, in most cases. With Flutter you pay for one codebase and one team instead of two separate native tracks. Updates only need to be written once, which reduces the long-term maintenance burden.
The exception is apps that rely heavily on platform-specific features. In that case native may still be the right choice, and we present the trade-offs honestly.
We build a simple app in 6 to 10 weeks. A complex platform with multiple user roles and integrations takes 3 to 6 months. The preparation phase, from intake meeting to quote, typically takes 2 to 4 weeks.
We work in two-week sprints, so after each sprint you have a working version to test. After delivery, publication in the App Store and Google Play takes another 1 to 3 working days, depending on the Apple review.
Let's grab a coffee. Tell us about your idea and we'll give you our honest take on what's possible.
Schedule a call →