Largest Contentful Paint
Good: < 2.5s
Measures how long it takes for the main content to appear on screen
How to optimize medium.com
Font loading blocks text rendering and can cause layout shifts, contributing to poor user experience metrics.
Add font-display: swap to your Google Fonts CSS to show fallback text immediately. Preload critical font files using <link rel='preload'> in the document head. Implement font metric overrides in CSS to match fallback fonts with web fonts dimensions, reducing layout shifts.
A score of 60 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
Medium.com has poor performance with a score of 60/100, primarily due to excessive JavaScript that's blocking the page from becoming interactive. The site takes nearly 12 seconds to become fully interactive, with JavaScript execution consuming 1.7 seconds and creating 930ms of blocking time that prevents users from interacting with the page. The biggest quick win would be removing the page redirect (saving 780ms) and reducing unused JavaScript (688 KB could be eliminated), while the long-term solution requires optimizing JavaScript delivery and execution to improve the user experience. These JavaScript issues are also causing the largest content to appear slowly at 4.9 seconds, making the site feel sluggish to visitors.
Why It Matters:
The redirect from www.medium.com to medium.com adds 780ms delay before any content loads, directly impacting LCP and FCP.
How to Fix:
Configure your web server to redirect HTTP traffic directly to the canonical medium.com domain without the www subdomain. Update all internal links and canonical tags to point to medium.com. Set up proper 301 redirects at the DNS or CDN level to avoid the extra network hop.
Why It Matters:
JavaScript execution blocks the main thread for 1.7 seconds and creates 925ms of Total Blocking Time, severely impacting user interactivity.
How to Fix:
Code-split the main JavaScript bundles, especially the large 4113.128035f5.js file (789ms execution time). Defer loading of the reCAPTCHA script until user interaction is detected. Implement tree-shaking to remove 688KB of unused JavaScript from your bundles. Consider lazy-loading non-critical components.
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.