Why Landing Pages Are the Highest-Stakes Comparison
Every type of website benefits from good performance. But landing pages — the specific pages tied to advertising campaigns, Google Business Profile, and organic search rankings for commercial intent keywords — are where performance differences translate most directly into money.
A slow homepage is unpleasant. A slow landing page that a patient arrived at after clicking a Rp 12,000 Google Ad is revenue disappearing in real time.
This comparison is specific to landing pages: single-purpose, conversion-focused pages that need to load immediately, communicate a clear value proposition, and convert a visitor into an inquiry. For this use case, the performance gap between WordPress and Astro.js is larger than for any other comparison.
What We’re Actually Comparing
WordPress + Elementor represents the standard Indonesian agency stack. Elementor is the dominant page builder, used by the majority of Indonesian web agencies because it allows visual editing without touching code. Most clinic sites in Indonesia are on this stack.
Astro.js + Cloudflare Pages is what we build on. Astro handles the rendering; Cloudflare Pages handles the hosting and global distribution. No database, no PHP, no plugin ecosystem.
We’ve tested both consistently on Google PageSpeed Insights — the same tool Google uses to assess Core Web Vitals for ranking purposes.
Side-by-Side Performance Numbers
These numbers represent real measurements from clinic landing pages in Indonesia — not theoretical benchmarks.
| Metric | Astro.js + Cloudflare | WordPress + Elementor | Google “Good” Threshold |
|---|---|---|---|
| Performance Score (Mobile) | 95–100 | 25–55 | ≥ 90 |
| LCP (Largest Contentful Paint) | 0.7–1.1s | 3.5–6.5s | ≤ 2.5s |
| CLS (Cumulative Layout Shift) | 0.00–0.02 | 0.15–0.40 | ≤ 0.1 |
| TBT (Total Blocking Time) | 0–50ms | 800–2,200ms | ≤ 200ms |
| FCP (First Contentful Paint) | 0.5–0.8s | 2.2–3.8s | ≤ 1.8s |
| TTFB (Time to First Byte) | 10–40ms | 300–900ms | ≤ 800ms |
| JavaScript Delivered | 0–15KB | 300–700KB | — |
| CSS Size | 8–20KB | 80–250KB | — |
| Total Page Weight | 120–400KB | 1.5–4MB | — |
These results align with the HTTPArchive Web Almanac 2024 CMS performance data, which analyzed Core Web Vitals pass rates across major content management systems at scale.
Why the Gap Is Structural, Not Configurational
The performance difference isn’t because WordPress is poorly configured or Astro.js is cleverly optimized. It’s because of how each system fundamentally works.
WordPress on every page visit:
- Browser sends request to server
- Server runs PHP, queries MySQL database for content
- WordPress assembles HTML using theme templates + active plugins
- Server sends HTML + 300–700KB of JavaScript (jQuery, Elementor runtime, plugin scripts) to browser
- Browser downloads all JavaScript
- Browser parses and compiles JavaScript
- Browser executes JavaScript to render interactive elements
- Page is visible and usable
Astro on every page visit:
- Browser sends request to Cloudflare edge (nearest city)
- Edge serves pre-rendered HTML file from cache
- Browser displays HTML
- Page is visible and usable
Steps 2–7 in the WordPress chain all consume time. On a mobile device over 4G, these steps routinely take 3–5 seconds. Astro eliminates them by pre-rendering at build time and caching globally.
No plugin solves this. WP Rocket, LiteSpeed Cache, and similar optimization plugins reduce the overhead of steps 2–6 but cannot eliminate them. WordPress must run PHP and process plugins on every page request — that’s how it works.
The Security Comparison
Performance is where the gap is widest, but security is where WordPress has its most serious structural problem.
Every WordPress installation includes:
- A public-facing admin login endpoint (
/wp-admin) - An XML-RPC interface enabled by default
- A plugin ecosystem that is the source of 97% of WordPress vulnerabilities according to Patchstack’s 2024 report
- A MySQL database accessible through PHP execution
These are ongoing maintenance requirements. A clinic website that hasn’t been updated in 60 days is likely running vulnerable plugin versions — which is a real risk for any business handling patient inquiries.
Astro.js static sites have a fundamentally different security posture. There is no admin panel. There is no database. There is no PHP. The server is delivering static HTML files — there’s nothing to compromise through code injection or database attacks. The site’s security is structurally equivalent to the security of Cloudflare’s own infrastructure.
For clinics handling patient contact information, this difference is significant.
The Maintenance Comparison
WordPress requires ongoing maintenance:
- WordPress core updates: monthly or more frequently for security patches
- Plugin updates: multiple times per month across a typical 20–40 plugin installation
- Database optimization: quarterly or more
- Backup verification: regularly
- Security scan review: ongoing
Each plugin update carries a small risk of breaking compatibility with other plugins or the theme. A clinic that updates Elementor discovers it’s broken the contact form integration. The form is fixed, but the analytics tracking stopped working. Fixing the tracking breaks the heatmap plugin. This is the WordPress maintenance loop.
Astro.js landing pages require maintenance for content updates only. There’s no plugin ecosystem to maintain, no database to optimize, no security patches to apply. The site runs exactly as it was built until content is intentionally updated.
Where WordPress Still Makes Sense
Honest comparison requires naming when WordPress is the better tool:
Complex e-commerce. WooCommerce, despite its performance overhead, has a feature depth that a static framework can’t fully replicate for businesses needing real-time inventory, customer accounts, loyalty programs, and complex shipping logic.
Very large editorial teams. WordPress’s Gutenberg editor is genuinely good, and for newsrooms or content teams with 10+ writers who need a robust, polished editorial interface, WordPress offers mature workflows that headless CMS options for Astro are still catching up to.
Existing sites with significant WordPress traffic. Migrating carries transition costs. A WordPress site with 50,000 monthly organic visitors and a complex custom setup may not benefit enough to justify the migration effort immediately. The calculus changes if performance has degraded significantly or if security incidents are occurring.
For a clinic landing page or a local SMB site, none of these exceptions apply. The use case is precisely where Astro’s architecture is strongest.
The Conversion Rate Difference
Performance differences translate to conversion rate differences. Google’s research on mobile page speed and user behavior shows:
- Pages loading 1–3 seconds: 32% higher bounce rate than 1-second pages
- Pages loading 1–5 seconds: 90% higher bounce rate than 1-second pages
For a clinic landing page receiving 1,000 monthly visits from Google Ads:
- WordPress (4s load): ~600 visitors abandon before any interaction. 400 see the page.
- Astro (0.9s load): ~90 visitors abandon. 910 see the page.
The same budget, the same traffic, the same ad creative — but 2.3× more patients actually seeing your offer on the Astro page. The conversion math flows directly from load time.
The Decision Framework
If you’re choosing a stack for a clinic or SMB landing page:
| Question | If Yes → |
|---|---|
| Is performance and Google ranking a primary concern? | Astro.js |
| Are you running Google Ads to this page? | Astro.js (Quality Score) |
| Is mobile experience critical? (Almost always yes in Indonesia) | Astro.js |
| Do you have limited technical resources for ongoing maintenance? | Astro.js |
| Do you need complex e-commerce or membership functionality? | WordPress or specialized platform |
| Do you have a large non-technical editorial team requiring a polished CMS? | WordPress |
For the overwhelming majority of Indonesian clinic and SMB landing pages, the decision framework points to Astro.js. Not because WordPress is bad software — it’s genuinely powerful in the right context. But clinic landing pages aren’t that context.
If you want to see real implementations, our portfolio shows 14 live Astro.js builds across clinic, retail, and SMB categories with documented performance benchmarks. For the migration path from WordPress, see our SEO-safe migration guide.
References
- HTTPArchive Web Almanac: CMS Performance 2024 — 2024
- Patchstack: State of WordPress Security 2024 — 2024
- Think with Google: Mobile Page Speed Benchmarks — 2024
- Google Developers: Core Web Vitals — 2024
- Cloudflare: Global Network — 2024
- Astro Documentation: Why Astro — 2024
- Google PageSpeed Insights: Documentation — 2024
Common Questions About Astro.js vs WordPress for Landing Pages
Is Astro.js better than WordPress for every type of website?
No. Astro.js excels for content-first websites where performance and SEO are priorities: landing pages, clinic sites, portfolio pages, and content blogs. WordPress remains the better choice for complex e-commerce with real-time inventory, membership sites requiring user authentication, and platforms where non-technical editors need extensive layout control via a visual page builder.
Can WordPress ever match Astro.js landing page performance?
With significant effort and the right configuration — a lightweight theme, removing Elementor, using a plugin-minimal setup, installing WP Rocket, and configuring a CDN — WordPress can reach Lighthouse scores of 70–80. Scores above 85 require removing most of what makes WordPress convenient. Astro.js reaches 95–100 by default without optimization effort.
What about security? Is Astro.js safer than WordPress?
Yes, significantly. WordPress has a structural security problem: every installation includes an admin login endpoint, XML-RPC interface, and plugin ecosystem — all of which are active attack vectors. Patchstack's 2024 report found 97% of WordPress vulnerabilities originate in plugins. Astro.js static sites have no admin panel, no database, and no PHP — nothing to attack beyond the HTML itself.
Can my marketing team update an Astro.js landing page without a developer?
Yes, with the right CMS setup. Most Astro.js projects are paired with a headless CMS (Contentful, Sanity, or even a simple file-based system) that gives non-technical editors a familiar interface for updating content. The Astro frontend rebuilds automatically when content changes. The editorial experience is comparable to WordPress; the frontend performance is not.
How does the cost of Astro.js compare to WordPress over three years?
Astro.js on Cloudflare Pages has near-zero hosting cost for landing pages (under the generous free tier). WordPress on managed hosting costs Rp 500,000–2,000,000/month, plus plugin licenses and maintenance. Over three years, the total cost of ownership difference is often Rp 60–170 million — before accounting for the revenue impact of performance differences.