Remove Unused JavaScript Code

How to optimize nike.com

Next.js SiteScore: 29/100Analyzed February 2026Re-analyze this site

Remove Unused JavaScript Code

High Impact+25 points estimated

Why It Matters

460 KiB of unused JavaScript is blocking the main thread for 7.3 seconds and delaying LCP by 2.4 seconds.

How to Fix

Use webpack-bundle-analyzer to identify unused code in your bundles. Remove unnecessary polyfills for modern browsers by updating your Babel/SWC config to target ES2020+. Split code using Next.js dynamic imports for components not needed on initial load. Configure tree-shaking properly to eliminate dead code from Nike Design System components.

0Poor

What This Score Means

A score of 29 falls in the "Poor" range (50-89). While it is better than poor (0-49), you should aim for 90+ to provide an optimal user experience and maximize SEO benefits.

This site is slower than approximately 35% of similar sites. The main issues affecting performance are image optimization, JavaScript execution time, and layout stability.

Addressing these issues could improve your conversion rate by 15-20% and boost your search engine rankings.

Core Web Vitals Analysis

LCP

Largest Contentful Paint

14.6s
Poor

Good: < 2.5s

Measures how long it takes for the main content to appear on screen

INP

Interaction to Next Paint

610ms
Poor

Good: < 200ms

Measures how quickly the page responds to user interactions

CLS

Cumulative Layout Shift

0.00
Good

Good: < 0.1

Measures visual stability - how much content shifts during page load

AI Performance Analysis

This Nike e-commerce site built with Next.js and React has severe performance problems with a score of only 29/100. The biggest issue is excessive JavaScript blocking the main thread for over 7 seconds, causing a painfully slow Largest Contentful Paint of 14.6 seconds and making the site nearly unusable on mobile devices. The site is loading 460KB of unused JavaScript and suffering from a complex chain of network requests that could be significantly optimized. Reducing unused code, implementing proper caching (currently saving 1.2MB), and fixing the redirect from nike.com to nike.com/gb could improve the score by 40+ points and dramatically enhance the shopping experience.

Other Optimization Recommendations

Fix LCP Image Discovery

High Impact+20 points estimated

Why It Matters:

The LCP image is not discoverable in the initial HTML, causing a 4-second resource load delay.

How to Fix:

Move the hero image source from JavaScript-populated data attributes to the initial HTML src attribute. Add fetchpriority='high' to the LCP image element. Use Next.js Image component with priority={true} for above-the-fold images. Preload the hero image using <link rel='preload' as='image'> in the document head.

Eliminate Duplicate JavaScript Modules

High Impact+18 points estimated

Why It Matters:

175 KiB of duplicated JavaScript from Nike Design System components is loaded multiple times across bundles.

How to Fix:

Configure webpack's SplitChunksPlugin to extract common modules into shared chunks. Use Next.js's built-in bundle analysis to identify duplicate dependencies. Implement a single shared bundle for Nike Design System components that can be cached across pages. Review your micro-frontend architecture to ensure shared dependencies are properly externalized.

Keep Your Site Fast After Optimization

Once your site is optimized, maintain that speed. Use DeployHQ for zero-downtime, automated deployments—so performance fixes and updates go live safely every time, without breaking your site.

Explore DeployHQ →Trusted by engineering teams shipping high-performance sites

Want to Analyze YOUR Website?

Get AI-powered performance insights with actionable fixes in 30 seconds

More Next.js Speed Tests

Next.js Performance Resources

Frequently Asked Questions