0
Jens · Mumbai · Jaipur
Home  ·  Blog  ·  Web Development
Web Development

How to optimize website speed in 2026?

Website speed in 2026 is about Core Web Vitals — LCP, INP, CLS. Here is the complete optimization checklist we use for client sites in India.

26 Apr 2026 · 9 min read · By Jens Infotech

A 1-second delay in page load drops conversions by 7%. Indian users on 4G are even less patient — bounce rate spikes 32% past the 3-second mark. We\'ve audited 100+ Indian business websites for speed; the same patterns repeat. Here\'s the complete 2026 optimisation checklist, ordered by impact.

Quick answer — the 2026 priority order

  1. Compress & modernise images (40-60% of page weight typically)
  2. Enable Brotli/gzip compression on the server
  3. Use a CDN (Cloudflare free tier)
  4. Eliminate render-blocking JS/CSS
  5. Reduce third-party scripts (chat widgets, ads, analytics bloat)
  6. Lazy-load below-the-fold content
  7. Optimise web fonts (preload, swap, subset)
  8. Cache aggressively (browser + CDN + server)
  9. Minimise database queries (for dynamic sites)
  10. Code-split JS bundles

Understand the 3 Core Web Vitals first

MetricWhat it measuresGood target
LCP (Largest Contentful Paint)How fast the biggest visible element loadsUnder 2.5s
INP (Interaction to Next Paint)How responsive the page feels to clicks/tapsUnder 200ms
CLS (Cumulative Layout Shift)How much elements jump around as page loadsUnder 0.1

INP replaced FID in March 2024 and is now stricter. CLS is often the easiest to fix; INP is the hardest in 2026.

Step 1 — Image optimisation (biggest single lever)

Most Indian business websites use 800KB-2MB JPGs as hero images. Same content can be 50–150KB in WebP/AVIF.

  • Convert to WebP/AVIF — 30-60% smaller than JPG at same visual quality
  • Use responsive images: <picture> with multiple sources for different viewports
  • Set explicit width/height attributes — prevents CLS
  • Lazy-load below-the-fold images: loading="lazy" attribute
  • Use proper compression: 80% quality JPG is visually identical to 100%, half the size

Tools: TinyPNG (free), Squoosh (free), sharp CLI for batch convert.

Step 2 — Server-side compression

Enable Brotli (best) or gzip (fallback) on your server. This compresses HTML/CSS/JS by 70-80% on the wire.

  • Apache: enable mod_brotli + mod_deflate
  • Nginx: brotli on; brotli_types text/css application/javascript;
  • Hostinger / shared hosting: gzip is usually pre-enabled, Brotli requires activation
  • Cloudflare: Brotli is automatic on free tier

Step 3 — Use a CDN (Cloudflare free works)

Indian internet routing is fragmented across ISPs. A Cloudflare CDN edge in Mumbai or Chennai cuts time-to-first-byte by 40–70% for users in tier-2/3 cities.

Benefits:

  • Edge caching of static assets
  • HTTP/3 + QUIC enabled
  • Brotli automatic
  • DDoS protection bonus
  • Free tier covers 99% of SMB needs

Step 4 — Eliminate render-blocking resources

If your <head> has 6 CSS files and 12 JS files loading synchronously, the page can\'t render until all 18 finish downloading. Lighthouse will scream "render-blocking resources" — that\'s LCP murder.

Fixes:

  • Inline critical CSS — extract above-the-fold CSS, inline in <head>
  • Defer non-critical CSS: <link rel="preload" as="style" onload="this.rel=\'stylesheet\'">
  • Defer JS: <script defer> for non-critical, async for analytics
  • Bundle and minify: 6 CSS files → 1 minified file

Step 5 — Audit third-party scripts

Third-party scripts (chat widgets, analytics, ads, popups, Hotjar, Intercom) often add 1-3 seconds to load time. Audit ruthlessly:

  • List every third-party script
  • For each, ask: "Does this directly contribute to revenue?"
  • Remove half of them — speed boost is immediate
  • Defer the rest with async or defer
  • Lazy-load chat widgets (Tawk.to, Intercom) — load only after user scrolls

Step 6 — Lazy-load below-the-fold

  • Images: loading="lazy" attribute (native browser support)
  • iframes (YouTube embeds, maps): loading="lazy"
  • Heavy JavaScript components: dynamic import()
  • Third-party widgets: load on scroll/interaction, not on load

Step 7 — Optimise web fonts

Web fonts are sneaky LCP killers. Common mistakes:

  • Loading 4 weights when site uses 2
  • Loading full Latin-Extended when site only uses Latin
  • No font-display: swap — invisible text until font loads
  • Loading from Google Fonts CDN without preconnect

Fixes:

  • <link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
  • Self-host critical fonts
  • Use font-display: swap in @font-face
  • Subset fonts to only the characters you actually use

Step 8 — Cache aggressively

Asset typeCache duration
Static images, fonts1 year (immutable)
CSS/JS bundles (versioned filenames)1 year (immutable)
HTML5 minutes – 1 hour
API responses10 seconds – 5 minutes (varies)

Set proper Cache-Control headers. Versioned filenames (app.a1b2c3.js) let you cache "forever" safely.

Step 9 — Database query optimisation (for dynamic sites)

WordPress, Laravel, custom PHP — most slow-down on queries:

  • Profile slow queries (WordPress: Query Monitor plugin; Laravel: Telescope)
  • Add indexes on frequently-filtered columns
  • Use object cache (Redis / Memcached)
  • Cache rendered pages (WP Rocket, NGINX FastCGI cache)

Step 10 — Code-splitting (for SPAs)

If you ship a single 800KB JS bundle, every user pays for code they don\'t need. Code-split by route:

  • Next.js / React: dynamic import() for heavy components
  • Vue: async components
  • Result: 200KB initial bundle + lazy-load rest on demand

Common mistakes that destroy speed scores

  1. Using a "premium" WordPress theme bundled with 30 plugins
  2. Embedding raw YouTube videos (use lite YouTube embed instead)
  3. Loading 4 different analytics tools simultaneously
  4. Using PNG for photos (always JPG/WebP for photos)
  5. Inline base64-encoded large images in HTML
  6. Loading Bootstrap + Tailwind + custom CSS together
  7. Pop-ups that load before page is interactive

Pro tips for India-specific speed

  • Test on a real 4G phone, not desktop. Real 4G in India = 2-8 Mbps with 100ms+ latency.
  • Use WebPageTest with Mumbai test location, throttled 4G profile
  • Track real user metrics via Google Search Console Core Web Vitals report
  • Prioritise mobile — 75-85% of Indian traffic is mobile
  • Avoid IPv6-only CDN endpoints — many Indian ISPs lag on IPv6

Conclusion

Website speed is the cheapest SEO upgrade you can make. Most Indian SMB sites can hit Lighthouse 90+ in 2 weeks with the 10-step checklist above. If you want our team to audit and implement, see Website development Mumbai or book a free 15-minute audit.

FAQs

What is a "fast" website score in 2026?

Lighthouse score 90+ on mobile is fast. Real-world benchmarks: LCP under 2.5s, INP under 200ms, CLS under 0.1. Most Indian SMB sites score 30–55. There is huge room for improvement.

Does website speed actually affect SEO?

Yes — Google's Core Web Vitals are direct ranking signals since 2021, and weighting has increased. Sites with green CWV outrank sites with red CWV when other factors are equal.

WordPress is slow — should I switch to Next.js?

Not necessarily. A well-optimised WordPress site (caching plugin + image optimisation + lightweight theme) outperforms a poorly built Next.js site. Switch only if your bottleneck is server-side capability.

Do I need a CDN for an Indian-only site?

Yes. Even for India-only audience, a CDN (Cloudflare free tier works) cuts latency 40–60%. India has fragmented ISP routing — CDN edges normalise it.

How much does a speed audit cost?

Free tools (PageSpeed Insights, WebPageTest) reveal 80% of issues. Professional audits with implementation plan: ₹15K–₹50K depending on site complexity.

Can I optimize speed without a developer?

Some quick wins yes — image compression, caching plugins, removing unused plugins. Deeper fixes (code splitting, server tuning, third-party script management) need a developer.

Read next

Let's build something unforgettable.

From a 5-page launch to a multi-region growth engine — we plug in, ship fast, and stay till the numbers move.