Largest Contentful Paint
Good: < 2.5s
Measures how long it takes for the main content to appear on screen
How to optimize capriprivateboattours.com
CSS files are blocking First Contentful Paint by 400ms, delaying initial page rendering.
Inline critical CSS for above-the-fold content in Next.js _document.js. Move non-critical CSS to load asynchronously using next/dynamic with ssr:false. Split large CSS chunks using Next.js CSS modules. Defer PostHog and tracking scripts until after page interactive.
A score of 56 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/React site has poor performance with a score of 56/100, primarily due to an extremely slow Largest Contentful Paint of 7.0 seconds. The biggest issue is a redirect that's adding 760ms of delay before the page even starts loading, combined with a very slow server response time (870ms) and an unoptimized hero background image that could be compressed to save 26KB. The site is also loading 285KB of unused JavaScript from Google Analytics and other scripts that aren't needed immediately. Fixing the redirect, optimizing server response time, compressing the hero image, and deferring non-critical JavaScript could potentially improve the performance score by 25+ points and dramatically reduce load times for users.
Why It Matters:
LCP is 7.0 seconds due to poor TTFB (870ms), resource delays (558ms), and render delays (1043ms) affecting the hero image.
How to Fix:
Eliminate the redirect from root to /it path in Next.js routing. Optimize server response time by implementing proper caching headers. Add fetchpriority='high' and preload the hero image with <link rel='preload' as='image'>. Configure proper crossorigin attribute for Supabase preconnect.
Why It Matters:
Images are poorly compressed and oversized, wasting 47KB and delaying LCP by 600ms.
How to Fix:
Increase compression on the hero image to save 26KB. Implement Next.js responsive images with proper sizes prop for the tailored-for-you image. Use Next.js Image component optimization with quality=60 for non-critical images. Enable Supabase image transformations for automatic resizing.
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
1.3MB of unused JavaScript blocks the main thread for 1.7 seconds, preventing user interactions.
Unsized images cause 0.295 CLS score, creating jarring content jumps that harm user experience.
CSS files are blocking initial page render for 750ms, significantly delaying LCP and FCP.
Legacy JavaScript polyfills and forced reflows block the main thread for 435ms, degrading user interaction responsiveness.