— Speed Optimization
Making WordPress fast.
No source code needed. We crawl your public HTML, statically compile it with Astro, and serve it via the Cloudflare CDN.
Our own site's mobile Performance more than doubled, and TBT dropped 93% — a repeatable process.
Result
Real measurements from our own site
In April 2026, we migrated our own homepage from WordPress to Astro. These are the actual scores, measured with Lighthouse 12.8.2 (headless Chrome).
Performance Score
BEFORE — WordPress
30/100
AFTER — Astro
66/100
+36 points (2.2×)
※ Mobile conditions — Slow 4G (1.6 Mbps) + 4× CPU throttling. Real-world feel on LTE/5G tracks closer to the desktop score.
TBT — delay before the page is interactive
BEFORE
3,310ms
AFTER
240ms
-93%
FCP — first content painted
BEFORE
3.4s
AFTER
2.3s
-32%
SI — Speed Index
BEFORE
10.4s
AFTER
4.2s
-60%
SEO Score
BEFORE
85/100
AFTER
92/100
+7 points
Performance Score
BEFORE — WordPress
89/100
AFTER — Astro
96/100
+7 points
LCP — largest content painted
BEFORE
1.6s
AFTER
1.1s
-31%
SI — Speed Index
BEFORE
1.8s
AFTER
1.0s
-44%
SEO Score
BEFORE
85/100
AFTER
92/100
+7 points
Measured: 2026-04-17 / Tool: Lighthouse 12.8.2 (headless Chrome) / Target: our own site, www.public-design.co.jp
Lighthouse Report
Measurement report
Lighthouse's mobile testing environment is deliberately harsh: Slow 4G (effective 1.6 Mbps) and 4× CPU throttling. Real-world LTE/5G experience tracks closer to the desktop score. Below is the before/after under those conditions.
BEFORE — WordPress
Current WordPress site
2026-04-17
Performance
Accessibility
Best Practices
SEO
AFTER — Astro
Post-migration Astro (Cloudflare Pages)
2026-04-17
Performance
Accessibility
Best Practices
SEO
BEFORE — WordPress Desktop
Current WordPress site
2026-04-17
Performance
Accessibility
Best Practices
SEO
AFTER — Astro Desktop
Post-migration Astro (Cloudflare Pages)
2026-04-17
Performance
Accessibility
Best Practices
SEO
Breakdown
Which phase moved the score, and by how much.
"Static-ify + CDN" alone delivers the first 90% of the improvement. We start with the measures that give the biggest result for the least effort.
Phase 01
+19 pts
Static-ify + CDN delivery
We eliminate WordPress's server-side dynamic processing and serve directly from Cloudflare Pages' edge cache.
TBT drops from 3,310ms to 320ms — a 90% reduction. No source code access required.
Phase 02
+7 pts
SEO normalization
Canonical absolute URLs, robots.txt and sitemap.xml, put in order. The SEO score recovers from 69 to 85.
Phase 03
+12 pts
Removing unused assets ★
We strip unused slider JS/CSS, saving 468KB. CLS goes from 0.17 to 0.03. Lowest effort, biggest result of any phase.
Phase 04
−1.2MB
WebP conversion
52 images converted in bulk. Transfer size drops significantly. This phase moves felt real-user experience more than the raw LCP number.
Phase 05
+1 pt
CSS preloading
We preload render-blocking CSS for a small FCP gain. Effect is limited on its own since mobile is dominated by fixed cost.
Why
Why it gets faster.
The technical basis behind the speed gains from migrating to Astro.
01
Removing server-side dynamic processing
WordPress generates HTML with PHP on every request. Astro outputs static HTML at build time and serves it from CDN cache. TTFB and FCP get structurally faster.
02
Zero JS by default
Astro ships no client-side JavaScript by default. The jQuery, sliders and widget scripts every WordPress theme carries disappear, and TBT plummets.
03
Cloudflare edge delivery
Served from 300+ CDN edge locations worldwide. TTFB to domestic users drops to tens of milliseconds. The score doesn't sag under traffic spikes either.
04
Surgically removing unused assets
We investigate and remove unused sliders, fonts and plugin CSS. WordPress themes often load hundreds of KB of assets you'll never notice are there — removing them alone makes a big difference.
Reproducible Process
A reproducible 8-step process.
We crawl your public URLs — no source code needed. A 2–4 hour PoC is enough to start seeing what it can do.
-
Step 01
Crawl public HTML
We fetch all HTML from your site's public URLs. No source code or DB access needed.
-
Step 02
Static-ify and rewrite paths
WordPress-specific paths get converted to Astro-compatible ones. Canonical, robots.txt and sitemap.xml are auto-generated too.
-
Step 03
Decompose the HTML
Each page's body/meta gets broken down into a form that can be brought in as Astro components.
-
Step 04
Generate Astro pages
We apply a shared layout and batch-generate an Astro scaffold for every page.
-
Step 05
Convert images to WebP
Every image on the site is auto-converted to WebP. Average compression of -60 to -80%.
-
Step 06
Rewrite image references
Image references in the HTML are auto-rewritten in bulk to the WebP paths.
-
Step 07
Remove unused assets, add preloading
We investigate and remove unused JS/CSS, and preload critical CSS.
-
Step 08
Deploy to Cloudflare Pages
Deployed to Cloudflare Pages via wrangler. Cutting over to production is just a DNS change.
Content Management
Keeping the ability to update
Even after migrating to Astro, you can keep updating content yourself. Three patterns, depending on update frequency, your existing setup and cost.
Pattern B
WordPress, headless
For teams already comfortable with the WP admin
WordPress stays in place as a content warehouse; only the front end switches to Astro. Your editors keep writing in the same WordPress admin they always have. Hitting "Publish" fires a webhook automatically, and it's live on the site in 1–2 minutes.
The WordPress install itself can be hidden from the outside world behind Basic Auth — it no longer needs to be publicly accessible. Server upkeep and maintenance continue as before, though.
①
Write in the WP admin and hit "Publish"
②
Webhook fires automatically, Astro build starts
③
Live on the site in 1–2 minutes
Pattern C
Switch to a headless CMS
For teams that want to drop the WP server and simplify costs
We use a SaaS like microCMS for content management. The admin is just microCMS's own browser-based dashboard, and writing feels close to WordPress. The WP server can be retired entirely.
Publishing fires a webhook, Astro fetches the content via API and rebuilds automatically. It's live in 1–2 minutes. Existing WordPress content needs migrating, but for a modest number of pages that's usually about half a day's work.
①
Publish in the microCMS admin
(log into the SaaS in your browser)
②
Webhook fires automatically, Astro build starts
③
Live on the site in 1–2 minutes
Pattern D
Git-based CMS (for low-frequency updates)
For updates a few times a year and no interest in adding cost
We use Decap CMS (formerly Netlify CMS), an OSS project. Add one config file to your Astro project, and a GUI admin appears automatically at your site's /admin/. You log in with a GitHub account, write posts in Markdown through a browser UI, and saving commits it to GitHub automatically, which triggers a Cloudflare Pages build.
No CMS service fee, and the WP server can be retired too. A WYSIWYG editor handles it for anyone not comfortable with HTML or Markdown.
①
Log into /admin/ on your site with GitHub → write and save
②
Auto-commits to GitHub → Cloudflare Pages auto-builds
③
Live on the site in 1–2 minutes
| B — WP headless | C — Headless CMS | D — Git CMS | |
|---|---|---|---|
| Admin | WordPress (unchanged) | microCMS etc. (SaaS) | Your own site's /admin/ |
| WP server | Continues | Can retire | Can retire |
| Extra cost | None | Free–JPY 3,000/mo | None |
| Suited update frequency | Weekly–daily | Weekly–daily | Monthly–a few times a year |
| Content migration effort | None | Some | Some |
WordPress vs Astro
A high score is possible while staying on WordPress, too.
WP Rocket combined with Cloudflare is a legitimate, immediate improvement. But compare "effort and cost to reach a similar score," and migrating to Astro comes out ahead in efficiency.
Mobile Performance
50 – 65 pts
Plugins only
-
WP Rocket from $59/yr
Bundles caching, deferred JS, CSS minification and preloading in one setup. The standard WordPress optimization plugin.
-
Cloudflare free tier available
CDN delivery substantially improves TTFB. Installable just by pointing your DNS at Cloudflare.
-
ShortPixel / Imagify free tier available
Bulk-converts and compresses images to WebP, cutting transfer size.
Effort: low / WP server: continues / updatability: unchanged
Mobile Performance
75 – 90 pts
Theme and code optimization
-
Switch to a lightweight theme
Move to a jQuery-free lightweight theme like GeneratePress or Kadence. Migrating while keeping your current look effectively takes renewal-level effort.
-
Inline critical CSS
Only the CSS needed for the first viewport gets inlined directly into the HTML, with the rest loaded asynchronously. Improves FCP and LCP.
-
Remove unused plugins and assets
We investigate and fully remove unused plugins, CSS and JS — the same effect as the "+12 points from removing the unused slider" phase in the Astro migration, achievable on WordPress too.
Effort: high (renewal-level) / WP server: continues / updatability: unchanged
Comparison
Compared with an Astro migration
| WP optimization plugins only | WP optimization theme overhaul | Astro migration this approach | |
|---|---|---|---|
| Mobile Performance range | 50–65 pts | 75–90 pts | 66+ pts(90s with further tuning) |
| Effort | Low–medium | High(renewal-level) | Low–medium |
| WP server upkeep | Continues | Continues | Can be retired |
| Running cost | Server + plugin fees | Server + theme fees | Runs on Cloudflare's free tier |
| Ability to keep updating | Unchanged | Unchanged | Covered by Patterns B / C / D |
"WP optimization (theme overhaul)" costs renewal-level effort and still leaves the WP server in place. If you're going to spend that much effort either way, an Astro migration — which also retires the server and cuts cost — pays off better over the medium-to-long term.
If you'd rather keep your design and URLs untouched and solve security first, "WordPress static-ification" is another option. Compare static-ification and Astro migration →
— Get Started
Start by measuring your score.
We measure your current score and tell you the likely range of improvement. Consultation and the PoC proposal are free.
- 01 No source code needed — a public URL is enough
- 02 A 2–4 hour PoC first, so you can see the likely impact
- 03 Your existing design stays as-is; only speed changes
- 04 Cloudflare Pages' free tier can cut running costs too