Largest Contentful Paint
Good: < 2.5s
Measures how long it takes for the main content to appear on screen
How to optimize turczynski.com
JavaScript dependency chain takes 1.3 seconds to complete, directly impacting both FCP (3.2s) and LCP (3.5s).
Preload the critical JavaScript files using <link rel='preload' as='script'> for index-B4LjLqjp.js and index-DqPXE7gF.js. Inline critical JavaScript directly in HTML to eliminate the network requests. Consider bundling these two dependent scripts into a single file to reduce the chain length.
A score of 84 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 website has good performance with a score of 84/100, but there's significant room for improvement in loading speed. The biggest issue is that your First Contentful Paint takes 3.2 seconds and Largest Contentful Paint takes 3.5 seconds, both of which are too slow for optimal user experience. The main culprits are unused JavaScript code (wasting 104 KB, particularly from Google Analytics and React components) and an unoptimized background image that could save 24 KB with better compression. Removing unused JavaScript and optimizing your images could easily push your performance score above 90 and make your site feel much faster to visitors.
Why It Matters:
104 KiB of unused JavaScript is delaying LCP by 150ms and blocking the main thread unnecessarily.
How to Fix:
Remove or defer the Google Analytics script (66KB unused) by loading it after page load using gtag('config') with async. Split the React bundle and lazy load non-critical components. Use webpack-bundle-analyzer to identify and tree-shake unused code from the 40KB unused React bundle.
Why It Matters:
The backdrop video poster image can save 24KB (55% reduction) and improve LCP by 150ms.
How to Fix:
Increase compression on the backdrop-home.webp file using tools like Squoosh or ImageOptim. Reduce quality to 75-80% which typically saves 20-30% file size with minimal visual impact. Consider using responsive images with srcset for different screen sizes to serve smaller images on mobile devices.
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 Generic Speed Tests
The backdrop video poster image can save 24KB (55% reduction) and improve LCP by 150ms.
104 KiB of unused JavaScript is delaying LCP by 150ms and blocking the main thread unnecessarily.
Render-blocking CSS is delaying First Contentful Paint by 160ms and preventing faster page rendering.
The navigation logo is 81KB but displays at only 56x56 pixels, wasting bandwidth and delaying LCP by 350ms.