Largest Contentful Paint
Good: < 2.5s
Measures how long it takes for the main content to appear on screen
How to optimize tokyoportfolio.frontend.stg.vercel.app
Script evaluation blocks main thread for 1.1 seconds, creating 214ms Total Blocking Time that delays user interactions.
Code-split large Next.js bundles using dynamic imports for non-critical components. Move Facebook Pixel and legacy polyfills to web workers where possible. Configure Next.js to target modern browsers only to reduce transpilation overhead.
A score of 75 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 site has poor performance with a score of 75/100, primarily held back by excessive JavaScript from Google Analytics and Facebook tracking scripts that are slowing down page interactions. The biggest problem is 234 KiB of unused JavaScript code that's taking 2+ seconds to process, causing your Time to Interactive to hit a sluggish 10.1 seconds and your Largest Contentful Paint to lag at 5.0 seconds. Removing or deferring these unnecessary third-party scripts, along with cleaning up 18 KiB of unused CSS, could dramatically improve your Core Web Vitals and boost your performance score by 15-20 points. The site also has render-blocking CSS files that are delaying the initial page display by 750ms, which could be easily fixed by inlining critical styles.
Why It Matters:
Google Tag Manager scripts waste 234 KiB and delay LCP by 150ms with 40-45% unused code.
How to Fix:
Configure GTM to load only necessary tags using custom triggers. Move non-critical tracking (Facebook Pixel, conversion tracking) to load after user interaction. Use Next.js Script component with strategy='afterInteractive' for analytics scripts.
Why It Matters:
CSS files block initial render causing 750ms delay to First Contentful Paint.
How to Fix:
Split critical above-the-fold CSS and inline it in the Next.js _document.js head. Use rel='preload' with onload handler for non-critical CSS files. Remove 87% unused CSS from 3ea9b5e4f44314ae.css file by purging unused Tailwind classes.
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
326KB of unused JavaScript and 19KB of unused CSS are blocking render and increasing load times unnecessarily.
A massive layout shift (0.808 CLS score) occurs when the footer loads, severely impacting user experience.
87% of your main CSS bundle (18KB) is unused, wasting bandwidth and parse time.
JavaScript is causing 149ms of forced reflows by reading layout properties after DOM changes, blocking the main thread.