TickYouOff
Back

React App Performance Optimisation Checklist

Hard 14 items · 2 hours
testuser's avatar
testuser Published 1 month ago

This checklist guides frontend engineers and teams through practical steps to audit and improve React app performance. It covers Lighthouse baselining, bundle analysis, code-splitting, memoisation, image and asset delivery, service-worker caching, and monitoring Core Web Vitals.

Progress
0 / 14
  1. Run Lighthouse audit and record baseline metrics — Run in Chrome DevTools (Incognito), take 3 runs and note scores.
  2. Save Lighthouse report and note LCP, CLS, FCP, TBT/INP — Export JSON, capture the key metric values and timestamps.
  3. Identify top render-blocking resources from the audit — Look for blocking CSS/JS and long tasks that delay LCP or TBT.
  4. Analyze bundle with a bundle-analyzer and enable prod source maps — Use webpack-bundle-analyzer or source-map-explorer to inspect chunks.
  5. Identify largest modules and mark candidates for splitting — List modules >50 KB and trace their import origins.
  6. Implement code-splitting and lazy-load routes/components — Prioritise route-level and heavy component splitting to shrink main bundle.
  7. Use React.lazy, Suspense and dynamic imports for non-critical code — Provide lightweight fallbacks and load non-essential UI on demand.
  8. Memoize expensive computations and callbacks with useMemo/useCallback — Apply to costly derivations and stable handlers to avoid rework.
  9. Wrap pure components with React.memo and measure impact — Avoid over-memoising; benchmark before and after changes.
  10. Optimize images: resize, compress, convert to WebP, and lazy-load — Generate multiple sizes, compress, and prefer modern formats.
  11. Serve responsive images with srcset/picture and loading=lazy — Provide appropriate sizes per breakpoint to reduce bytes sent.
  12. Serve static assets from a CDN with long cache headers and versioning — Set Cache-Control, use immutable when possible and include file hashing.
  13. Set up service worker caching strategy (assets cache-first, API network-first) — Use Workbox; avoid excessively long caching of API responses.
  14. Monitor Core Web Vitals in production and set performance budgets — Use web-vitals RUM, throttled lab tests, and alert on regressions.
Sign in to save
📝 My Notes