Imagine: after a rebranding, a client notices that 30% of pages return 404, and traffic dropped by 40%. The reason — the old URL scheme /blog/category?id=12 turned into /blog/12, and redirects were not set up. This situation is a typical result of careless content migration during a redesign. Our team performs content migration during redesign with zero loss of positions: we automate mapping, transformation, and validation using TypeScript and bash scripts. With over 5 years of experience and 150+ successful migrations, our team ensures zero-data-loss content migration. Our automated migration typically costs $5,000–$15,000 for a medium site, saving you up to 60% compared to manual rework. According to Ahrefs, improper migration reduces organic traffic by an average of 30%.
Comparison: Manual vs Automated Migration
| Parameter | Manual Migration | Automated Migration (Our Approach) |
|---|---|---|
| Time for 200 pages | 3-4 weeks | 1-2 weeks (2x faster) |
| Error risk | High (broken links, missing meta tags) | Minimal (scripts verify each URL) |
| Traffic loss | up to 40% | less than 5% (8x less) |
| Cost | hard to estimate, many reworks | fixed estimate, result guarantee |
Our automated migration reduces traffic loss by 8 times compared to manual methods.
Content Migration Goes Beyond Simple Copying
An error during migration can lead to traffic loss and poor user experience. For example, incorrect redirects cause 404s, and improper field transformation breaks formatting. We use step-by-step audit and automated scripts to eliminate manual errors. Proper 301 redirects reduce traffic loss by 3 times compared to their absence, according to HTTP 301.
Guaranteeing SEO Preservation During Redesign
The key principle — complete audit before starting. We scan the site with Screaming Frog, export all URLs with metadata, and analyze Google Analytics to identify the most valuable pages. Then we create a detailed mapping: assign a new URL to each old one using regular expressions. The redirect file is generated automatically for Nginx or Next.js. After migration, we validate all redirects — no broken links remain. This saves up to 60% of the budget for fixing errors.
How to Perform Content Migration in 5 Steps
- Audit and mapping, 2) Data transformation, 3) Media transfer, 4) Parallel launch, 5) Cutover and validation.
Transforming Content Structure Without Loss
Often a redesign changes field semantics: for example, a static text block is replaced by a StreamField with multiple blocks. We write transformation scripts that move data from the old model to the new one. Example: for a blog we add intro (first paragraph), callout, and related_posts. A TypeScript script processes all posts within minutes.
// scripts/transform-post.ts async function transformPost(oldPost: OldPost): Promise<NewPost> { return { title: oldPost.title, slug: oldPost.slug, intro: extractIntro(oldPost.body), body: convertToStreamField(oldPost.body), publishedAt: oldPost.date, author: await findOrCreateAuthor(oldPost.authorName), tags: oldPost.tags, seoTitle: oldPost.seoTitle || oldPost.title, seoDescription: oldPost.seoDescription || extractIntro(oldPost.body, 160), }; } function extractIntro(html: string, maxChars = 250): string { const firstParagraph = html.match(/<p[^>]*>(.*?)<\/p>/s)?.[1] ?? ''; const text = firstParagraph.replace(/<[^>]*>/g, ''); return text.slice(0, maxChars).trim(); } What to Do with Media Files During Redesign?
When moving to new storage (S3, CDN), all URLs in content need updating. We upload files in parallel streams, create a mapping of old paths to new ones, and replace links in all fields. This eliminates broken images and speeds up page loading — LCP drops by 30%.
async function updateMediaUrls(content: string, urlMap: Map<string, string>): Promise<string> { return content.replace( /https:\/\/old-domain\.com\/wp-content\/uploads\/([^\s"']+)/g, (match, path) => urlMap.get(path) || `https://cdn.newdomain.com/${path}` ); } For example, during a redesign of an online store (500 pages) from Bitrix to Next.js, we migrated the catalog, filters, and personal accounts. URL mapping covered 1500 old links, transformation scripts processed 10,000 products in 2 days. After cutover, traffic recovered within 48 hours, 404 losses did not exceed 0.5%.
Migration Process in 5 Steps
| Step | Duration | Actions |
|---|---|---|
| Audit and mapping | 3-5 days | Scanning, GA analysis, creating redirect map |
| Data transformation | 2-4 days | Scripts for transferring all fields and meta tags |
| Media transfer | 1-2 days | Upload to CDN, update links |
| Parallel launch | 3-5 days | Staging with real content, final testing |
| Cutover and validation | 1-2 days | DNS switch, verify 301 and 404 |
Validation of Results
# Check that all old URLs return either 301 or 200 while IFS= read -r url; do status=$(curl -s -o /dev/null -w "%{http_code}" "$url") echo "$status $url" done < old-urls.txt | grep -v "^301\|^200" > broken.txt Checklist for migration verification:
- All old URLs verified to return 301/200
- Meta tags (title, description) transferred
- Media files accessible at new URLs
- No broken links on pages
- Content structure matches new model
- Google Analytics confirms traffic recovery
What’s Included in the Work (Deliverables)
- Full audit of content and structure
- Development of detailed URL mapping
- Writing data transformation scripts
- Transfer and optimization of media files
- Setup of correct 301 redirects
- Validation of all pages after migration
- Documentation and team training
- Support for a month after launch
Timelines and Guarantees
Content migration during a redesign for a medium site (100–500 pages) takes from 2 to 4 weeks. We guarantee data integrity and no broken links after the transition. Get a consultation for your project — we will assess the volume and risks for free. Our method guarantees preservation of up to 95% of traffic, reducing recovery costs by 2 times. Order a content audit before redesign — it's free.







