Largest Contentful Paint
Good: < 2.5s
Measures how long it takes for the main content to appear on screen
How to optimize app.aragon.org
1.44MB of unused JavaScript is blocking LCP by 900ms and consuming unnecessary network bandwidth.
Use Next.js bundle analyzer to identify unused code in chunks be7d3a00d922ee47.js (99% unused) and dfb9635c8ffa7186.js (72% unused). Implement dynamic imports for heavy components and libraries. Split vendor bundles and lazy load non-critical features using React.lazy() and Suspense.
A score of 48 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.
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 React application has poor performance with a score of 48/100. The biggest problem is excessive JavaScript that takes 3.5 seconds to execute and blocks the page from becoming interactive for a staggering 17 seconds, with over 1.4MB of unused JavaScript code being downloaded unnecessarily. The site's Largest Contentful Paint occurs at 5.8 seconds, which is far too slow for good user experience. Reducing the JavaScript bundle size by removing unused code and splitting large chunks could dramatically improve loading times and boost the performance score by 30+ points.
Why It Matters:
3.5 seconds of JavaScript execution time is blocking the main thread and causing 2.5 seconds of Total Blocking Time.
How to Fix:
Break up large JavaScript tasks in chunks 5739d2dadd71ce9b.js and be7d3a00d922ee47.js using time-slicing techniques. Move heavy computations to Web Workers. Optimize React components by removing unnecessary re-renders with React.memo and useMemo. Consider server-side rendering optimization in Next.js.
Why It Matters:
The LCP element (background texture SVG) lacks priority hints, delaying critical resource loading.
How to Fix:
Add fetchpriority='high' attribute to the background texture image in your hero section component. Use Next.js Image component with priority={true} prop instead of standard img tag. Ensure the SVG is preloaded in the document head for faster discovery.
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
The corridor shield image is 48KB larger than needed for its display dimensions.
CSS files are blocking initial page render and delaying LCP by 600ms.
The LCP element (background texture SVG) lacks priority hints, delaying critical resource loading.
3.5 seconds of JavaScript execution time is blocking the main thread and causing 2.5 seconds of Total Blocking Time.