Case study: WordPress → Ghost migration in days (not months)

How I migrated WordPress → Ghost with dry-run plans, explicit apply, verification, and receipts.

Qwayk

I migrated a large WordPress site to Ghost by letting an agent operate through safe-by-default API tools (dry-run → review → apply → verify), instead of doing months of manual work or babysitting a virtual assistant.

Why this matters

If you’re a solo builder, the bottleneck is usually not ideas. It’s repetitive ops: - copying content - fixing metadata - re-uploading images - filling SEO fields - verifying nothing broke

This is the kind of work an agent can do well, as long as you don’t let it guess in production.

The problem I had

  • WordPress export → Ghost import wasn’t clean.
  • There were repetitive tasks per post (SEO, excerpts, images, captions).
  • Manual cleanup would take a long time.
  • A VA helped, but review became the bottleneck again.

The key idea

I already trusted the agent for repetitive, detail-heavy work — as long as I could control risk.

So I used a deterministic tool layer that: - is read-first, - dry-runs before writes, - requires explicit apply flags, - verifies after changes, - and produces a plan + receipt I can audit.

What I did (high level)

1) Read the source post from WordPress (including SEO fields and media metadata). 2) Create/patch a draft in Ghost. 3) Upload images and attach them correctly. 4) Fill the editorial package (meta title/description, excerpts, captions, etc.). 5) Verify the result (read-back, and when it fits: re-run a dry-run and confirm it shows 0 changes). 6) Move to the next post.

Proof artifacts (what makes this auditable)

This workflow produces artifacts you can actually review: - a dry-run plan (what would change), - an apply receipt (what changed + verification), - and UI screenshots for spot checks.

If you want the concrete tool that enforces this, start with the Ghost API tool.

Get access

If you want the same workflow, start here: - Docs - Tools library - Safety model