Largest Contentful Paint
Good: < 2.5s
Measures how long it takes for the main content to appear on screen
How to optimize capriprivateboattours.com
The hero image has poor caching (1 hour) and is causing LCP delays of 1.2 seconds.
Increase Supabase storage cache headers to 1 year for static images. Optimize the hero image compression to reduce 27 KiB waste. Use Next.js Image component with priority={true} and proper sizing to eliminate render blocking.
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, indicating significant room for improvement. The biggest problem is excessive unused JavaScript from Google tracking scripts (Google Analytics and Tag Manager), which is wasting 260 KiB and delaying your Largest Contentful Paint by 6.4 seconds - well above the recommended 2.5 seconds. Your site is also suffering from render-blocking CSS files and inefficient caching policies that could save an additional 133 KiB on repeat visits. Removing or deferring unused JavaScript, optimizing your tracking implementation, and improving cache settings could boost your performance score by 25+ points and dramatically improve user experience.
Why It Matters:
266 KiB of unused JavaScript is delaying LCP by 450ms and blocking the main thread.
How to Fix:
Use Next.js dynamic imports to code-split components and defer Google Analytics/GTM loading. Audit and remove unused PostHog features. Configure your build to only include essential tracking scripts on page load, loading others after user interaction.
Why It Matters:
CSS files are blocking First Contentful Paint by 500ms, delaying initial page rendering.
How to Fix:
Inline critical CSS for above-the-fold content in your Next.js pages. Use next/dynamic with { ssr: false } for non-critical components. Split CSS chunks and load non-essential styles asynchronously using media='print' onload trick.
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
3.6 seconds of main thread blocking work is preventing user interactions and degrading performance.
CSS files are blocking initial render, delaying LCP and FCP by 150ms.
111 KiB of unused JavaScript is delaying LCP by 600ms and FCP by 300ms.
JavaScript is querying DOM geometry after style changes, causing 68ms of blocking time.