Your WordPress website is slow, insecure, and expensive to maintain. You know it, your customers feel it, and Google penalizes it. The good news: migrating to Astro.js is not rocket science — when done properly. This guide walks you through the entire process, from preparation to launch, without losing SEO rankings and without sleepless nights. We have migrated dozens of WordPress sites for Swiss SMEs and are sharing everything we have learned along the way.
Why Migrate Away from WordPress?
WordPress democratized the internet. In 2006, it was revolutionary. In 2026, it is a legacy system that costs businesses more than it delivers. Here are five data-backed reasons why more and more Swiss SMEs are making the switch.
1. Performance Is No Longer a Nice-to-Have
The average WordPress website loads in 3.5 to 6 seconds. A comparable Astro.js website loads in 0.5 to 1.2 seconds. Google established Core Web Vitals as a ranking factor in 2021, and since the March 2024 Core Update, slow websites are actively demoted. According to a study by Portent, conversion rates drop by an average of 4.42% for every additional second of load time. For a Swiss SME with CHF 500,000 in online revenue, that means: every second of delay costs over CHF 22,000 per year.
2. Security Is Becoming a Business Risk
WordPress is the most attacked CMS in the world. Sucuri reports that 96.2% of all hacked CMS websites run WordPress. In 2025, over 13,000 WordPress plugins with security vulnerabilities were identified. For Swiss companies operating under the nDSG (new Data Protection Act), a data breach is not just embarrassing — it can result in fines of up to CHF 250,000.
3. Hidden Costs Spiral Out of Control
What starts as a “cheap CMS” quickly becomes expensive. Premium plugins cost CHF 100 to CHF 500 per year — per plugin. Managed WordPress hosting in Switzerland runs CHF 30 to CHF 50 per month. Regular maintenance by an agency costs CHF 150 to CHF 300 per month. Over 5 years, that adds up to CHF 25,000 to CHF 45,000 — for a simple SME website. See the details in our WordPress vs. Astro.js cost comparison.
4. AI Visibility Is the New Competitive Advantage
ChatGPT, Perplexity, and Google AI Overviews read and recommend websites. But they prefer fast, clean, semantically structured websites. WordPress themes with bloated HTML, inline styles, and plugin clutter are poorly interpreted by AI systems. Astro.js generates clean, semantic HTML that is optimally processed by LLMs. Learn more in our analysis of AI-optimized websites.
5. The Maintenance Spiral Eats Your Time
WordPress updates, plugin updates, PHP updates, theme updates, database optimizations, backup checks — an average WordPress operator spends 4 to 8 hours per month on maintenance tasks. With a static Astro.js website: zero. No server patches, no plugin conflicts, no database optimization. Your time belongs to your business again.
The Most Common WordPress Problems
Before we get to the migration process, it is worth naming the specific problems our clients report most frequently. If you recognize yourself in three or more of these points, a migration is overdue.
Security Vulnerabilities and Attacks
WordPress is built on PHP and a MySQL database. Every plugin adds potential attack code. The most common vulnerabilities include SQL injections, cross-site scripting (XSS), and brute-force attacks on wp-login.php. A typical WordPress website has 20 to 30 plugins installed — each one a potential backdoor. We regularly encounter clients whose websites were compromised without their knowledge, spreading spam or malware.
Slow Load Times
WordPress generates every page dynamically: PHP code executes, the database is queried, plugins are loaded, and the result is assembled. Even with caching plugins like WP Rocket or W3 Total Cache, the Time to First Byte (TTFB) on typical shared hosting environments sits at 600ms to 1.5 seconds. For comparison: Astro.js delivers pre-rendered HTML files with a TTFB under 100ms. Read more about the connection between website performance and revenue.
Plugin Dependency and Conflicts
Contact form? Plugin. SEO? Plugin. Caching? Plugin. Image optimization? Plugin. Multilingual? Plugin. Security? Plugin. Backup? Plugin. Each plugin loads its own CSS and JavaScript, has its own update cycles, and can conflict with other plugins. After a WordPress update, an average of 2 to 3 plugins stop working correctly. Troubleshooting can take hours and often requires technical expertise.
Hosting Costs and Server Management
WordPress requires an active server with PHP and MySQL. For acceptable performance in Switzerland, you pay at least CHF 30 per month for managed hosting. An Astro.js website runs for free on Vercel or Netlify — or for a few francs per month on any CDN. The difference over 5 years: CHF 1,800 to CHF 3,600 on hosting alone.
The Migration Process Step by Step
A WordPress migration is not a weekend project. It is a structured process that — when properly planned — makes your website better, faster, and more affordable. Here is our proven workflow.
Step 1: Audit and Inventory
Before a single line of code is written, we analyze the current state of your WordPress website.
Create a content inventory:
- List all pages and posts (title, URL, publication date)
- Export the media library (images, PDFs, videos)
- Document custom post types and taxonomies
- Save form configurations (fields, recipients, confirmations)
Technical audit:
- Measure current load times (Google PageSpeed Insights, WebPageTest)
- Record Core Web Vitals (LCP, FID/INP, CLS)
- Document active plugins and their functions
- Capture integrations (Analytics, newsletter, CRM, e-commerce)
- Save existing 301 redirects and .htaccess rules
SEO audit:
- Capture all URLs with search engine rankings (Google Search Console)
- Export meta titles and descriptions
- Document internal linking structure
- Analyze backlink profile (Ahrefs, Search Console)
- Save XML sitemap and robots.txt
This step takes 1 to 2 days but saves weeks of rework. We have seen migrations that started without an audit — 60% had to be completely redone.
Step 2: Content Export
WordPress offers a built-in XML export (WXR format). For a clean migration, that is rarely sufficient.
Our method:
- Export the WordPress database directly (mysqldump or phpMyAdmin)
- Convert content to Markdown (using tools like wordpress-export-to-markdown or wp2md)
- Export images in optimized formats (WebP, AVIF)
- Structure metadata as YAML frontmatter
- Identify shortcodes and replace them with native Astro components
Important: WordPress shortcodes like [contact-form-7 id="123"] or [gallery] do not exist in Astro. Every shortcode must be replaced by an Astro component or native HTML/CSS code. For a typical SME website, this affects 5 to 15 shortcodes.
Often underestimated: images. An average WordPress website has 200 to 500 images in the media library, many of them in multiple sizes (WordPress automatically generates thumbnails, medium, and large versions). We export only the originals and let Astro.js automatically generate optimized versions in modern formats (WebP, AVIF). This typically saves 60 to 80% of storage space and delivers significantly faster load times.
Step 3: Design and Information Architecture
The migration is the perfect opportunity to improve your website not just technically, but also visually.
What we do in this phase:
- Revise page structure (navigation, hierarchy, user journey)
- Create or optimize responsive design
- Consider accessibility (WCAG 2.2) from the start
- Plan structured data (Schema.org markup)
- Define performance budget (maximum bundle size, load times)
Most migrations result in a significantly better design because Astro.js has no theme restrictions. You are no longer bound to a rigid theme framework — you get a custom-built design instead. Check out our website redesign services.
Step 4: Development with Astro.js
This is where it gets technical. Astro.js offers several decisive advantages for former WordPress users.
Astro architecture:
- Pages as .astro files (similar to HTML templates)
- Blog posts as Markdown files (no database needed)
- Reusable components for header, footer, CTAs
- Automatic image optimization with the
<Image />component - Island architecture: interactive elements only where needed
CMS integration (optional): If your editors want to continue creating content through a graphical interface, we integrate a headless CMS. Popular options for Swiss SMEs include Keystatic (open source, Git-based), Storyblok (Swiss company), or Decap CMS (formerly Netlify CMS). More details in our headless CMS guide.
Typical development timeline: 2 to 4 weeks for a 10-page website with blog and contact form.
Step 5: Testing
Our testing checklist:
- All pages on all devices (desktop, tablet, smartphone)
- All forms tested (submission, validation, confirmation)
- Core Web Vitals verified (target: all green)
- SEO check (meta tags, structured data, sitemap)
- Accessibility test (screen reader, keyboard navigation, contrast)
- Redirect test (every old WordPress URL must redirect correctly)
- Cross-browser test (Chrome, Firefox, Safari, Edge)
- Analytics integration verified (GA4, Search Console)
A critical point: every single old URL must be tested. A 404 after migration can destroy rankings you built over years.
Step 6: Launch and DNS Cutover
On launch day, we follow a meticulous protocol.
Launch protocol:
- Create a final backup of the WordPress site
- Deploy the Astro build to production hosting (Vercel, Netlify, or Cloudflare Pages)
- Update DNS records (A record or CNAME)
- Activate SSL certificate (automatic on Vercel/Netlify)
- Activate and test 301 redirects
- Google Search Console: submit new sitemap
- Deactivate old WordPress installation (but keep it as backup for 30 days)
- Activate monitoring (uptime, Core Web Vitals, rankings)
DNS propagation typically takes 15 minutes to 4 hours. During this time, some users may still see the old website. This is normal and not a cause for concern.
Preserving SEO Rankings
The biggest fear with any migration: “What happens to my Google rankings?” The answer: Nothing — if you do it right. Here is our SEO migration protocol.
301 Redirects Are Not Optional
Every URL on your WordPress website that has ever appeared in search results must 301 redirect to the new URL. This applies not only to pages, but also to images, PDFs, and archive pages.
Typical URL changes:
/2024/03/my-blog-post/becomes/blog/my-blog-post//category/news/becomes/blog/(or an appropriate category page)/wp-content/uploads/2024/03/image.jpgbecomes/images/image.webp
With Astro.js on Vercel, we configure redirects in vercel.json. On Netlify, in the _redirects file. There is no excuse for not setting up redirects. Every missing redirect is a lost ranking factor.
Google Search Console: Your Best Friend
After launch, Google Search Console is the most important tool. You should take the following steps:
- Submit new sitemap — within the first hour after launch
- URL inspection for the 20 most important pages — request immediate indexing
- Coverage report checked daily — fix 404 errors immediately
- Core Web Vitals monitored — these should be significantly better after migration
- Ranking tracking for your top 50 keywords — first 2 weeks are critical
Typically after a clean migration we see: No ranking losses in the first 48 hours, followed by a clear improvement within 2 to 4 weeks thanks to better Core Web Vitals.
Canonical URLs and Hreflang
For multilingual websites (German/English or German/French), canonical URLs and hreflang tags must be set correctly. Astro.js makes this easier than WordPress because the URL structure is transparently mapped in the file structure.
Example for a bilingual page:
<link rel="canonical" href="https://www.example.ch/en/services/" />
<link rel="alternate" hreflang="de" href="https://www.example.ch/leistungen/" />
<link rel="alternate" hreflang="en" href="https://www.example.ch/en/services/" />
<link rel="alternate" hreflang="x-default" href="https://www.example.ch/leistungen/" />
Cost Comparison: WordPress vs. Astro.js
The following table shows the Total Cost of Ownership (TCO) over 5 years for a typical 10-page SME website with blog and contact form.
| Cost Item | WordPress (5 Years) | Astro.js (5 Years) |
|---|---|---|
| Initial development | CHF 8,000-12,000 | CHF 8,990-15,000 |
| Hosting | CHF 1,800-3,600 | CHF 0-600 |
| Plugin licenses | CHF 1,500-4,000 | CHF 0 |
| Maintenance and updates | CHF 9,000-18,000 | CHF 1,200-3,000 |
| Security measures | CHF 1,200-3,000 | CHF 0 |
| Performance optimization | CHF 1,500-3,000 | CHF 0 |
| Total (5 years) | CHF 23,000-43,600 | CHF 10,190-18,600 |
The savings amount to CHF 12,810 to CHF 25,000 over 5 years. And that is without factoring in the revenue gains from better performance and higher conversion rates. For a detailed breakdown, see our 5-year cost comparison.
Timeline: How Long Does a Migration Take?
| Phase | Duration | Description |
|---|---|---|
| Audit and planning | 1-2 weeks | Content inventory, SEO audit, technical analysis |
| Design | 1-2 weeks | Wireframes, design drafts, approval |
| Development | 2-4 weeks | Astro.js development, CMS integration, redirects |
| Content migration | 1-2 weeks | Transfer and optimize text, images, metadata |
| Testing | 1 week | Devices, browsers, SEO, accessibility, performance |
| Launch | 1 day | DNS cutover, monitoring, Search Console |
| Total | 6-11 weeks | Depending on scope and complexity |
For a typical Swiss SME website, we estimate 6 to 8 weeks from kickoff to launch. More complex projects with e-commerce or extensive custom functionality can take 10 to 14 weeks. See our current packages and prices on the pricing page.
Feature Comparison
| Feature | WordPress | Astro.js |
|---|---|---|
| Load time (typical) | 3.5-6 seconds | 0.5-1.2 seconds |
| Lighthouse Performance | 40-65 | 95-100 |
| Security risk | High (PHP, DB, plugins) | Minimal (static files) |
| Hosting cost/year | CHF 360-600 | CHF 0-120 |
| SEO out of the box | Medium (needs Yoast/RankMath) | High (semantic HTML) |
| AI visibility | Low (bloated code) | High (clean HTML) |
| Maintenance effort/month | 4-8 hours | 0-1 hour |
| CMS for editors | Yes (WordPress Admin) | Yes (headless CMS) |
| E-commerce | WooCommerce | Shopify/Snipcart integration |
| Multilingual | Plugin (WPML, CHF 79/year) | Native (free) |
Learn more about Astro.js as a technology and why it is the framework of choice for performance-oriented websites.
Frequently Asked Questions (FAQ)
Will I Lose My SEO Rankings?
No — if the migration is done professionally. The key is comprehensive 301 redirects from every old URL to the new one. Before the migration, we create a complete URL map and test every single redirect. In our experience, rankings stabilize within 2 to 4 weeks and then improve thanks to better Core Web Vitals and cleaner site structure. Google rewards fast websites — and Astro.js websites are on average 3 to 5 times faster than WordPress.
How Long Does the Migration Take?
6 to 8 weeks for a typical SME website with 10 to 20 pages, blog, and contact form. The biggest time consumers are not the development, but the content preparation and testing. If you already have prepared content in text documents and provide quick feedback, it can be done in 4 to 5 weeks. E-commerce migrations or websites with 50+ pages require 10 to 14 weeks.
What Happens to My WordPress Plugins?
Every plugin is replaced by a native solution. Contact forms are built with pure HTML and a service like Formspree or a custom API. SEO is natively better solved in Astro.js than with Yoast — meta tags and structured data are defined directly in code. Image optimization is handled automatically by the Astro <Image /> component. Caching is unnecessary because static files are served from a CDN. Security plugins are not needed because there is no database and no PHP code to attack.
Can I Keep My CMS?
Not WordPress itself, but the concept — absolutely. If your editors want to create content through a graphical interface, we integrate a headless CMS. Options like Keystatic, Storyblok, or Decap CMS offer a similar editor experience to WordPress — without the downsides. You write text, upload images, click “Publish,” and Astro.js automatically rebuilds the page. Learn more in our headless CMS guide.
What Does a Migration Cost?
A typical migration costs CHF 8,990 to CHF 18,000, depending on scope, design effort, and complexity. That sounds like an investment — and it is. But: you save CHF 12,000 to CHF 25,000 in ongoing costs over 5 years (hosting, plugins, maintenance, security). In most cases, the migration pays for itself within 18 to 24 months. See detailed packages and pricing on our pricing page.
Is There Any Downtime?
Virtually none. The new Astro.js website is developed in parallel with the existing WordPress website and tested on a staging URL. On launch day, only the DNS record is changed — that takes minutes. DNS propagation can take up to 4 hours, but during this time either the old or the new website is reachable. There is no moment when your website is completely offline.
Will My E-Commerce Still Work?
Yes, but differently. WooCommerce is typically replaced by a modern e-commerce solution like Shopify, Snipcart, or Medusa. The advantage: these systems specialize in e-commerce and offer better payment processing, inventory management, and checkout experiences than WooCommerce. Astro.js serves as the frontend and communicates via APIs with the e-commerce backend. For small shops (under 50 products), Snipcart is ideal; for larger ones, we recommend Shopify.
What Happens to My Blog Content?
Every single blog post is migrated. We export the content from WordPress, convert it to Markdown files, and carry over titles, text, images, metadata, and publication dates. Unlike a WordPress database, Markdown files are human-readable — you can open and edit your content in any text editor at any time, without depending on a CMS. Shortcodes are replaced by native Astro components, and embedded videos are preserved.
Do I Need Technical Knowledge?
No — that is what we are here for. You do not need to write code or understand how Astro.js works. We handle the entire migration, from planning to launch. After the migration, you receive an introduction to the workflow: how to create and edit content, how to upload images, and how to trigger the build process. If we integrate a headless CMS, the experience is comparable to WordPress — only faster and more secure.
Why Astro.js Instead of Next.js?
For content websites, Astro.js is the better choice. Next.js is a powerful framework — but it is designed for web applications, not business websites. Astro.js ships zero JavaScript to the browser by default and only adds interactive elements where they are truly needed (island architecture). The result: smaller file sizes, faster load times, and better SEO. Next.js always includes a React runtime, even for purely static pages. For an SME website with a blog, service pages, and contact form, Astro.js is the more efficient solution. Read our detailed Astro.js vs. Next.js comparison for the technical breakdown.
Conclusion: Migration as a Strategic Investment
Migrating from WordPress to Astro.js is not a purely technical decision — it is a strategic investment in your company’s future. You gain performance, security, and cost efficiency. You lose plugin chaos, maintenance stress, and the constant fear of the next hack.
The best time to migrate is now. Every month you stay on WordPress, you pay hosting costs, plugin licenses, and maintenance fees that add up. At the same time, your Core Web Vitals deteriorate relative to competitors who have already adopted modern technologies.
Ready to migrate your WordPress website to Astro.js? We are the Swiss experts for WordPress migrations. Since 2024, we have successfully migrated dozens of WordPress websites to Astro.js — with no ranking losses, no downtime, and measurable performance improvements. Check out our website redesign services or contact us for a free consultation. The initial analysis of your WordPress website is on us.