Largest Contentful Paint
Good: < 2.5s
Measures how long it takes for the main content to appear on screen
How to optimize capriprivateboattours.com
Poor caching wastes 1.7MB on repeat visits and the hero video significantly impacts LCP.
Set cache headers for the hero-mobile.mp4 to 1 year (Cache-Control: max-age=31536000). Consider replacing the 1.5MB video with an optimized WebP image sequence or reduce video quality. Configure Supabase storage with longer cache lifetimes for static assets.
A score of 62 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 poor performance with a score of 62/100, primarily due to excessive JavaScript blocking the main thread for 2.4 seconds and causing a very slow Time to Interactive of 10 seconds. The biggest issue is unused JavaScript from Google Analytics and Tag Manager scripts that are wasting 265 KiB and delaying page interactivity. Additionally, the 1.5MB hero video and poorly cached images are contributing to a sluggish 6.2-second Largest Contentful Paint. Removing unused JavaScript, optimizing the video file size, and implementing proper caching could improve the performance score by 30+ points and dramatically enhance user experience.
Why It Matters:
Unused JavaScript wastes 271KB and blocks the main thread for 1.5 seconds, delaying interactivity.
How to Fix:
Audit Google Analytics and Tag Manager implementations - defer loading until after page load using Next.js Script component with strategy='afterInteractive'. Remove unused polyfills from your Next.js build by updating browserslist to target modern browsers only. Consider switching to lighter analytics like Plausible.
Why It Matters:
JavaScript is causing forced reflows totaling 38ms, blocking the main thread and creating layout instability.
How to Fix:
Identify the problematic code in your Next.js chunks that's reading geometric properties after DOM changes. Batch DOM reads and writes together, use CSS transforms instead of changing layout properties. Add explicit dimensions to your hero image to prevent layout shift during loading.
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
350KB of unused JavaScript and 32KB of unused CSS are unnecessarily blocking the main thread and increasing load times.
CSS and font files are blocking initial render, delaying LCP and FCP by 1.45 seconds.
Three large PNG images (6.3MB total) are causing massive payload size and delaying LCP by 900ms.
Legacy polyfills add 40KB of unnecessary code that modern browsers don't need, slowing LCP by 300ms.