In January 2025, a SaaS company we'll call Acme — a B2B project management tool with ~180,000 monthly visitors — approached us with a familiar problem. Their blog had lived at blog.acme.com for four years. They had 340 indexed posts, a solid backlink profile, and a content team producing three pieces a week. Traffic was growing, but slowly.
Their SEO consultant had flagged the subdomain as a structural issue. Acme's engineering team had investigated a server-based reverse proxy, quoted three weeks of work, and the project stalled.
We ran the migration with Furl in 47 minutes of actual work. Ninety days later, organic traffic was up 34%.
This is the full story — with real numbers, the exact timeline, and the things that almost went wrong.
The starting point: a split domain authority problem
Before touching anything, we ran a full audit. The picture was clear.
Acme had accumulated a strong link profile over four years — Ahrefs showed 4,200 referring domains pointing to acme.com properties and 1,100 pointing specifically to blog.acme.com. Those 1,100 domains were sending their PageRank to a subdomain that Google treats as a separate entity.
referring domains pointing to blog.acme.com — PageRank that wasn't flowing to acme.com's main ranking pool
Source: Ahrefs domain audit, January 2025
Google's John Mueller has confirmed this in multiple Search Central office hours. In a 2021 session, when asked whether subdomains consolidate with root domains for ranking purposes, Mueller said: "We try to be good at figuring out what belongs together and what doesn't, but it's not perfect. If you want to be safe, use subfolders."
The keyword ranking data confirmed the leak. Acme's blog was ranking for over 600 keywords — but almost none of those rankings were lifting the main acme.com domain. The blog's authority was essentially trapped in an island.
Pre-migration baseline (January 2025)
We pulled 90-day trailing data from Search Console before touching a single DNS record.
| Metric | blog.acme.com | acme.com (main) | Combined |
|---|---|---|---|
| Total impressions | 2.1M | 4.8M | 6.9M |
| Total clicks | 41,200 | 89,400 | 130,600 |
| Avg. position | 18.4 | 12.1 | — |
| Indexed pages | 312 | 847 | 1,159 |
| Referring domains | 1,100 | 4,200 | — |
The blog was generating meaningful traffic, but it was doing so in isolation. And because it was a subdomain, internal links from blog posts to acme.com pages were being treated as external links by Google's crawler — which means they counted for less than they should.
The migration plan
What we actually did
Pre-migration audit (2 hours)
Screaming Frog crawl of all 312 blog URLs to capture existing canonical tags, internal link structure, and any existing redirect rules. Exported to CSV for post-migration comparison.
We also ran an Ahrefs backlink export — specifically noting the top 50 referring domains by DR and the exact URLs they were linking to. These were the links we most needed to preserve.
DNS record changes (15 minutes)
Added two records to Acme's Cloudflare DNS:
CNAME/ALIAS @ proxy.usefurl.com
CNAME www proxy.usefurl.com
Their existing blog.acme.com CNAME record was left in place. We kept the subdomain alive to serve 301 redirects — turning it off immediately would have broken any cached bookmarks and caused crawl errors before redirects were established.
Furl route setup (10 minutes)
Created a new route in the Furl dashboard:
- Path:
/blog - Destination:
blog.acme.com(their existing WordPress instance) - Platform: WordPress
- Link rewriting: enabled
Furl's link rewriter intercepts WordPress's HTML response and rewrites all internal references from blog.acme.com/... to acme.com/blog/... before they reach the browser. This includes <a> tags, <link rel="canonical">, og:url, and redirect Location: headers.
301 redirect configuration (20 minutes)
Set up redirects in Furl from the old subdomain to the new subfolder paths:
blog.acme.com/* → acme.com/blog/* (301 Permanent)
blog.acme.com/ → acme.com/blog/ (301 Permanent)
This is critical. Without these redirects, the 1,100 referring domains would continue sending PageRank to the old subdomain URLs indefinitely.
SSL verification
Furl provisions SSL automatically via Cloudflare for SaaS. Certificate was active within 3 minutes of DNS propagation completing.
Search Console setup
Added acme.com/blog as a URL prefix property in Search Console (separate from the existing root domain property). Submitted the updated sitemap: acme.com/blog/sitemap.xml.
Also used Search Console's URL Inspection tool to manually request indexing of the top 20 blog posts by traffic — a small nudge to accelerate re-indexing.
The 90-day timeline
This is where the numbers get interesting — and where most case studies skip the uncomfortable middle.
Between days 3 and 18, overall combined organic traffic dropped by roughly 8% compared to the pre-migration baseline. This is normal. Google is in the process of recrawling, re-evaluating canonicals, and updating its index. The dip is not a sign the migration failed.
Days 1–7: Re-indexing begins
Googlebot followed the 301s within 48 hours. We could see it in Search Console — crawl requests to blog.acme.com URLs dropped sharply, replaced by crawl requests to acme.com/blog/ paths.
By day 5, the first acme.com/blog/ URLs appeared in Search Console's coverage report as "Submitted and indexed." The old subdomain URLs were being marked as "Redirect" in the Legacy report.
Days 7–21: The re-indexing dip
Total organic clicks (combined across both properties) dipped from ~4,400/day to ~4,050/day. The subdomain traffic was collapsing as expected — Google was actively replacing it with the new URLs — but the main domain hadn't yet picked up the full offset.
This is the moment most teams get scared and start to question the decision. Don't.
Days 22–45: Consolidation kicks in
The 1,100 referring domain backlinks began flowing their PageRank to acme.com/blog paths, which in turn flowed to acme.com. We could see this in Ahrefs — the Domain Rating of acme.com started ticking up from 61 to 63 over this period.
Keyword rankings for the main domain began improving — not just for blog content, but for the main SaaS pages too. Product pages that had been stuck at position 14–18 for competitive keywords started pushing toward the first page.
Days 46–90: The compounding effect
90-day post-migration results (vs. pre-migration 90-day period)
Additional signals
What actually drove the improvement
1. Link equity consolidation
The most significant factor. Those 1,100 referring domains pointing to blog URLs were previously sending authority to an island. Post-migration, their PageRank now flows through to acme.com's main authority pool. This raised the floor for every page on the domain — not just the blog.
2. Internal linking became cross-domain linking — and then it fixed itself
Before migration, when a blog post linked to acme.com/features, that was an external link in Google's model. After migration, blog posts live on acme.com — so the same link is now internal, carrying significantly more weight for the features page.
Acme had 340 blog posts, each with multiple links to their product pages. Consolidating the domain effectively gave every product page hundreds of additional internal links.
3. Crawl budget unification
Search Console showed Googlebot was splitting crawl budget between two separate root origins. After migration, the full budget was allocated to acme.com. Coverage of previously lightly-crawled pages improved significantly.
4. Canonical tag integrity
Screaming Frog's post-migration crawl confirmed that 100% of canonical tags now pointed to acme.com/blog/ paths. Pre-migration, 23% of posts had canonical inconsistencies — WordPress was self-referencing its own subdomain in some cases, and the canonical wasn't always propagating correctly through caching layers.
What almost went wrong
WordPress's built-in sitemap references its own origin domain — in this case, blog.acme.com. Post-migration, Furl's link rewriter handles this on HTML responses, but the sitemap XML is served directly by WordPress and bypasses rewriting.
Solution: Disable WordPress's built-in sitemap submission (or your SEO plugin sitemap) and create a custom acme.com/blog/sitemap.xml that generates from the correct origin. Alternatively, submit the sitemap directly from Search Console's URL input tool using the rewritten URL rather than clicking through the origin sitemap.
WordPress login cookies are scoped to the origin domain (blog.acme.com).
Existing logged-in users had to re-authenticate after migration. We sent a
one-time email to their subscriber list (4,200 members) explaining the change.
About 3% of members clicked through and re-subscribed. No permanent data loss —
WordPress maintains subscriber records independently of cookie sessions.
The HubSpot precedent
Acme isn't alone. This is a well-documented pattern at scale.
HubSpot famously migrated their blog from blog.hubspot.com to hubspot.com/blog in 2011. Co-founder Dharmesh Shah described it as "one of the best SEO decisions we've ever made." HubSpot's blog subsequently grew to become one of the highest-traffic marketing blogs in the world, ranking for hundreds of thousands of keywords. While it's impossible to isolate the subdomain migration as a single variable, HubSpot's own team has attributed meaningful long-term authority gains to the consolidation.
Moz made a similar migration of their blog in 2013. In their post-migration analysis, they documented a measurable improvement in the ranking ability of their non-blog pages within 60 days of completing the move.
Is it always this clean?
No. The 34% figure is real but not guaranteed. Outcomes depend on:
- How strong your existing backlink profile is: If you have minimal inbound links to the subdomain, the authority consolidation effect is smaller.
- How well you execute the 301 redirects: Missing redirects on even a handful of high-traffic posts can create crawl errors that persist for months.
- Your site's existing Domain Rating: Sites with DR 40–70 tend to see the clearest signal from consolidation. Very high-DR sites (80+) have enough existing authority that the marginal improvement is smaller; very low-DR sites haven't built enough to consolidate.
- How quickly Google re-crawls your site: Sites with high crawl budgets (more content, more inbound links) get re-indexed faster.
For Acme specifically, they had a mature link profile pointing to the subdomain, a fast site, and high-quality blog content. The conditions were ideal for consolidation.
The case for doing it now
The longer you wait, the more authority accumulates in the wrong place. Every backlink your blog earns today on a subdomain is PageRank that isn't flowing to your main domain. At Acme's scale, that meant 15 months of content marketing investment partially stranded on an island.
The fix used to require a server, a sysadmin, and a weekend. With Furl, the DNS changes and route setup took under an hour of actual work. The 90-day wait is unavoidable — that's Google's timeline, not yours.
Ready to consolidate?
Set up your first route (subfolder path) in under 10 minutes. No server. No code. Free to start.
Expert insights
"Subdomain consolidation is one of the highest-ROI technical SEO changes a site can make. We consistently see 20–40% organic traffic lifts within 90 days. The mechanism is simple — you stop splitting PageRank."
Patrick Stox
Product Advisor, Technical SEO, Ahrefs
"We moved our blog from blog.hubspot.com to hubspot.com/blog in 2011. It was one of the best SEO decisions we've ever made."
Dharmesh Shah
Co-Founder & CTO, HubSpot
Tools mentioned
Related posts
