Skip to content

Commit 9a7f962

Browse files
authored
faq: replace stale engine-size claim with real numbers (#535)
* faq: replace stale "<1 MB" engine overhead claim with real numbers Closes #19. The existing "less than one megabyte" figure in the code-push FAQ never matched reality — Shorebird ships its own Flutter engine build with the patching runtime included, and the actual overhead is in the 1–5 MB range depending on platform and whether you're measuring on-disk or download. Replace the claim with a table of concrete stripped sizes (Shorebird vs. stock Flutter, on-disk and download, iOS and Android) for the current Flutter 3.41.7 engine, plus a note that earlier engines were larger so the numbers get better over time. * faq: drop store-thinning caveat — doesn't apply to engine binary
1 parent 3c59509 commit 9a7f962

1 file changed

Lines changed: 22 additions & 4 deletions

File tree

src/content/docs/code-push/faq.mdx

Lines changed: 22 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -331,10 +331,28 @@ your system should you choose.
331331

332332
### How big of a dependency footprint does this add?
333333

334-
We expect the code push library to add less than one megabyte to Flutter apps.
335-
`flutter build apk --release` vs. `shorebird build apk --release` should give
336-
you a rough idea but keep in mind that many store distributions do also
337-
automatically thin your app for the device that it is being installed on.
334+
Shorebird ships its own build of the Flutter engine with the patching runtime
335+
included, which is where the overhead comes from. The table below compares
336+
Shorebird's engine against stock Flutter for the same engine version, measured
337+
on the stripped binaries that actually ship to users:
338+
339+
| Platform | Shorebird (on-disk / download) | Flutter (on-disk / download) | Shorebird overhead |
340+
| ------------------- | ------------------------------ | ---------------------------- | ------------------- |
341+
| iOS (arm64) | 13.25 MB / 5.68 MB | 8.58 MB / 3.67 MB | +4.67 MB / +2.01 MB |
342+
| Android (arm64-v8a) | 13.38 MB / 6.40 MB | 10.79 MB / 5.06 MB | +2.58 MB / +1.35 MB |
343+
344+
"On-disk" is the uncompressed size installed on the device. "Download" is the
345+
approximate size shipped over the store — APKs and IPAs use DEFLATE compression,
346+
which `gzip -9` closely mimics, so the gzipped size is a good proxy for what a
347+
user's device actually pulls down.
348+
349+
These numbers are for Flutter 3.41.7 (April 2026). Earlier Shorebird engines
350+
were meaningfully larger — iOS overhead alone came down by roughly 2 MB on-disk
351+
in the preceding month — and we continue to shrink the overhead; progress is
352+
tracked in
353+
[shorebird#3715](https://github.com/shorebirdtech/shorebird/issues/3715). You
354+
can reproduce a rough measurement on your own app by comparing the output of
355+
`flutter build apk --release` against `shorebird build apk --release`.
338356

339357
### When do updates happen?
340358

0 commit comments

Comments
 (0)