HubSpot Content Marketing study materials
HubSpot Content Marketing study resources

Moving 900 Blog URLs Three Weeks Before a Launch

HubSpot Content Marketing · Put your knowledge to work in context.

All case studies

Moving 900 Blog URLs Three Weeks Before a Launch

Tallyfin is a B2B finance SaaS. Its blog sits on blog.tallyfin.com with 900 URLs and drives 68% of organic sessions and 41% of organic-sourced trials. The company is moving it to tallyfin.com/blog in three weeks, timed with a product launch. The blog subdomain has 1,800 referring domains; the main domain has 5,200. Sixty blog URLs have no obvious one-to-one destination: 34 are tag pages, 14 are author archives, and 12 are posts being retired. The development team has capacity for redirects but not for content work. The content lead also wants to rename the path from /blog/ to /resources/ during the same migration. Analytics runs a separate property for the subdomain, and Search Console has separate properties for the subdomain and the main domain. Nobody has inventoried backlinks to individual posts.

1. What two decisions would you push back on, and what does the pre-launch checklist look like if the deadline cannot move?

Read the worked answer

Push back on:

  1. Timing against the product launch. If organic drops after launch week, you cannot separate migration damage from launch-related site changes. If the date is immovable, freeze every other site change during migration week so there is a clean signal to read.
  2. Renaming /blog/ to /resources/ at the same time. Host change plus path change means every old URL needs a different target, and you cannot isolate which change caused a problem. Migrate 1:1 first (blog.tallyfin.com/x → tallyfin.com/blog/x), then change the path later as its own project with its own redirect map. The real risk is an incomplete map, not the folder name.

Checklist:

  • Full URL inventory with a one-to-one target for every URL. Nothing redirects to the blog homepage.
  • Redirects: single hop, 301, destination returns 200 and matches the topic. Old subdomain stays live and serving redirects for at least a year.
  • Internal links rewritten to new URLs, not left pointing at the old subdomain for redirects to catch.
  • Canonicals self-referencing; staging noindex removed; robots.txt on the new blog allows crawling.
  • Old URLs removed from sitemaps; new sitemap submitted; both GSC properties verified.
  • Analytics continuity: a property that follows users across the move so pre/post comparison is possible.
  • Full crawl of the new blog pre-launch for broken images, schema, and truncated posts.

Note that a subdomain-to-subfolder move is not a domain change, so expect your 301s and updated internal links to do the work rather than a change-of-address request.

2. Five weeks after launch the blog is down 35% in clicks and 30% in impressions, while non-blog pages are flat. Diagnose in priority order.

Read the worked answer

Non-blog pages flat means the problem is specific to the moved content, not site-wide. Triage by how often each cause is the actual culprit:

  1. Indexation. GSC Pages report on the new blog: how many of the new URLs are indexed versus expected (900 minus retired)? Check for leftover staging noindex, robots.txt blocks, and canonicals still pointing at the old subdomain. A 30% impression drop fits a block of content simply not being indexed.
  2. Redirect integrity. Sample 200 old URLs: one 301 to a 200 page on the same topic. Look for chains, 302s, homepage redirects, and old URLs still returning 200 (duplicates).
  3. Internal links. If nav, breadcrumbs, or the blog template still point at blog.tallyfin.com, crawlers and users route through redirects and equity flows to the old host. Extremely common after a CMS move.
  4. Content parity. Sample migrated posts for images, comments, structured data, word count, internal links. Truncated posts lose rankings quietly.
  5. Sitemap and crawl: new sitemap submitted, old one updated, crawl errors trending down.
  6. Backlinks: 404s where referring domains point. Compare referring domains before and after.
  7. Only then: seasonality and normal migration fluctuation.

Five weeks is early, and some dip is expected - but impressions falling 30% while non-blog pages hold steady points at items 1–4, not at waiting.

3. What do you do with the 60 orphan URLs, and which metrics tell you the migration is recovering?

Read the worked answer

34 tag pages and 14 author archives: noindex, follow; remove from the sitemap; keep them reachable for users if useful. Do not 301 them into posts - that is a semantic mismatch and passes no meaningful value. They were never ranking assets; their job now is to stop consuming crawl budget.

12 retired posts: check referring domains and organic entries per URL before deciding. With backlinks and a genuine topical successor → 301 to that successor. With no links and no traffic → 410, removed from the sitemap. A retired post with links but no sensible successor is better left live with a note that it is no longer updated than redirected to something unrelated.

Recovery metrics:

  • Indexed URL count on the new blog approaching the expected total, tracked weekly.
  • Clicks and impressions for the top 50 posts, compared per URL against the pre-migration baseline - site totals will let a few winners hide broad losses.
  • 404s and soft 404s trending to zero; redirect chains eliminated.
  • Referring domains preserved, checked with a backlink tool before and after.
  • Organic-sourced trials on the main domain, which is the number the business actually watches.

Timeline: stabilization by weeks 6–10, fuller recovery by about three months. Escalate if old URLs still serve 200 or if 404s are still climbing after week six.