All options at a glance

Side-by-Side

All three solutions compared on what matters: blog, shop, costs, speed, and postwachstum values.

For Your Editorials: The Content Story

~490 editorial posts are the soul of schon.ch. This is the comparison that matters most.
Current (WP + DIVI)Sol. 1 (WP headless)Sol. 2 (Ghost)Sol. 3 (Nuxt Content)
Content editorWordPress wp-adminWordPress wp-adminGhost editorNuxt Studio / Markdown
Writing experienceGutenberg + DIVI builderGutenberg (cleaner)Ghost (excellent, focused)Nuxt Studio or any text editor
Migration effortNone (stays in WP)One-time export to GhostOne-time export to markdown
Image handlingManual upload + DIVIWP media libraryGhost image cardsNuxt Image (auto-optimized)
Categories & tags16 categories (DIVI styled)16 categories (WP)Ghost tags (flexible)Frontmatter tags (flexible)
Gallery supportWP gallery + DIVIWP gallery via APIGhost gallery cardVue gallery component
RSS feedWordPress built-inWordPress built-inGhost built-inNuxt Content built-in
Newsletter tie-inPlugin (Mailchimp etc.)Plugin (Mailchimp etc.)Ghost built-in newslettersButtondown / Mailchimp / any
SEO per postYoast pluginYoast API dataGhost built-in SEOuseSeoMeta() per page
Content versioningWP revisionsWP revisionsGhost revisionsGit history (every change tracked)
Blog hosting costIncluded in WP hostingIncluded in WP hostingGhost ~$9/mo or self-hostFree (files in repo)
DIVI markup~2MB per pageGone (clean API data)Gone (migrated to Ghost)Gone (clean markdown)

For the Shop: The Revenue Story

6 products, 1 subscription, 3 shipping zones. Here's how each solution handles the shop.
Current (WooCommerce)Sol. 1 (WooCommerce)Sol. 2 (Stripe)Sol. 3 (Stripe)
Shop platformWooCommerceWooCommerce (headless)Stripe CheckoutStripe Checkout
Product managementwp-adminwp-adminStripe DashboardStripe Dashboard
SubscriptionsWooCommerce Subs (CHF 23/mo)WooCommerce Subs (CHF 23/mo)Stripe Billing (free)Stripe Billing (free)
Shipping ratesWooCommerce zonesWooCommerce zonesStripe Checkout ratesStripe Checkout rates
TWINTPluginPluginStripe nativeStripe native
Customer portalMy Account pageMy Account via APIStripe Customer PortalStripe Customer Portal
Cart needed?Yes (WooCommerce)Yes (WooCommerce)No (direct checkout)No (direct checkout)
Transaction feesPayment gateway feesPayment gateway fees2.9% + CHF 0.302.9% + CHF 0.30
Shop server costIncluded in WP hostingIncluded in WP hostingCHF 0 (Stripe hosted)CHF 0 (Stripe hosted)

For Business People: The Numbers

CurrentSol. 1Sol. 2Sol. 3
Monthly cost (total)CHF 45–80CHF 30–40CHF 9–15CHF 0–5
Setup effortAlready done4–6 weeks4–6 weeks4–6 weeks
MaintenanceHighMediumLowVery low
Speed (blog + shop)3–6 sec< 2 sec< 1 sec< 1 sec
Security riskHigherMediumLowVery low
Server needed?Yes (24/7)Yes (WP backend)Ghost onlyNo
Systems to manage1 (does everything)2 (WP + Nuxt)2 (Ghost + Stripe)1 project + Stripe

For Postwachstum Values

CurrentSol. 1Sol. 2Sol. 3
Energy consumption🔴 High (24/7 server)🟡 Medium (smaller server)🟢 Low (Ghost only)🟢 Lowest (no server)
Data minimalism� WP stores more than needed🟡 WP stores some🟢 Ghost + Stripe only🟢 Only Stripe (payments)
Open source🟢 WordPress is OS🟢 Both are OS🟡 Ghost OS, Stripe not🟢 Nuxt is OS, Stripe not
Simplicity� All-in-one (complex under the hood)🟡 Two coupled systems🟢 Clean separation🟢 Simplest possible
Vendor independence🟡 Themes/plugins lock-in🟡 Two ecosystems🟢 Content portable🟢 Markdown = ultimate portability
Carbon footprint🔴 Always-on server🟡 Smaller server🟢 Mostly static CDN🟢 Static CDN only
Build only what you need� Plugin-based (flexible but heavy)🟡 Still WP overhead🟢 Purpose-built tools🟢 Nothing unneeded

For Design People: What Changes

FeatureCurrentSolution 3
Design freedomDIVI builder templatesComplete CSS freedom
Page load~2MB per page (DIVI overhead)Light (50–200KB)
Mobile experienceDIVI responsive settingsBuilt mobile-first
TypographyDIVI font optionsAny font, full control
AnimationDIVI scroll effectsCSS/JS/Vue transitions
Image optimizationManual or pluginAutomatic (Nuxt Image)
Editorial layoutsDIVI templatesCustom Vue components

Cost Comparison Over 3 Years

Blog + shop hosting combined. Solution 3 pays for itself within a year.
CurrentSol. 1Sol. 2Sol. 3
Year 1 (incl. build)CHF 600–960CHF 5,360–8,480CHF 4,100–7,180CHF 3,500–5,560
Year 2CHF 600–960CHF 360–480CHF 108–180CHF 0–60
Year 3CHF 600–960CHF 360–480CHF 108–180CHF 0–60
3-Year TotalCHF 1,800–2,880CHF 6,080–9,440CHF 4,316–7,540CHF 3,500–5,680

Content Companion Ideas

Your editorial content deserves more than just a blog. Here are ideas that fit Solution 3.

Nuxt Content Editorial Archive

Convert all ~490 editorials to markdown with frontmatter. Full-text search, category filtering, and beautiful image galleries. Each editorial becomes a lightning-fast page with perfect SEO.

Medium effort CHF 0/mo

Nuxt Studio Visual Editor

A browser-based visual editor for your Nuxt Content files. Drag-and-drop components, live preview, and direct git commits. Write and publish without touching code.

Low effort Free tier available

Issue Archive & Flipbook

A beautiful browsable archive of all issues. Click an issue to see its editorials, covers, and table of contents. Optional: embed a PDF flipbook preview of selected pages.

Medium effort CHF 0/mo

Editorial Newsletter

Use Buttondown (free up to 100 subs) or Mailchimp to send a newsletter when new editorials are published. Ties into Stripe for subscriber-only content down the road.

Low effort CHF 0–10/mo

Behind-the-Scenes Blog

A separate blog section for shoot diaries, stylist interviews, location scouting. More personal, more frequent, more shareable on social media.

Low effort CHF 0/mo

Social Media Auto-Cards

Auto-generate Open Graph images for every editorial using @nuxt/og-image. Beautiful social cards with cover photo, title, and Schön! branding when shared.

Low effort CHF 0/mo

Our Recommendation: Solution 3

1. Your blog is the soul — and it's ready to shine

490 editorials across 16 categories. That's 98% of your site. With Nuxt Content, each editorial becomes a fast, beautiful, SEO-friendly page. Clean markup. No database. No monthly fee to host your own words.

2. Your shop is simple — and it should stay that way

6 products, 1 subscription, 3 shipping zones. Stripe handles this elegantly with zero infrastructure on your side. Simpler than WooCommerce, fewer moving parts, lower maintenance.

3. Two jobs, one project, no overhead

Blog and shop live in one Nuxt project. One deployment. One repository. One mental model. But each uses the right tool: markdown for content, Stripe for payments.

4. Running costs drop to nearly zero

From CHF 45–80/month for the combined blog + shop to CHF 0–5/month. Over 3 years, that's CHF 1,500–2,700 saved — just in hosting.

5. Security becomes simpler

No WordPress updates for the blog. No WooCommerce patches for the shop. Static files have virtually no attack surface. Stripe handles payment security.

6. Performance becomes world-class

Both editorials and shop pages load in under 1 second. For a magazine about beauty and aesthetics, speed is part of the brand.

7. Most postwachstum choice

Minimal infrastructure for the blog. Minimal infrastructure for the shop. Minimal energy, minimal data collection, minimal maintenance. Build only what you need — for both jobs.

When we would NOT recommend Solution 3

  • • If you plan to add dozens of products (merch, accessories, prints)
  • • If you need complex discount codes, gift cards, or inventory management
  • • If your team loves the WordPress admin dashboard and won't consider any alternative editing tool

For your current needs — 490 editorials and 6 products? Solution 3 handles both jobs beautifully.