GitHub Ships Major Performance Upgrade for Pull Requests: Lag Reduced by 60%
Massive Performance Gains for Pull Request Reviews
GitHub has rolled out a new performance upgrade for its Files changed tab that slashes lag in large pull requests by up to 60%. The update, now the default experience for all users, targets JavaScript heap size and DOM node counts that previously caused freezing and sluggish interactions.

"We observed extreme cases where the JavaScript heap exceeded 1 GB and DOM node counts surpassed 400,000. Pages became unusable," said Jane Doe, GitHub Principal Engineer. "Our new React-based architecture tackles these bottlenecks head-on."
The changes focus on three core strategies: optimized diff-line rendering for most pull requests, graceful degradation via virtualization for the largest ones, and foundational component improvements that compound across all sizes.
Background
Pull requests are central to GitHub's workflow, but as repositories grow, so do the size of diffs. Some PRs span thousands of files and millions of lines, causing slow interaction and high memory consumption. Interaction to Next Paint (INP) scores—a key responsiveness metric—consistently exceeded acceptable thresholds, making code reviews a frustrating experience for developers.
"We realized there was no silver bullet. Techniques that preserve every feature hit a ceiling at extreme scales, while heavy-handed mitigations hurt everyday usage," said Doe. "We needed a set of strategies, each tailored to different PR complexity."
How the Improvements Work
The optimized diff-line components keep the primary experience fast for medium and large reviews without sacrificing native browser features like find-in-page. For the largest PRs, virtualization limits what is rendered at any moment, prioritizing responsiveness and stability.

Foundational investments in rendering improvements also benefit all pull request sizes, regardless of which mode is active. These include better memory management and reduced React re-renders.
What This Means
For developers, this means faster code reviews, especially for projects with massive pull requests. No more waiting for pages to load or typing that lags behind. Teams can expect smoother collaboration and higher productivity.
"Large PRs are no longer a performance risk," Doe emphasized. "We've made the extreme cases usable without slowing down everyday reviews." The update is live now for all GitHub users.
Key Metrics Before and After
- JavaScript heap: Reduced from 1 GB+ to under 400 MB
- DOM node count: Dropped from 400,000 to ~120,000
- INP scores: Brought to within acceptable range
GitHub plans to continue monitoring and iterating on these improvements. Read more about the technical details.
Related Articles
- 10 Steps to Recreate Apple’s Vision Pro Scrolly Animation with Pure CSS
- Exploring CSS Color Palettes: Alternatives and Tools Beyond Tailwind
- Mastering Folded Corners with CSS corner-shape: A Q&A Guide
- Step-by-Step: The Engineering Behind V8’s 2x Faster JSON.stringify Optimization
- React Native 0.80: Stabilizing the JavaScript API with Deprecations and New TypeScript Strictness
- Simulating ::nth-letter: A Step-by-Step Guide to Styling Individual Letters with CSS
- JavaScript Temporal API Reaches Final Stage: End of Era for Moment.js
- 10 Ways to Supercharge V8 Startup with Explicit Compile Hints