Largest Contentful Paint
Good: < 2.5s
Measures how long it takes for the main content to appear on screen
How to optimize medium.com
1.6 seconds of JavaScript execution time creates 620ms of Total Blocking Time, preventing user interactions.
Break up long-running tasks by yielding to the main thread every 50ms using setTimeout or scheduler.postTask. Defer non-critical JavaScript execution until after page load. Optimize reCAPTCHA and Medium's main bundle by implementing code splitting and lazy loading for non-essential features.
A score of 63 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 issues with a score of 63/100, indicating significant room for improvement. The biggest problem is excessive JavaScript execution time (1.6 seconds), primarily caused by heavy reCAPTCHA and Medium.com scripts that are blocking the page from becoming interactive for over 11 seconds. The site is also loading 689 KiB of unused JavaScript code, which could save 2.5 seconds on the Largest Contentful Paint if removed or deferred. To improve performance, focus on reducing JavaScript bundle sizes, removing unused code, and optimizing script loading to unblock the main thread faster.
Why It Matters:
689 KiB of unused JavaScript is delaying LCP by 2.5 seconds and blocking user interactions.
How to Fix:
Remove or defer reCAPTCHA loading until user interaction is needed. Split main.js bundle using code splitting to load only necessary code initially. Use tree shaking to eliminate dead code from your JavaScript bundles. Consider lazy loading reCAPTCHA only on forms that require it.
Why It Matters:
Font loading without proper display strategy can cause layout shifts and delay content visibility.
How to Fix:
Add font-display: swap to all @font-face declarations for Google Fonts. Preload critical font files using <link rel='preload'> for fonts used above the fold. Consider using font-display: optional for non-critical fonts to prevent layout shifts entirely.
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
Unsized images cause 0.13 CLS score with layout shifts primarily from the logo and hero image lacking explicit dimensions.
732 KiB of unused JavaScript delays LCP by 3.6 seconds, with block-editor and components scripts being 80%+ unused.
The 1.4MB hero image causes 5.1 second resource load delay and significantly impacts LCP by appearing oversized at 6000x4000 for 570x380 display.
CSS and JavaScript files are blocking initial page render for 3,090ms, significantly delaying First Contentful Paint.