Metrics Comparison
Empty App (Qwik City + Qwik) (Blank project with routing included)
Metric | Qwik 1.41.1 Empty App | Qwik 2.0.0-beta.5-dev Empty App |
---|---|---|
App size | 5.37 KB | 4.54 KB |
Page transfer (HTML) | 34.3 kB | 49.6 kB |
Total resources transferred | 80.1 kB | 102 kB |
Number of requests | 7 | 13 |
Time to finish |
27 ms | 33 ms |
Time to DOMContentLoaded |
16 ms | 19 ms |
Qwik 1.41.1
Qwik 2.0.0-beta.5-dev
Compared to the 1.41.1 baseline, the 2.0.0-beta.5-dev empty app:
- Smaller core bundle: 4.54 KB vs 5.37 KB (–15%).
- Larger page payload: 49.6 kB HTML vs 34.3 kB (+45%).
- More total resources: 102 kB vs 80.1 kB (+27%) served over 13 requests instead of 7.
- Slightly slower load: finish event at 33 ms vs 27 ms, and DOMContentLoaded at 19 ms vs 16 ms.
In short, Qwik 2’s core runtime is leaner, but its default routing setup currently incurs a heavier transfer and more round-trips, resulting in marginally higher load times.
What the Qwik team promised for v2.0:
- Move all non-human readable data (virtual nodes, state) to the end of the HTML stream for faster initial rendering.
- Clean HTML output: no extra comments or technical IDs cluttering the markup.
- More efficient virtual node encoding, reducing overhead.
- An even lazier resumption algorithm, so only essential virtual nodes are materialized, minimizing runtime and memory cost.
- Further reduction of unnecessary HTML via server-side tree-shaking.
- No breaking changes, fully backward compatible.
- Lower total JavaScript size, faster startup, and less client-side execution.
Conclusion
Qwik 2.0 beta delivers on a cleaner core bundle and a more streamlined HTML output, fulfilling much of what the team promised in terms of resumability and technical cleanliness. However, in practical testing, the empty app now ships a noticeably larger HTML payload and more HTTP requests compared to v1, likely as a side effect of the new state and vnode serialization. Despite these increases, user-perceived speed and instant-on performance remain excellent, validating the main goals of resumability and architectural improvements. Further optimization of payload size and request count can be expected as v2 matures.
Top comments (0)