Performance Checklist
Performance Checklist
Before launching or shipping a major update to your React Native application, running through a structured performance checklist helps catch issues before they reach real users.
Startup Performance
- Hermes is enabled and verified active
- Non-critical initialization is deferred using InteractionManager
- Splash screen is hidden only once the app is genuinely interactive
List and Scrolling Performance
- FlatList used instead of ScrollView for large datasets
- Stable keyExtractor provided for all lists
- List item components wrapped in React.memo where appropriate
- getItemLayout provided for fixed-height list items
Image Performance
- Images sized appropriately for their display dimensions
- FastImage or equivalent caching solution used for remote images
- User-uploaded images compressed before upload
Re-render Optimization
- React DevTools Profiler used to check for excessive re-renders
- useMemo and useCallback applied to genuinely expensive operations
- Context providers split appropriately to avoid broad re-renders
Memory and Resource Cleanup
- All event listeners and subscriptions cleaned up in useEffect
- Timers and intervals properly cleared on unmount
- App tested for memory leaks during extended usage sessions
Bundle and Build Optimization
- Bundle size analyzed and unnecessary dependencies removed
- Android App Bundle (AAB) used instead of universal APK
Production Monitoring
- Performance monitoring tool integrated (Firebase Performance or Sentry)
- Crash and performance alerts configured for the team
Device Testing
- App tested on both Android and iOS across multiple device tiers
- Performance verified on real, lower-end hardware, not just simulators
Conclusion
Running through this comprehensive performance checklist before each major release helps ensure your React Native application delivers a consistently smooth and reliable experience across the full range of devices your users rely on.

