Largest Contentful Paint
Good: < 2.5s
Measures how long it takes for the main content to appear on screen
How to optimize tamer.web.vercel.app
CSS files are blocking initial render and delaying LCP by 750ms, which is the largest single performance bottleneck.
Use Next.js built-in CSS optimization by moving critical styles to CSS-in-JS or inline them. Split large CSS bundles using dynamic imports for non-critical styles. Consider using `next/dynamic` with `ssr: false` for components that load heavy CSS.
A score of 73 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 73/100. The biggest problem is render-blocking CSS files that are delaying your Largest Contentful Paint to 4.9 seconds, with an estimated 740ms improvement possible by deferring or inlining these stylesheets. The site is also carrying 238KB of unused JavaScript code that's contributing to a very slow Time to Interactive of 9.5 seconds, making the page feel unresponsive to users. Addressing the render-blocking resources and removing unused JavaScript could improve your score by 15-20 points and dramatically enhance the user experience, particularly on mobile devices.
Why It Matters:
238 KiB of unused JavaScript is delaying LCP by 450ms and blocking main thread execution.
How to Fix:
Implement code splitting using Next.js dynamic imports for non-critical components. Analyze bundle with `@next/bundle-analyzer` to identify unused dependencies. Use tree shaking by ensuring imports are specific (import { component } from 'library' instead of import * from 'library').
Why It Matters:
Images are served at larger dimensions than displayed, wasting 39 KiB of bandwidth and slowing perceived load time.
How to Fix:
Update Next.js Image components with proper `sizes` prop based on actual display dimensions. Use responsive breakpoints in `sizes` like '(max-width: 768px) 300px, 579px'. Ensure `width` and `height` props match the largest display size to prevent oversized downloads.
Get AI-powered performance insights with actionable fixes in 30 seconds
More Next.js Speed Tests
Images are served at larger dimensions than displayed, wasting 39 KiB of bandwidth and slowing perceived load time.
238 KiB of unused JavaScript is delaying LCP by 450ms and blocking main thread execution.
The hero mascot image is 15KB larger than needed and could be impacting perceived load performance.
CSS files are blocking initial render for 750ms, significantly delaying both FCP and your 5.3s 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.