Likelihood to Recommend Firebase should be your first choice if your platform is mobile first. Firebase's mobile platform support for client-side applications is second to none, and I cannot think of a comparable cross-platform toolkit. Firebase also integrates well with your server-side solution, meaning that you can plug Firebase into your existing app architecture with minimal effort.
Firebase lags behind on the desktop, however. Although macOS support is rapidly catching up, full Windows support is a glaring omission for most Firebase features. This means that if your platform targets Windows, you will need to implement the client functionality manually using Firebase's web APIs and wrappers, or look for another solution.
Read full review Flutter is well known for native app development, if you have android studio installed on your system, you can quickly start using it. This might not be the best choice for you if you do not wish to learn a new language, i.e. Dart and you do not know it already.
Read full review Pros Analytics wise, retention is extremely important to our app, therefore we take advantage of the cohort analysis to see the impact of our middle funnel (retargeting, push, email) efforts affect the percent of users that come back into the app. Firebase allows us to easily segment these this data and look at a running average based on certain dates. When it comes to any mobile app, a deep linking strategy is essential to any apps success. With Firebase's Dynamic Links, we are able to share dynamic links (recognize user device) that are able to redirect to in-app content. These deep links allow users to share other deep-linked content with friends, that also have link preview assets. Firebase allows users to effectively track events, funnels, and MAUs. With this simple event tracking feature, users can put organize these events into funnels of their main user flows (e.g., checkout flows, onboarding flows, etc.), and subsequently be able to understand where the drop-off is in the funnel and then prioritize areas of the funnel to fix. Also, MAU is important to be able to tell if you are bringing in new users and what's the active volume for each platform (Android, iOS). Read full review User interface design works great across all platforms, including native styling for iOS/macOS. Native compilation for mobile platforms and a decent rendering engine results in slick apps that can make the most of your device. Dart is a well thought out language and easy to pick up. Makes cross-platform development of good looking GUI apps a doddle. Read full review Cons Attribution and specifically multi-touch attribution could be more robust such as Branch or Appsflyer but understand this isn't Firebases bread and butter. More parameters. Firebase allows you to track tons of events (believe it's up to 50 or so) but the parameters of the events it only allows you to track 5 which is so messily and unbelievable. So you're able to get good high-level data but if you want to get granular with the events and actions are taken on your app to get real data insight you either have to go with a paid data analytics platform or bring on someone that's an expert in SQL to go through Big Query. City-specific data instead of just country-specific data would have been a huge plus as well. Read full review Occasionally updates to the Flutter SDK result in wide-sweeping changes that seem to not be thoroughly tested and considered. Flutter sometimes evolves too fast for its own good. While the 3rd-party Flutter package ecosystem is vast and rich, 1st-party support for basic things (audio/video playback, battery information, Bluetooth services, etc.) are lacking. You are occasionally forced to rely on an open-source package for use-cases that other platforms have native support for. Documentation, particularly around testing, is lacking. While there are some great docs, like the Dart Style Guide, many Flutter-focused support documents are lacking in quality and real-world usability. Flutter allows you to architect an app however you want. While this is a great feature, it also adds complexity and leads to the current state of Flutter's state management, where there are 50+ options on how to organize your app, with very little official guidance or recommendations from the Flutter team. For a beginner, this can create decision paralysis. Read full review Usability It is simple to use overall, the console's main menu is divided into Develop, Quality, Analytics and Grow - which have further subdivisions by their set of features and tools. Develop and Quality are relevant for product and tech. Analytics is relevant for product, analytics and Grow is relevant for marketing. This makes the overall use very easy.
Read full review Support Rating Our analytics folks handled the majority of the communication when it came to customer service, but as far as I was aware, the support we got was pretty good. When we had an issue, we were able to reach out and get support in a timely fashion. Firebase was easy to reach and reasonably available to assist when needed.
Read full review Alternatives Considered Before using Firebase, we exclusively used self hosted database services. Using Firebase has allowed us to reduce reliance on single points of failure and systems that are difficult to scale. Additionally, Firebase is much easier to set up and use than any sort of self hosted database. This simplicity has allowed us to try features that we might not have based on the amount of work they required in the past.
Read full review I have experience with react and
React Native . I would say that the idea behind all those frameworks are quite similar. However, I found the javascript-based frameworks a bit more accessible as you could utilise your javascript knowledge. Here, Flutter works with its own language. This has advantages and disadvantages sometimes. I found the community around javascript frameworks bigger and therefore sometimes more helpful. However, Flutter does a good job here as well. I think the main argument for Flutter is its usability for less experienced developers. If you do not have knowledge in javascript or other programming languages then I think it is much easier to start with Flutter than with another framework like react. I think the package that you get form scratch is better than in the other frameworks were you have to set up and learn a lot more before you can start.
Read full review Return on Investment Makes building real-time interfaces easy to do at scale with no backend involvement. Very low pricing for small companies and green-fields projects. Lack of support for more complicated queries needs to be managed by users and often forces strange architecture choices for data to enable it to be easily accessed. Read full review The rapid development capabilities of Flutter allow us to build apps we could not have previously considered commercially viable, opening new revenue streams. Free and open licensing made adoption very easy (ie. free/low cost!). In comparison to Qt, our time spent arguing with build tools and perfecting development environments has decreased substantially. Read full review ScreenShots