The summary.
ASK WHETHER IOS MATTERS TO YOUR AUDIENCE FIRST
If it is effectively Android-only, the principal argument for cross-platform disappears and size and platform conventions matter more.
MEASURE SIZE AND STARTUP ON A MODEST DEVICE BEFORE COMMITTING
Size is a genuine barrier to installation here, and the framework carries a fixed cost.
WITH FIREBASE, CLIENTS GENERATE BILLING DIRECTLY
Listeners not detached consume reads continuously, and a defect multiplies across every installation. Paginate everything, cache locally, and tie listeners to widget lifecycle.
Use separate Firebase projects per environment.
FLUTTER WEB SUITS INTERNAL TOOLS, NOT CONTENT SITES
Content is drawn rather than marked up, which affects indexing, accessibility and initial load.
CHECK PACKAGE SUPPORT PER TARGET
It varies considerably, and an unmaintained package blocks upgrades.
ALWAYS VERIFY A RELEASE BUILD
Release builds compile and perform differently from debug builds.
USE ISOLATES FOR HEAVY COMPUTATION
Otherwise it blocks the thread, including rendering.