Susan Snipes / Posted 2.7.2017
Why we switched a blog from HubSpot to ExpressionEngine for better SEO
When we were tasked with improving a new client’s technical SEO (search engine optimization), it didn’t take long for our attention to turn to their blog. How was the blog performing? What was working well? Where could we improve? This is the real life story about why and how we moved their blog, and what happened after we moved it.
What was the purpose of our client’s blog?
Ask a company why they have a blog, and they’ll cite some of the following reasons: attract new customers, generate leads, share expertise, improve organic search engine rankings, promote our brand voice, educate current customers, demonstrate thought leadership, express our creativity, sharpen our business focus, gain insights about our audience, or build community. All of those are great reasons to have a blog. But only one can be the primary reason for investing time and resources in creating and maintaining a quality blog.
When we asked our client the question “Why do you have a blog?” they answered, “Content marketing. We want to organically attract people to learn about our products and services.” How their blog performed in online search really mattered. They could share links to blog articles on email or social media, but for people to find their insights through online search, their blog needed high search engine rankings. With that in mind, we scrutinized their blog to see how to optimize it.
We looked at our client’s blog tools and technology.
Our client used both ExpressionEngine and HubSpot for their public-facing web pages. Their primary website ran on the ExpressionEngine Content Management System (CMS) and consisted of hundreds of unique pages and resources like white papers and case studies. They used HubSpot for email marketing and automation, landing pages, special campaigns, social media sharing, and their blog. Because their blog was on HubSpot, it ran on a subdomain (blog.theircompanyname.com). Was this location helpful, harmful, or neutral for their blog’s SEO?
What is the difference between a subdomain and a subdirectory?
Two of the most common places to locate a blog are on a subdomain and on a subdirectory. A blog on a subdomain has a URL something like blog.mycompany.com. A blog in a subdirectory would be found at a URL like www.mycompany.com/blog. We needed to analyze whether our client’s blog location on a subdomain was helping or harming their blog’s SEO.
What do experts say about a subdomain versus a subdirectory?
Google has repeatedly said there is no difference for SEO between using a separate subdomain and a folder on the main domain. For example, John Mueller from Google Webmaster Central says in this video that subdomains and subdirectories for a blog are “essentially equivalent.” However, many search engine experts disagree. One of my favorite SEO experts, Rand Fishkin of Moz (formerly SEO Moz), posted his answer to the often-asked subdomain versus subdirectory question:
Additional articles and opinions I found all point the same direction. Using subdomains with similar theming (even for very top-level terms) can seriously damage your performance. There are a limited number of instances where subdomains are good, but for SEO they are not beneficial to the main domain.
With all this background, we felt comfortable with our theory. We recommended to our client that we move their blog off the subdomain. We took the following reasons into consideration:
- Their blog’s goal was prospective customer awareness and was designed to match and act like a section on their main site.
- Their blog and main site both sought to rank for the same keywords, and were currently competing with each other.
- On the technical side, moving the blog would not be overly challenging. It required planning and execution—and no significant custom development.
- The benefits of HubSpot’s blog tools did not outweigh the gains of moving the blog to their primary URL. In fact, we would gain some technical and editing efficiencies by merging the blog to the main platform.
- We’d already tackled high-priority SEO tasks for improving the blog, such as optimizing titles, writing alt text, and managing other UX improvements.
We moved our client’s blog
from a subdomain to a subdirectory.
Undertaking a major change to a blog is a big deal. After the decision to move the blog, we made migration plans and went through the technical steps. We had the blog running on the primary website and kept it uncrawlable for a few days while we cross-checked our work. Then, we switched the DNS and turned on the redirects. The blog was live at the new location—and it was running flawlessly!
Keyword rankings changed right away after the move.
Of the hundreds of keywords we tracked for our client, 18 of them were ranking best on blog articles before the blog’s move. Google crawled the blog pages at the new subdirectory location and rankings positively changed in the first week. Rankings continued to increase over the course of the next month. Keywords that previously ranked in the top 10 had no change or slight improvements. Keywords that were ranking at lower positions, such as 70, 80, or 90, had significant gains—with several moving into top-20 positions. Since the migration, 14 weeks later, the rankings for the blog articles have held steady at their new, improved positions.
Two keywords declined in rankings, but they weren’t hurt by the subdirectory location.
Two keywords decreased as a result of the blog migration. I included them here because they are an interesting part of the blog migration. The reason they decreased was not a result of moving to a subdirectory. Rather, the article that ranked for those keywords was removed! When we did the blog migration, our client decided to remove several older blog articles, including this high-ranking one, because the contents were obsolete.
We were delighted to share our results with the client. I enjoyed being able to point to the migration to a subdirectory as the sole reason for the increases—we hadn’t made any other technical or content changes during that timeframe. The subdirectory was the clear winner for better SEO.
We learned a few things
migrating a blog to a subdirectory.
This was the largest blog migration we’d undertaken, and the first one driven by SEO.
Technically, the migration went well.
We maintained the same URI structure and set up functional and complete redirects. For example, where an old blog URL was blog.mycompany.com/blog/five-lessons-i-learned the new URL followed the same structure and was found at www.mycompany.com/blog/five-lessons-i-learned. We set up 301 redirects for the entire subdomain to match the blog URL pattern. We were able to import all the content from HubSpot to ExpressionEngine, so the bulk of the transfer was automated.
However, there were some tricky bits to sort through.
Fortunately, because the blog had less than 50 total articles, we could use HubSpot’s XML feed to import the blog content. (HubSpot only includes the 50 most recent articles in their XML feed.) We changed the URLs of links and images within the blog articles in our migration script, but HubSpot CTAs could not be easily updated because they’re built with a unique HubSpot code. We chose to convert the HubSpot CTAs to CSS buttons instead of inserting custom CTAs for each one. We also manually reviewed each article to clean up a few areas of formatting.
We gained a few benefits by moving to blog to the main site.
Our client’s ExpressionEngine site is a true CMS with tons of resources in the database that can be linked, searched, and displayed in various ways. Now that the blog is running from the same database, it is much easier to connect blogs and resources. For example, the footer of every website page shows the latest blog article automatically—instead of someone manually inserting it into the ExpressionEngine footer whenever a new blog is written. In addition, the new blog uses the same header, footer, and page template as the main site, so the navigation is seamless and automatically has the latest navigation—instead of requiring repeated manual changes in HubSpot to make it match the primary site.
If we were to do it all over again, I’d make just one change.
On one hand, it was prudent not to make the change immediately upon working together, so we could build rapport and prioritize all of the client’s online marketing improvements. However, I do wish we’d made the move a little earlier so that the client could have benefitted from their improved rankings and additional traffic even sooner.
How does this apply to your blog?
I answered some other popular questions below about blogs on subdomains and subdirectories to help you think through your own blog’s location.
Is a subdomain ever okay for a blog?
If your blog focuses on different keywords than your main site and/or has a different identity and brand, a subdomain is a fine choice. In addition, having a blog on a subdomain is better than having no blog at all. So, if having a blog on your main site would be difficult or costly and you can easily do a blog on a subdomain, go for it.
If your blog is on a subdomain should you move it to a subdirectory?
The decision to move your blog should be made by your marketing team and web team. Consider the following:
- Do you have other more important technical challenges hindering SEO that you should address first (like fixing broken links, optimizing title tags, adding alt text, and ensuring your blog loads quickly)?
- Do you have the technical skill available to do it correctly (including migrating data and properly doing URL redirects)?
- Is the blog’s primary purpose to attract new visitors via organic search? If not, I don’t recommend you move it.
HubSpot says their blog tool is designed to produce great SEO results. Is that true? And if so, why would you move away from HubSpot?
HubSpot has some really helpful tools built into their blog to make sure you have a title tag, keywords, no broken links, etc. If you ask HubSpot, they may try to convince you that you should keep your blog on HubSpot. As great as their tools are, they do not automatically make your SEO awesome. They merely help you implement SEO best practices on blog articles. You can apply these same best practices without HubSpot. Most importantly, these best practices have nothing to do with how Google prefers subdirectories over subdomains. One of the biggest challenges with a HubSpot blog is that you must run it on a subdomain if your main site is on a different CMS. And in Google’s eyes, a subdomain is not as good as a subdirectory when it comes to SEO.
Does this info still apply if you use other systems besides ExpressionEngine or HubSpot?
The same SEO benefits of using a subdirectory apply no matter what tools you use. We’ve seen many organizations successfully use a WordPress blog within a subdirectory on their primary domain. If you have a website with one CMS and want to run a separate blog system (like WordPress), put the blog in a subdirectory whenever possible.
Takeaway: If your blog’s number one goal is to attract potential customers through organic SEO, locate your blog on your primary domain for the best results.
President and Founder
Susan Snipes is the founder and president of Q Digital Studio. As a community-minded web entrepreneur, developer, and ExpressionEngine expert, Susan’s innovative approach to the web has benefited well-known companies and organizations ranging from technology, healthcare, education, nonprofits, local and regional governments, and more. For more thoughts on entrepreneurship, leadership, and inclusivity in technology, follow her on twitter @SusanSnipes.