MOHD SAIF
Performance

How I Migrated Laundrywala from WordPress to Next.js — and Hit 95 on PageSpeed

A deep dive into the full migration process, technical decisions, performance wins, and lessons learned from moving a production site from WordPress to Next.js.

Mohd Saif
March 13, 2026
8 min read
H

The Problem with WordPress

When I joined Laundrywala, their website was running on WordPress with a bloated theme, dozens of plugins, and a PageSpeed score hovering around 65 on desktop and 50 on mobile. The site was slow, hard to maintain, and didn't reflect the quality of service the company provides.

"Performance is not just a technical metric — it's a user experience metric that directly impacts business outcomes."

The leadership team wanted a faster, more modern website that could scale with the business. That's where I came in.

Planning the Migration

Before writing a single line of code, I spent two weeks planning the migration. Here's what I focused on:

SEO Preservation

The existing WordPress site ranked #1 on Google for several competitive laundry-related keywords in Delhi. Losing those rankings was not an option.

  • Mapped every existing URL to its new Next.js equivalent
  • Set up proper 301 redirects for any URL structure changes
  • Preserved all meta tags, Open Graph data, and structured data
  • Ensured the sitemap.xml was auto-generated with all pages

Architecture Decisions

I chose Next.js for several reasons:

const whyNextJs = {
  ssr: "Server-side rendering for SEO",
  ssg: "Static generation for speed",
  imageOptimization: "Built-in next/image component",
  routing: "File-based routing system",
  deployment: "Seamless Vercel deployment",
  dx: "Excellent developer experience"
};

The Tech Stack

Here's the complete stack I used for the rebuild:

  • Frontend: Next.js, React, Tailwind CSS
  • Backend: Node.js, Express.js
  • Database: MongoDB
  • Hosting: Vercel (frontend) + AWS (backend)
  • CDN: Cloudinary for image optimization

Implementation Highlights

Image Optimization

One of the biggest performance wins came from image optimization. WordPress was serving unoptimized images, some over 2MB each.

With Next.js next/image:

  • Automatic WebP conversion
  • Responsive srcset generation
  • Lazy loading by default
  • Blur placeholder for perceived performance

Server-Side Rendering

For service pages that needed to rank on Google, I used getServerSideProps to ensure crawlers always received fully rendered HTML:

export async function getServerSideProps() {
  const services = await fetchServices();
  return {
    props: { services },
  };
}

Static Generation for Speed

For pages that didn't change often (like the About page and FAQ), I used getStaticProps with ISR (Incremental Static Regeneration):

export async function getStaticProps() {
  const faqs = await fetchFAQs();
  return {
    props: { faqs },
    revalidate: 3600, // Revalidate every hour
  };
}

The Results

After three months of development and thorough testing, we launched the new site. The results spoke for themselves:

  • Desktop PageSpeed: 65 → 95 (+46% improvement)
  • Mobile PageSpeed: 50 → 75 (+50% improvement)
  • SEO Score: Maintained 100/100
  • Server Response Time: Reduced by 40%
  • Google Rankings: All #1 positions preserved

Before vs After

The transformation was dramatic. Page load times dropped from 4-5 seconds to under 1.5 seconds. The bounce rate decreased by 25%, and user engagement metrics improved across the board.

Lessons Learned

1. Plan Your Redirects Early

Don't leave URL redirects as an afterthought. Map them out before you start coding. One missed redirect can tank your SEO rankings overnight.

2. Test on Real Devices

Lighthouse scores in DevTools don't tell the full story. Test on actual mobile devices with throttled connections to get real-world performance data.

3. Monitor After Launch

Set up monitoring from day one. I used Vercel Analytics and Google Search Console to track performance and catch any regressions early.

"A migration is never truly done — it's an ongoing process of monitoring, optimizing, and iterating."

Conclusion

Migrating from WordPress to Next.js was one of the most rewarding projects I've worked on. The performance gains were significant, the codebase is now maintainable, and the team can ship new features faster than ever.

If you're considering a similar migration, I hope this article gives you a solid starting point. Feel free to reach out if you have any questions!

Written by

Mohd Saif

I build high-performance web applications using React, Next.js, Node.js and TypeScript. Currently at Laundrywala.

Mohd Saif

© 2026 Mohd Saif. Built with Next.js v15