Skip to content
Rose City Commerce

Portland Painting and Restoration WordPress to Next.js migration with Asana estimate flow

Migrated a WordPress site to a custom Next.js build and connected estimate requests to an Asana workflow.

Portland Painting and Restoration WordPress to Next.js migration with Asana estimate flow screenshot
This project mattered because Portland Painting and Restoration needed a faster site customers could use easily and a clearer estimate flow the team could manage without chasing every lead manually.

Context

Portland Painting and Restoration needed a faster, cleaner website for paintpdx.com and a more organized way to handle estimate requests from the site.

Problem

The existing WordPress site was slower than it needed to be, and estimate requests needed a clearer handoff into the team's project workflow.

Solution

  • Migrated the site from WordPress to a custom Next.js build
  • Rebuilt core service pages with faster loading and cleaner page structure
  • Connected estimate requests to an Asana flow for follow-up ownership
  • Improved technical SEO fundamentals across key service pages

Measured performance

WordPress site vs custom Next.js site

Home Page

MetricBeforeAfterChange
Performance Score63/10098/100+35 points
SEO Score77/10092/100+15 points
First Contentful Paint1.3s0.2s~6.5x faster
Largest Contentful Paint6.0s1.1s~5.5x faster
Speed Index12.1s0.4s~30x faster

Interior Paint Page

MetricBeforeAfterChange
Performance Score63/10099/100+36 points
SEO Score77/10092/100+15 points
First Contentful Paint1.2s0.2s~6x faster
Largest Contentful Paint13.9s0.5s~28x faster
Speed Index12.4s0.3s~41x faster

Results

  • Moved the site from WordPress to a faster custom Next.js build
  • Created a clearer estimate-request handoff into Asana
  • Improved measured performance and SEO scores across priority pages

Stack

Next.jsAsanaTechnical SEOPerformance
Portland Painting and Restoration WordPress to Next.js migration with Asana estimate flow | Rose City Commerce