Largest Contentful Paint
Good: < 2.5s
Measures how long it takes for the main content to appear on screen
How to optimize joinswitch.com
Render-blocking CSS is delaying First Contentful Paint by 300ms and contains 91% unused rules.
Extract critical CSS for above-the-fold content and inline it in the HTML head. Use tools like Critical or PurgeCSS to remove unused CSS rules. Load non-critical CSS asynchronously using media='print' onload technique or defer with JavaScript.
A score of 51 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 poor performance with a concerning score of 51/100, indicating significant issues that are hurting user experience. The biggest problem is excessive unused JavaScript (532 KiB of wasted code) which is severely impacting loading times, combined with a painfully slow Time to Interactive of 15.2 seconds and Largest Contentful Paint of 7.3 seconds. The site is also suffering from render-blocking CSS, poor image optimization, and inefficient caching strategies that are collectively creating a sluggish browsing experience. Removing unused JavaScript, optimizing the main hero image, and implementing proper caching could potentially improve the performance score by 30+ points and dramatically reduce loading times.
Why It Matters:
532 KiB of unused JavaScript is delaying LCP by 1.2 seconds and blocking user interactions.
How to Fix:
Use webpack-bundle-analyzer to identify unused code in your bundles. Enable tree shaking in your build process to remove dead code. Split large JavaScript files and load only essential code for above-the-fold content. Consider lazy loading non-critical components.
Why It Matters:
The hero image is not discoverable in initial HTML, creating a 3.2 second resource load delay.
How to Fix:
Move the hero image source directly into the HTML instead of loading it via JavaScript or CSS. Add a preload link in the HTML head with rel='preload' as='image' for the LCP image. Ensure the image src attribute is present in the initial server response.
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
Poor cache policies on external scripts force repeated downloads, slowing repeat visits by 248 KiB.
330 KiB of unused JavaScript delays LCP by 400ms and blocks the main thread for 2 seconds.
Font loading delays are causing 650ms delay to First Contentful Paint and creating invisible text periods.
Missing width and height attributes on images cause layout shifts that hurt user experience and CLS scores.