Largest Contentful Paint
Good: < 2.5s
Measures how long it takes for the main content to appear on screen
How to optimize donnie.cl
254 KiB of unused JavaScript is slowing LCP by 150ms and wasting bandwidth on unnecessary code execution.
Configure Next.js bundle analyzer to identify unused Clerk.js features and import only required modules. Enable tree shaking in next.config.js. Use dynamic imports for Clerk components that aren't immediately needed on page load.
A score of 80 falls in the "Needs Improvement" 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.
Largest Contentful Paint
Good: < 2.5s
Measures how long it takes for the main content to appear on screen
Interaction to Next Paint
Good: < 200ms
Measures how quickly the page responds to user interactions
Cumulative Layout Shift
Good: < 0.1
Measures visual stability - how much content shifts during page load
This Next.js site has moderate performance issues with a score of 80/100, but suffers from slow interactivity taking 6.7 seconds to become fully responsive. The biggest problem is render-blocking CSS files that delay initial page rendering by 580ms, significantly impacting user experience. The site is also loading 254 KiB of unused JavaScript from Clerk authentication services and has inefficient image delivery from OpenStreetMap tiles that could save 37 KiB with modern formats like WebP. Addressing the render-blocking resources and reducing unused JavaScript could dramatically improve both loading speed and interactivity metrics.
Why It Matters:
Render blocking CSS files are delaying First Contentful Paint by 600ms and preventing content from appearing quickly.
How to Fix:
In Next.js, move critical CSS inline using styled-jsx or CSS-in-JS. Use next/dynamic with ssr: false for non-critical components. Implement code splitting to defer non-critical CSS chunks until after initial paint.
Why It Matters:
Map tile images are using outdated PNG format, wasting 37 KiB in unnecessary bytes and slowing perceived performance.
How to Fix:
Implement a custom tile server that serves WebP/AVIF formats for modern browsers. Add a service worker to cache map tiles efficiently. Consider lazy loading the map component below the fold using next/dynamic with appropriate loading states.
Get AI-powered performance insights with actionable fixes in 30 seconds
More Next.js Speed Tests
175 KiB of duplicated JavaScript from Nike Design System components is loaded multiple times across bundles.
The LCP image is not discoverable in the initial HTML, causing a 4-second resource load delay.
460 KiB of unused JavaScript is blocking the main thread for 7.3 seconds and delaying LCP by 2.4 seconds.
Multiple redirects add 1.53 seconds delay before the page even starts loading, directly impacting both FCP and LCP.
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.