Largest Contentful Paint
Good: < 2.5s
Measures how long it takes for the main content to appear on screen
How to optimize dev.mallow.fi
CSS file is blocking initial page render and delaying First Contentful Paint by 100ms.
Inline critical CSS directly in your Next.js page head using styled-jsx or extract critical styles with a tool like critical. Move non-critical CSS (8.5KB from b7d48e44ec6ca2b5.css) to load asynchronously using next/head with media='print' then switching to 'all' onload.
A score of 93 falls in the "Good" 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 performs well overall with a score of 93/100, but has some optimization opportunities that could enhance user experience. The biggest issue is resource load delay causing your Largest Contentful Paint to reach 2.7 seconds, primarily due to a render-blocking CSS file that's delaying initial page rendering by 120ms. You can improve performance by deferring or inlining critical CSS, removing 26KB of unused JavaScript code, and updating your build process to avoid unnecessary legacy JavaScript polyfills that are adding 13KB of extra code for modern browsers. These optimizations could reduce load times and bring your Core Web Vitals metrics into the "good" range.
Why It Matters:
26 KiB of unused JavaScript is delaying LCP by 150ms and blocking page interactivity.
How to Fix:
Analyze your Next.js bundle using @next/bundle-analyzer to identify unused code in 51e743d7cf800b16.js. Use dynamic imports for components not needed on initial load. Enable tree shaking by ensuring your imports are specific rather than importing entire libraries.
Why It Matters:
Legacy JavaScript polyfills add unnecessary 13KB and delay LCP by 150ms for modern browsers.
How to Fix:
Update your Next.js config target to 'es2017' or higher in next.config.js to remove polyfills for Array.at, Object.fromEntries, and other modern features. Use browserslist to specify modern browser support and reduce bundle size by excluding outdated browser polyfills.
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.
Get AI-powered performance insights with actionable fixes in 30 seconds
More Next.js Speed Tests
Legacy JavaScript polyfills add unnecessary 13KB and delay LCP by 150ms for modern browsers.
26 KiB of unused JavaScript is delaying LCP by 150ms and blocking page interactivity.
1.3 seconds of JavaScript execution time is blocking the main thread and preventing user interactions.
Images are oversized for their display dimensions, wasting 545 KiB and slowing page load.