Performance Engineering

Core Web Vitals
& Optimization

Speed is a feature. I engineer web experiences that score 100 on Lighthouse, load in under a second, and never drop a frame — measured on real devices, real networks, real data.

LCP < 1.2s CLS < 0.01 INP < 40ms FCP < 0.6s
suboorkhan.com

Lighthouse Report

0

Performance

0

Accessibility

0

Best Practices

0

SEO

First Contentful Paint
0.6 sGood
Largest Contentful Paint
1.2 sGood
Total Blocking Time
0 msGood
Cumulative Layout Shift
0.01Good
Speed Index
0.9 sGood
100

The Big 4

Core Web Vitals — All Green

Google's user-experience signals that directly influence search rankings and real user satisfaction.

1.2s < 2.5s target

LCP

Largest Contentful Paint — how fast the biggest visible element loads

● Good

Key fixes:

✓ Preload hero image / font

✓ Server-side render above-fold

✓ Remove render-blocking CSS

0.01 < 0.1 target

CLS

Cumulative Layout Shift — visual stability, no elements jumping around

● Good

Key fixes:

✓ Explicit width/height on images

✓ font-display: optional

✓ Reserve space for ads/embeds

38ms < 200ms target

INP

Interaction to Next Paint — responsiveness to every user interaction

● Good

Key fixes:

✓ useTransition for heavy renders

✓ Break up long JS tasks (>50ms)

✓ Yield with scheduler.yield()

0.6s < 1.8s target

FCP

First Contentful Paint — when the user first sees something useful

● Good

Key fixes:

✓ Inline critical CSS

✓ Preconnect to CDN origins

✓ HTTP/3 + Early Hints

Real Projects

Before & After — Real Numbers

Every number below was measured with Lighthouse CI, WebPageTest, and Chrome UX Report — no synthetic lab simulations.

E-commerce

ShopSphere — Full Replatform

Migrated a 6-year-old jQuery monolith to Next.js 15 with ISR, image CDN, and Redis edge caching. Primary goal was LCP & conversion rate.

Next.js 15Vercel ISRRedisAVIF
LCP
6.1s1.2s
INP
420ms38ms
Lighthouse Score
41100
JS Bundle
2.4MB185KB
Conversion Rate
1.8%3.4%

80%↓

LCP reduction

91%↓

INP reduction

92%↓

Bundle size

+89%↑

Conversions

SaaS Dashboard

NexusAI — Dashboard Optimization

200-metric analytics dashboard with React virtualisation, canvas-based charts, and useTransition to eliminate INP spikes during data refresh.

React 19 uPlot virtualisation
INP (interaction spike)
380ms12ms
LCP
4.2s0.9s
Lighthouse
6897
MTTR on incidents
47 min11 min

97%↓

INP

79%↓

LCP

+29 pts

Lighthouse

77%↓

MTTR

Techniques

My Optimization Playbook

Every technique I reach for, categorised by the vital it primarily targets.

Code Splitting

LCPFCP

Route-based + dynamic imports. Ship only what the current page needs. Reduced initial bundle by 88% on ShopSphere.

🐤

Resource Hints

FCPLCP

preload, prefetch, preconnect, and Early Hints (103) to front-load critical resource discovery before HTML parsing completes.

🛈

Critical CSS Inline

FCP

Inline only above-fold CSS in <head>. Defer all other stylesheets with media trick. Eliminates render-blocking entirely.

🕓

Lazy Loading

LCP

loading="lazy" on off-screen images, IntersectionObserver for heavy components, dynamic imports for third-party scripts.

📦

Tree Shaking

FCPINP

ESM-only imports, sideEffect:false in package.json, custom Rollup/Vite configs to eliminate dead code paths.

🏠

ISR / Static Gen

LCPTTFB

Incremental Static Regeneration serves pre-built HTML from CDN edge. Sub-5ms TTFB globally, zero cold starts.

Toolbelt

Performance Tool Stack

💡

Lighthouse CI

Automated perf audits on every pull request. Budget enforcement with budget.json. Never ship a regression.

🏭

WebPageTest

Deep waterfall analysis, filmstrip view, connection throttling on real mobile hardware in global PoPs.

📈

CrUX (Chrome UX Report)

Real-user field data from Chrome users worldwide. The truth about what real users experience on real networks.

🔸

Sentry Performance

Distributed tracing, N+1 query detection, frontend transaction profiling across React component boundaries.

Vercel Speed Insights

Zero-config real-user monitoring. Per-page INP, LCP, FCP segmented by device type and geography.

🔧

Bundle Analyzer

@next/bundle-analyzer + source-map-explorer for visual treemaps of who is costing you the most bytes.

🔍

Chrome DevTools

Performance panel, Layers view, Coverage tab (dead CSS/JS), Memory profiler, and the new Performance Insights panel.

📊

web-vitals.js

Google's official library. Measure LCP, CLS, INP, FCP, TTFB in real user sessions and send to any analytics endpoint.

Get a Free Audit

Is Your Site Fast Enough?

A 1-second delay in LCP costs ~7% conversion rate. Let me audit your Core Web Vitals, find the biggest wins, and ship a performance roadmap — for free.