Services

Website Content Migration: From Content Inventory and 301 Mapping to Protecting SEO Traffic (Real Costs and a 90-Day Roadmap)

2026.08.04 · 63 views
Website Content Migration: From Content Inventory and 301 Mapping to Protecting SEO Traffic (Real Costs and a 90-Day Roadmap)

Most migration failures are not technical. They come from an incomplete URL inventory and a redirect map nobody validated. Here is the full plan, with New Taiwan Dollar costs and a post-launch roadmap.

Share:

A machine-tool parts company with a nine-year-old website finally replaced it. Three days after launch, the sales manager called: inquiry form submissions had dropped from 11 a day to 2. The old site had 418 product pages. The new one rebuilt only 96 core models. The remaining 322 URLs became 404s, and 47 of them were long-tail organic search entry points. Organic traffic fell 61% within three months and took nearly half a year to recover. The real cost of a migration is never the redesign fee.

When a formal content migration is worth it, and when it isn't

Do run a formal migration project when:

  • The old site has 100+ pages receiving search traffic (products, case studies, blog posts, technical docs)
  • You are changing domains or directory structure, or moving from example.com/tw/ to tw.example.com
  • You are leaving WordPress, Joomla, or a legacy ASP backend for a custom system or new CMS
  • A merger or rebrand means two sites must become one
  • Member records, order history, and invoice data must transfer intact

Skip it, or wait, when:

  • The site has 10–20 brochure pages and virtually no organic traffic: rewriting is cheaper than migrating
  • The old database is corrupted with no backup: that is a salvage crawl, not a migration quote
  • A major trade show or peak season falls within three months: the cutover window is too tight
  • You simply dislike the old design and have no plan to change the information architecture: swap the theme
  • More than 80% of the content is obsolete: that is a content rewrite, not a migration

Alternatives matrix: four paths and their real trade-offs

ApproachCost bandUpsideRisk
Original agency handles itNT$30,000–80,000Knows the legacy schema bestMoves only what is visible; the SEO redirect map rarely gets built
In-house copy and paste80–200 staff hoursLow cash outlayImage paths, internal links and meta tags get missed; hourly cost is usually higher
SaaS importer or pluginNT$0–15,000Fast for same-platform moves (WP to WP)Cross-platform field mapping drifts; custom fields disappear in bulk
Professional migration with SEO protectionNT$60,000–250,000Redirect map, rollback plan, post-launch monitoringLong inventory phase; requires client decisions

The full process: five stages over nine weeks

Stage 1 (weeks 1–2): content and URL inventory. Crawl the whole site with Screaming Frog and export every URL. Export 16 months of impression data from Google Search Console and landing-page traffic from GA4. Cross-reference all three into a traffic-value tier table (A: keep, B: merge, C: retire). Deliverables: master URL CSV and a tiering decision sheet in Notion for client sign-off.

Stage 2 (week 3): information architecture and the 301 map. Lock the new IA first, then fill in old URL to new URL row by row. Google Search Central is explicit that a permanent move should use 301 permanent redirects mapped page by page, not everything funnelled to the homepage. Deliverables: redirect map CSV and new IA wireframes in Figma.

Stage 3 (weeks 4–7): data conversion and build. Write migration scripts (a Laravel Artisan command or a Python batch job) to move articles, products, members and orders into the new schema; convert images to WebP and rewrite paths. Deliverables: a re-runnable script, a staging site, and a record-count reconciliation report.

Stage 4 (week 8): QA and cutover rehearsal. Crawl staging with Screaming Frog and compare page counts, titles, H1s and canonicals. Spot-check core pages with PageSpeed Insights, targeting an LCP under 2.5 seconds. Deliverables: QA checklist and rollback plan.

Stage 5 (week 9): DNS cutover and monitoring. Drop TTL to 300 seconds 48 hours ahead, switch through Cloudflare, set UptimeRobot to a one-minute check, submit the new sitemap immediately, and for domain changes use the Change of Address tool.

Full cost breakdown

  • Content and URL inventory (100–500 URLs): NT$15,000–35,000
  • Redirect map creation and implementation: NT$10,000–25,000
  • Data conversion scripts (members and orders included): NT$25,000–80,000
  • Image migration and WebP conversion: NT$8,000–20,000
  • Redesign bundled in (template rebuild): from NT$60,000, quoted separately

The hidden costs people forget:

  • Running old and new hosting in parallel for 1–2 months: NT$1,500–6,000
  • SSL: Let's Encrypt at NT$0, enterprise EV certificates at NT$5,000–15,000 per year
  • Moving corporate email (Google Workspace runs about NT$210 per user per month)
  • Re-contracting and re-testing payments and e-invoicing: ECPay's standard credit-card rate is roughly 2.75%–3.5%, and test transactions must be re-run
  • Three months of post-launch 404 repair and rank monitoring: NT$8,000–15,000 per month

Small sites (under 100 URLs) typically land at NT$45,000–80,000; mid-size sites (300–1,000 URLs) run NT$120,000–250,000. ScriptWalker's Website Migration and Content Migration service starts at NT$60,000, including inventory, the 301 map, and 30 days of post-launch monitoring.

Implementation reality vs client expectation

The client assumesWhat actually happens
Just dump the database and load it inSchemas differ, so mapping rules must be written; date formats, encoding and nulls each take a pass
Nobody looks at the old URLs anywayLong-tail pages often carry 30–50% of organic traffic; cutting them bleeds silently
We're done on launch dayLaunch is the start; index rebuilding takes 4–8 weeks to settle
The images will come across on their ownAbsolute paths embedded by the old editor do not rewrite themselves; in-body images break in bulk
Rankings will dip a little at mostWith a proper map, 5–15% recovering within 60 days; without one, 40%+ and no guarantee of recovery

Five common traps and how to avoid them

  • Redirecting everything to the homepage. Google treats it as a soft 404. Fix: map page by page, and where no match exists, redirect to the closest category page.
  • Redirect chains. A to B to C dilutes signals. Fix: flatten the final map so every rule is a single hop.
  • Unprotected staging. Indexed staging creates duplicate content. Fix: HTTP Basic auth, not robots.txt alone.
  • Internal links still pointing at old URLs. Leaning on 301s costs speed and link equity. Fix: have the migration script replace in-body links at conversion time.
  • No rollback plan. When something breaks you can only patch under pressure. Fix: keep the old host for 30 days, drop TTL to 300 seconds, take a full database snapshot.

Success metrics and the 90-day roadmap

  • Day 30: Search Console 404 count in single digits, new sitemap index coverage at 85%+, core-page LCP at or under 2.5 seconds, form submissions back to 80% of pre-migration levels.
  • Day 60: Rank comparison for the top 50 keywords complete, organic traffic back to 90–100% of pre-migration, internal links rebuilt for tier-B merged pages.
  • Day 90: Organic traffic flat or growing, conversion rate ahead of the old site, and a final cleanup of leftover redirects for retired tier-C pages.

Decision checklist

  • ☐ Does the old site have more than 100 pages?
  • ☐ Are any pages currently bringing in organic search traffic?
  • ☐ Will the URL structure change?
  • ☐ Must member or order data be preserved in full?
  • ☐ Do you have full access to the old database?
  • ☐ Do you have historical data in Search Console and GA4?
  • ☐ Is there someone who can decide which legacy content gets retired?
  • ☐ Is the next three months free of peak season or major events?
  • ☐ Do you control DNS for the domain?
  • ☐ Can you pay for the old host for another 1–2 months?
  • ☐ Are there payment or e-invoice integrations that need re-testing?
  • ☐ Are you willing to watch the data and make fixes for 90 days after launch?

Eight or more checked means you need a formal migration project, not a plugin import.

FAQ

Will migrating always hurt rankings?

There will be movement, but the size is controllable. With page-by-page 301 mapping, largely unchanged content and no performance regression, expect a 5–15% dip that recovers in 4–8 weeks. Cases that lose 40% or more almost always have an incomplete redirect map or a large batch of pages simply deleted.

How long should 301 redirects stay in place?

At least a year, and permanently if external links still point at the old URLs. Handled at the server layer (an Nginx map or Laravel middleware), the maintenance cost is near zero.

Can we redesign and migrate at the same time?

Yes, but changing URLs, layout and content simultaneously makes attribution nearly impossible when something breaks. If risk tolerance is low, migrate on the existing design first, let it stabilise for 30 days, then redesign.

What if there is no backup and only the live front end remains?

Use Screaming Frog or wget to crawl the whole site, preserving HTML, images and meta tags, then parse it into structured data with a script. That recovers 70–90% of the content, but member and order records usually cannot be recovered, so say so early.

Next step

Weighing a domain change, a platform change, or merging two sites? Do one thing first: export 16 months of URLs from Google Search Console and see how many pages are quietly bringing in traffic. That list is the foundation of the whole project. If you would like a free migration risk screening (URL count, at-risk pages, cost estimate), get in touch:

Share: