Normal view

Received before yesterday

How to Migrate From Substack to WordPress in 10 Easy Steps

15 July 2025 at 10:00

I can’t tell you how many creators I’ve spoken with who feel trapped on Substack. It’s incredibly easy to get started, but that simplicity comes at a cost. As soon as you want to change a font, create a custom landing page, or add more advanced features, the platform’s limitations become frustrating fast.

And those limitations go beyond design. The deeper issue is control. On Substack, you don’t own your content, can’t control how you earn, and have limited access to your own subscribers.

That’s why so many creators are making the switch to WordPress. It gives you a lot more control over your design, monetization, and subscriber list.

After helping dozens of writers migrate from Substack to WordPress, I’ve developed a straightforward process that makes it manageable. The freedom and flexibility you’ll gain are well worth the effort.

In this guide, I’ll walk you through the entire process: moving your posts, importing your email list, setting up a powerful email system, and launching your new newsletter without losing momentum.

How to Migrate From Substack to WordPress

Why Should You Switch From Substack to WordPress?

Many creators switch from Substack to WordPress because it offers more control, flexibility, and monetization options. With WordPress, you can fully customize your site, own your email list, and add features like paid memberships, online courses, and digital product sales—all without platform fees.

Substack does a great job of marketing itself as the simple, all-in-one solution for newsletter creators. It lets you start publishing in minutes and handles the technical details for you.

But that initial convenience eventually becomes a major restriction. As your newsletter grows, you’ll reach the limits of what Substack can do.

The biggest issue is the lack of control, which means your newsletter ends up looking like everyone else’s. You can’t customize signup forms, build unique landing pages, or adjust the layout to match your brand.

Plus, there’s the challenge of monetization. Substack takes a 10% cut of every paid subscription, which adds up quickly.

You’re also locked into their subscription model, which means you can’t sell courses, digital products, or add other revenue streams directly to your site.

And ultimately, Substack controls your relationship with your audience. You can export your list, but the platform dictates how your content is delivered and what analytics you can access. With WordPress, you’re in the driver’s seat.

For full details, see our comparison of Substack vs. WordPress.

What to Expect When Migrating From Substack to WordPress

Migrating your newsletter might sound intimidating, but it’s easier than you think. I’ll break it down into clear, manageable steps.

Here’s a quick overview of what we’ll do together:

  • Set Up Your WordPress Foundation: We’ll choose a reliable host, install WordPress, and create the new home for your newsletter.
  • Export and Import Your Content: I’ll show you how to download your posts and subscriber data from Substack and move it safely into WordPress.
  • Build Your New Email System: We’ll connect your site to a professional email marketing service, giving you full control over your campaigns and automations.
  • Finalize the Migration: We’ll import your subscriber list, add redirects so you don’t lose traffic, and customize your site to match your brand.

By the end of this tutorial, you’ll have a professional newsletter platform that you fully own and control.

Step 1: Set Up Your WordPress Website

The first step is to set up the WordPress website that will serve as the new destination for your content.

To do this, you’ll need two things: a domain name and WordPress hosting. While the WordPress software is free, hosting is where your website’s files are stored online.

I always recommend Bluehost to new users. They are an officially recommended WordPress host, their support is excellent, and they make setup incredibly simple. Plus, they offer WPBeginner readers a special deal that includes a free domain name for the first year.

Alternatives: If you’d rather explore other options, Hostinger and SiteGround are also great choices. I’ve used both on other projects and had good experiences.

To get started, head over to the Bluehost website and click the ‘Get Started Now’ button.

Bluehost website

On the next screen, you’ll choose a hosting plan.

For most newsletter sites, the Basic plan has everything you need. You can always upgrade later if your needs grow.

Choose a hosting plan

After that, you’ll set up your domain name, and this part is important.

If you’re starting with a brand new domain, you can claim your free domain now by typing it into the ‘Create a new domain’ box.

But if you already have a custom domain connected to your Substack site (like mynewsletter.com), choose ‘I’ll create my domain later.’ This avoids any downtime while you complete the migration.

Why set up your domain later? 🤔 If you point your custom domain to WordPress too early, your Substack site will go offline before everything is moved over. I’ll show you exactly when and how to update it later in this guide.

After you finish signing up, Bluehost will automatically install WordPress for you.

Just log in to your Bluehost account, find your new site, and click the ‘Edit Site’ button. That will take you straight to your WordPress dashboard.

Bluehost login WordPress

If you’re using a different host or want more guidance on this part, check out our full guide on how to install WordPress.

Step 2: Install the Necessary Importer Plugins

To import your posts from Substack, you’ll need to install two free plugins. The main one is the Substack Importer, but it relies on a core tool called the WordPress Importer to work correctly.

It might sound a little technical, but I’ll walk you through the fastest way to get it set up.

Prepare the WordPress Importer

In your WordPress dashboard, go to Tools » Import. At the bottom of the list, you’ll see ‘WordPress.’ Just click the ‘Install Now’ link.

Activating the WordPress Installer

Once it finishes installing, the link will change to ‘Run Importer.’

Here’s an important step: click ‘Run Importer’ now, even though you’re not uploading anything yet. This activates the tool so the Substack Importer works later. If you skip it, you’ll get an error.

After that, you’ll land on the importer’s upload screen—but you can ignore that for now. We’re ready to install the next plugin.

Install the Substack Importer

Next, you need to install the Substack Importer plugin, which will handle the specific format of your Substack export. For detailed instructions, you can see our guide on how to install a WordPress plugin.

Because you have already activated the main WordPress Importer tool, this plugin will install correctly without any issues. Your site is now fully prepared to import your Substack content, which I’ll show you how to do in Step 4.

Step 3: Export Your Content From Substack

Now, we need to go back to Substack one last time to download all of your content. This includes your posts, drafts, and your subscriber list.

You need to log in to your Substack account and go to your publication’s dashboard. Once there, you should click on ‘Settings’ in the top menu and scroll down until you find the ‘Export’ section.

You will see an option to ‘Export your data’. Go ahead and click the ‘New export’ button.

Exporting Content and Subscribers From Substack

Substack will create a .zip file for you to download that contains all of your posts and images. This zip file will also contain a CSV file with your subscribers’ email addresses and other information. It may take a few minutes if you have a lot of content.

When the export file is ready, you will be notified by email, and you can click the ‘Download’ button to save it to your computer. This file is one of your most valuable assets, so save it somewhere safe.

Download the Exported Substack Data to Your Computer

Step 4: Import Your Posts into WordPress

Now for the exciting part! Let’s move your content onto your new WordPress website. Thanks to the plugin you installed, this process is mostly automated.

Go back to your WordPress dashboard and navigate to Tools » Import. You should now see ‘Substack’ in the list of available importers.

Click the ‘Run Importer’ link below it.

Run the Substack Importer

The plugin will ask you to upload the file you got from Substack. Click ‘Choose File’ and select the .zip file containing your post export.

The plugin also provides an optional field to enter your Substack URL. This can help with importing comments and author details, but you can leave it blank if you want.

Substack Importer Page

Then, click ‘Upload file and import’.

On the next screen, you’ll be asked to assign an author for the imported posts. You can create a new author or assign them to your existing WordPress user account.

Assigning Authors to the Imported Substack Posts

Before you continue, make sure to check the box next to ‘Download and import file attachments.’

This is an important step that tells WordPress to save all the images from your Substack posts to your new website, so nothing gets left behind.

Importing Attachments From Substack

Click ‘Submit’ to begin. The importer will now work its magic, creating new WordPress posts for each article from your Substack file. This might take a few minutes.

Once it’s finished, go to Posts » All Posts. You should see all of your Substack articles right there in WordPress! Take a moment to click on a few and make sure the content and formatting look correct.

Step 5: Set Up Your Email Newsletter System

WordPress doesn’t send email newsletters by default, which is a major difference from Substack.

Instead, you need a dedicated email marketing service to manage your subscribers and send your newsletters. This gives you far more power and flexibility.

I recommend using Constant Contact. It’s incredibly beginner-friendly, integrates perfectly with WordPress, and offers powerful features like automation and analytics that go way beyond Substack.

Constant Contact's homepage

With Constant Contact, you can segment your audience, A/B test your subject lines, create beautiful landing pages, and see detailed reports on who opens and clicks your emails.

First, you’ll need to sign up for a Constant Contact account. Once you’re in, you need to create a new email list for your subscribers.

Then, you can easily connect your WordPress website to Constant Contact using the WPForms plugin. It’s the best form builder for WordPress and lets you create beautiful newsletter signup forms that automatically add new subscribers to your Constant Contact list.

We have a complete, step-by-step guide on how to add email subscriptions to your WordPress blog. This tutorial will walk you through setting up Constant Contact, creating a signup form with WPForms, and placing it on your new website.

Step 6: Migrate Your Subscriber List

It’s time to move your most important asset: your subscribers. This step requires care to ensure a smooth transition for your readers.

Important: Before you import any contacts, I strongly recommend sending one final email from your Substack account. You should let your audience know about the move, explain the benefits, and tell them to look out for emails from your new system. This is a key step for maintaining trust and ensuring your new emails don’t get marked as spam.

You need to log in to your Constant Contact account. Then, go to the ‘Contacts’ section and look for the ‘Add Contacts’ button.

The Constant Contacts dashboard

You’ll see an option to upload from a file, as you see in the screenshot below.

First, you’ll need to unzip the export file you downloaded from Substack. Inside, look for the CSV file containing your subscribers. The filename will usually be something like email_list.your-publication-name.csv.

Importing a file into Constant Contacts

Constant Contact will guide you through mapping the columns (like matching the ’email’ column to the email field). Add these subscribers to the new list you created.

Remember, you should only email people who have given you permission. That final email you sent from Substack is a great way to respect your audience and remind them they signed up.

Once they’re imported, I recommend creating a simple welcome email sequence in Constant Contact to re-engage them on the new platform.

Step 7: Point Your Domain to WordPress

With your content and subscribers moved, you’re ready to make your new WordPress site live on your official domain. The steps depend on how you set up your domain in Step 1.

If You Registered a New Domain With Bluehost

You’re all set!

Bluehost automatically pointed the domain to your WordPress site, so you don’t need to do anything else.

If You Have a Custom Domain From Substack

Now is the time to point it to your new host. You’ll do this by changing the domain’s nameservers.

You need to find the nameservers for your new host (for example, for Bluehost, they look like ns1.bluehost.com and ns2.bluehost.com).

Log in to your domain registrar (the company where you bought the domain, like Namecheap or GoDaddy) and find the DNS or nameserver settings. Now, you need to replace the old nameservers with the new ones from your web host.

Our guide on how to change domain nameservers shows you exactly how to do this with screenshots.

Managing Nameservers in Bluehost

After you save your new nameservers, it can take a few hours for the change to update across the internet. This waiting period is called DNS propagation, and it’s perfectly normal.

Step 8: Set Up Permalinks and Redirects

This final technical step is crucial for preserving your SEO and preventing visitors from hitting ‘404 Not Found‘ errors.

Setting Up SEO-Friendly Permalinks

First, we want to make sure your new WordPress URLs are clean and SEO-friendly.

In your WordPress dashboard, go to Settings » Permalinks. Select the ‘Post name’ option and click ‘Save Changes’.

This creates simple URLs like yoursite.com/post-title, which are good for WordPress SEO.

WordPress' permalink settings

Now, WordPress ‘Post name’ permalinks are very similar to the URLs that Substack creates for your posts. That will make it much easier to redirect the old post URLs to the new ones.

Setting Up Redirects for Your Old Substack Posts

Next, you need to make sure that anyone visiting your old Substack post links will be sent to the right page on your new WordPress site. This is called a redirect, and it’s very important for SEO and user experience.

The good news is that Substack uses a consistent URL structure for posts, like yourdomain.com/p/post-name. Because your new WordPress posts will have a similar URL (yourdomain.com/post-name), you can set up a single rule to redirect all of your old posts at once.

The easiest way to do this is with the free Redirection plugin. First, install and activate the plugin. Then, go to Tools » Redirection in your WordPress dashboard.

Now, you just need to add one new redirect rule.

Redirecting Substack URLs to WordPress Post Name URLs

In the ‘Add new redirection’ section, you need to fill out the fields like this:

  • Source URL: ^/p/(.*)$
  • Target URL: /$1

After you enter the URLs, check the ‘Regex’ box. This is a very important step that tells the plugin to use the special rule.

Then, just click the ‘Add Redirect’ button.

This single rule automatically finds any link that starts with /p/ and redirects it to the same URL without the /p/.

For example, a link to yourdomain.com/p/my-first-post will now automatically go to yourdomain.com/my-first-post. This saves you from having to create redirects for every single post by hand.

Pro Tip: If you’re using the All in One SEO (AIOSEO) plugin to boost your rankings, it has a powerful Redirection Manager built right in. It makes this process even easier and is a must-have tool for any serious website owner.

Finding and Fixing Any Missed Redirects

While this regex rule will redirect most of your posts, it’s a good idea to double-check for any that might have been missed. Sometimes, WordPress will change a post’s URL slug during the import process to avoid duplicates.

For example, if you had two Substack posts with similar titles, then WordPress might change one of the new URLs to something like /my-post-title-2. The regex rule wouldn’t catch this specific case.

Luckily, the Redirection plugin makes it easy to find these broken links.

From your WordPress dashboard, go to Tools » Redirection and then click on the ‘404s’ tab. This page will log any time a visitor tries to go to a page on your site that doesn’t exist.

If you see an old Substack URL in this log, it means the redirect for that specific post didn’t work. You can simply hover over the 404 error in the list and click ‘Add redirect’ to create a manual redirect for it.

For detailed instructions, see our guide on how to easily track 404 pages and redirect them in WordPress.

Step 9: Customize Your Site and Go Live

All the technical work is done. Now for the fun part: choosing a professional theme to give your new site its look and feel.

Choosing and Customizing Your Theme

Your WordPress theme controls the entire look and feel of your site. I recommend choosing a theme that is clean, readable, and fast so that it provides a great user experience for your readers.

Free WordPress themes, in the WordPress.org plugin repository

For newsletter creators, themes like Sydney or GeneratePress are excellent choices because they are lightweight and highly customizable.

Then, just follow our guide on how to customize your WordPress theme to get the exact design you want.

You can also create a custom homepage to welcome new visitors and prominently feature your newsletter signup form.

To build trust with your readers, it’s also a good idea to add a few essential pages to your site. This makes your newsletter feel more professional and established.

I recommend creating:

  • An About Page: This is where you can share your story and explain what your newsletter is about.
  • A Contact Page: This gives your audience an easy way to get in touch with you, and you should include a contact form.
  • A Privacy Policy: This page is legally required in many places and shows readers you respect their data. We have a full guide on how to create a privacy policy in WordPress.

Once these pages are in place and you’ve tested that your site is working correctly, it’s time for the final step: setting up your newsletter and announcing your move.

Step 10: Set Up Your Paid Newsletter in WordPress

One of the best things about moving to WordPress is that you have full control over your income. Instead of paying Substack’s 10% fee, you only pay standard payment processor fees, which means you keep more of your money.

To monetize your WordPress content, you’ll need a membership plugin. I recommend MemberPress because it’s the most powerful and easy-to-use option on the market. It lets you restrict access to your content so that only paying subscribers can view your premium newsletter posts.

Once you install MemberPress, you can create different subscription levels, just like on Substack. For instance, you could offer a monthly plan and a discounted yearly plan.

To get started, you can follow our step-by-step guide on how to create a paid newsletter in WordPress. It will walk you through everything from setting up MemberPress to creating your subscription plans.

But with WordPress and MemberPress, you can go far beyond a simple paid newsletter. You can also:

This flexibility allows you to build a true membership business around your content, not just a newsletter.

For more options, you can see our guide on how to make money in WordPress.

Once you are all set up, you can send an email to your subscribers welcoming them to the new website.

Be sure to highlight the benefits of the move, like a better reading experience or new features you’ve added. This is a great way to celebrate the transition and get your readers excited about the future of your newsletter.

Learning WordPress

Congratulations on moving your newsletter to WordPress! You now have a powerful platform that can grow right along with your business.

While WordPress is powerful, you don’t need to learn everything at once. We have plenty of free resources to help you master the basics and get comfortable.

Here are the best free resources our team has created for beginners:

The more you use WordPress, the more comfortable you’ll become. Before you know it, you’ll be wondering how you ever managed with Substack’s limitations.

Alternative: Let an Expert Migrate Your Newsletter

Professional WordPress Services by WPBeginner

I’ve walked you through all the steps to move from Substack to WordPress. But I know this process can feel like a lot, especially when you’d rather focus on creating content.

If you want to save time and avoid the technical details, then letting an expert handle the migration is a great option.

Our team at WPBeginner can do all the heavy lifting for you. Our Professional Services team will handle the entire migration, from transferring your content and subscribers to setting up your new design. This way, you can focus on writing while we take care of the rest.

Another excellent and reliable service for website migrations is Seahawk Media Services. Their team of WordPress experts can also help you make a smooth transition from Substack.

Using a professional service ensures everything is moved over correctly, giving you peace of mind and a new WordPress site that’s ready to go.

Frequently Asked Questions About Migrating From Substack to WordPress (FAQs)

I know that making a move like this can bring up a lot of questions. To help you out, I’ve compiled answers to some of the most common questions I hear from creators who are making the switch from Substack to WordPress.

Will I lose my subscribers when I migrate from Substack?

No, you will not lose your subscribers. Substack allows you to export your entire subscriber list as a CSV file, which you can then import into an email marketing service like Constant Contact. It’s important to email your list before you move to let them know about the change.

Can I keep my custom domain name when moving to WordPress?

Yes, absolutely. If you have a custom domain connected to Substack, you can point it to your new WordPress hosting provider. Step 7 in this guide shows you exactly how to do that without any downtime.

Is migrating to WordPress expensive?

The initial cost involves web hosting, which can start at just a few dollars per month.

While Substack is free to start, its 10% cut of your revenue becomes far more expensive than WordPress hosting as soon as you start making money. With WordPress, you control your costs and keep 100% of your revenue.

Do I need to be a technical expert to use WordPress?

Not at all. While WordPress is more powerful than Substack, it’s designed to be user-friendly. If you can write a post in Substack, you can write a post in WordPress.

For everything else, there are tons of free resources, including our free WPBeginner videos and our blog tutorials, to guide you.

I hope this tutorial helped you successfully migrate from Substack to WordPress. You now have complete control over your newsletter, from design and functionality to subscriber relationships and monetization options.

We also have an ultimate WordPress migration guide, and you can get inspired by browsing our expert list of popular sites using WordPress as a CMS.

If you liked this article, then please subscribe to our YouTube Channel for WordPress video tutorials. You can also find us on Twitter and Facebook.

The post How to Migrate From Substack to WordPress in 10 Easy Steps first appeared on WPBeginner.

How to Migrate From Drupal to WordPress (Step by Step)

13 June 2025 at 10:00

When I first started building websites, I thought about using Drupal. It’s a strong platform, but it was too complicated and hard to learn, especially for beginners.

That’s why I chose WordPress instead. It’s powerful, easy to use, and now, it’s what I use for all my websites.

Over the years, I’ve helped many business owners and developers switch from Drupal to WordPress. I know it can feel overwhelming to move your whole website without losing content or breaking anything.

That’s why I created this simple guide to help you migrate from Drupal to WordPress safely and easily. It walks you through each step, using methods I’ve tested and improved with others who have made the same switch.

Whether your website is small or large, I’m here to help you make the change as smoothly as possible. Let’s get started together!

How to Migrate From Drupal to WordPress

Why Migrate From Drupal to WordPress?

Drupal and WordPress may look similar. But in practice, these website builders are very different.

I’ve found that Drupal, while incredibly capable, can sometimes feel complex and overpowered.

Simple content updates start taking longer than they should. Finding the right developer to make tweaks isn’t always easy or cheap. And honestly, the backend can feel overwhelming sometimes.

In my experience, WordPress is much more user-friendly, which is why I always recommend it to people looking to make a website.

Think of it as your favorite everyday tool that’s easy to pick up and intuitive to use. It makes many tasks very easy to do, like writing and publishing a new blog post, adding an image to a page, or installing a simple contact form.

Drupal, on the other hand, is more like a highly specialized toolkit. It is precise and powerful, but it can feel like overkill for your daily needs. It can be difficult to do something that’s simple in WordPress, like setting up a custom page layout.

See my comparison of Drupal vs. WordPress for more details.

Step 1. Back Up Your Drupal Website and Link Structure

Before you start migrating your Drupal site, you need to create a safe copy of everything.

It’s also a great idea to back up the link structure of your website. You’ll use this information later to make sure you don’t lose your search engine rankings.

Backing Up Your Drupal Website Using a Module

You can back up your Drupal website easily using a module, or more advanced users can do it manually (see below).

The Backup and Migrate module makes backing up a Drupal website pretty straightforward.

Just visit Administration » Extend and you will find the module in the ‘Other’ section. Simply click the checkbox next to the module and then click the ‘Install’ button at the bottom of the page.

Drupal's Administration » Extend Page

Note: If you don’t see it listed, then the module’s files haven’t yet been added to Drupal. This is a little technical, and you may need to contact your hosting provider for support.

More advanced users can install the module by using SSH. You will need to navigate in the terminal to the root directory of your Drupal installation and type in the following command:

composer require 'drupal/backup_migrate:^5.1'

Once the module is installed, you’ll find it in your Drupal admin menu. It allows you to create backups of your database, files, or both. For a full site backup, you’ll want to back up everything.

Backing Up Your Drupal Website Manually

Alternatively, if you’re comfortable with the technical side of things, then you can also back up your Drupal site manually.

First, you’ll need to back up your website files using your hosting provider’s file manager or FTP software.

When the file manager opens, click on the public_html folder in the left menu and then select your website’s folder in the left pane. You need to right-click on that folder and create the ‘Compress’ option from the menu.

Compressing Website Files Using a File Manager

When asked for a compression type, you should select the ‘Zip Archive’ option. After your website has been compressed, you can close the confirmation message.

Next, you need to find the compressed zip file in the public_html folder. Right-click the file and select the ‘Download’ option. Make sure you store this backup file in a secure location.

Downloading Your Website's Zip Archive Using a File Manager

Next, you’ll need to back up your database using phpMyAdmin. You will find this useful tool in the account dashboard of most reputable hosting providers.

For example, on Bluehost, you will find it by clicking on the Hosting tab and then scrolling down the page.

Launch phpMyAdmin

Clicking the phpMyAdmin button will launch the application in a new browser tab.

From here, click to select your Drupal database from the left column and then click on the ‘Export’ button at the top.

phpMyAdmin export database

When you are asked to select the export method, you should select ‘Custom’. It will show you all of the database tables in your Drupal website.

To create a full backup, make sure all of the tables are selected.

Select and exclude tables

You now need to scroll down to the ‘Output’ section and select the ‘Save output to a file’ option.

For compression, select the ‘zipped’ option.

Select database backup output

Finally, scroll to the bottom of the page and click the ‘Go’ button.

The compressed database file will be saved to your computer, and you can store it safely, along with the file backup you created earlier.

Backing Up Your Link Structure

Next, you need to back up your link structure. This is important for SEO and making sure that people can find your content online.

You need to make a list of all your current Drupal URLs so that you can set up redirects later in WordPress. This way, if someone clicks an old link to your Drupal website, then they’ll be automatically sent to the right page on your new WordPress site.

I like to use a Chrome extension called Link Klipper. It’s free, easy to use, and can quickly save all the links from a website. You can easily install it in your browser using the link above.

Next, you need to visit your Drupal website’s homepage in your Chrome browser. Once there, just click the Link Klipper icon in your browser toolbar and choose the option that says ‘Extract All Links’.

Download links using Klipper

Link Klipper will do its thing and grab all the links from your homepage and the pages it can find linked from there. It will download these links as a comma-separated values (CSV) file.

When you open that CSV file in Excel or Google Sheets, you’ll see a complete list of your Drupal URLs. Make sure you save this file somewhere safe because you’ll need it later.

Step 2. Installing and Setting Up WordPress

The requirements for both Drupal and self-hosted WordPress are quite similar. You’ll need a domain name and a WordPress hosting account to start with WordPress.

If you already have a domain name and website hosting account for your Drupal website, then you can use them for your WordPress website as well.

Alternatively, if you want to move to a different hosting provider, then I recommend using Bluehost, which is one of the top hosting companies recommended by WordPress. They offer WordPress hosting and a free domain name for just $1.99 a month.

Alternatives: If you’d like to explore a few other good options, then Hostinger and SiteGround are also worth considering. They both have strong reputations in the WordPress hosting world and offer good performance. For more options, see my expert pick of the best WordPress hosting providers.

For this guide, I’ll use screenshots from Bluehost to give you a visual example of the process.

You need to navigate to the Bluehost website and click the green ‘Get Started Now’ button.

Bluehost website

You’ll then land on their pricing page, which shows you different hosting plans. Their ‘Basic’ plan is perfect for most websites.

Pick a plan that suits you by clicking the ‘Select’ button under it.

Choose a hosting plan

Next, you’ll be asked about the domain name you want to use. This is your website’s address, like www.yourwebsite.com.

You need to select ‘I’ll create my domain name later.’ This gives you time to migrate everything before pointing your domain to WordPress.

Set up domain name later

Why set up a domain later? 🤔 If you already have a domain connected to your Drupal site, then choosing this option lets you set up WordPress without affecting the live site. Once everything is ready, I’ll show you how to point your domain to WordPress.

After the domain step, you’ll need to fill in your account details (name, address, and so on) and your payment information to complete the purchase.

Bluehost will then send you a confirmation email with your login details. Keep this email safe! You’ll need those details to log in to your hosting account dashboard.

When you log in to your Bluehost account for the first time, they install WordPress automatically for you.

Now, just look for the ‘Edit Site’ button in your hosting dashboard and click it. That will take you straight to your WordPress admin area, where you can manage your new website.

Bluehost login WordPress

And that’s it. You’ve now successfully installed WordPress.

Expert Tip: Working with a different hosting provider? We have a detailed WordPress installation tutorial that goes through every single step.

Step 3. Importing Your Drupal Content

To make the migration process as smooth as possible, I’ll show you how to use a free WordPress plugin called FG Drupal to WordPress. It automates a lot of the heavy lifting involved in moving content between these two platforms.

First, you need to install and activate the plugin. For more details, see my step-by-step guide on how to install a WordPress plugin.

You’ll then find the importer tool under Tools » Import in your WordPress dashboard menu. You’ll see a list of different import options. Look for ‘Drupal’ in the list and click the ‘Run Importer’ link.

The WordPress Import Page

This will launch the FG Drupal to WordPress importer. Now, you’ll need to give the importer some information about your Drupal website so it can connect and grab your content.

The first thing it will ask for is your Drupal website URL.

Entering the URL of the Drupal Site to Be Imported

Next, it needs your Drupal database details to get all your posts, pages, and other content. You’ll need to provide:

  • ⛁ Database Host: This is usually localhost if your Drupal and WordPress sites are on the same server. If not, you’ll need to get this from your Drupal hosting provider.
  • ⛁ Database Name: The name of your Drupal database.
  • ⛁ Database User: The username used to access your Drupal database.
  • ⛁ Database Password: The password for that database user.
  • ⛁ Table prefix: Drupal uses table prefixes to keep things organized in the database. You’ll need to enter your Drupal table prefix here. It’s often something like drupal_.
Entering the Database Parameters of the Drupal Website to Be Imported

You may have written this information down when you first set up your Drupal website. Otherwise, advanced users can use FTP to find the details in your Drupal settings.php file. Or simply contact your Drupal hosting provider and ask for assistance.

Once you’ve entered all the database details, click the ‘Test database connection’ button in the importer. If everything is correct, then you should see a ‘Connection successful’ message.

Drupal Database Connection Successful

Below the connection settings, you’ll see some additional options in the importer. These let you control what gets imported, like featured images, content images, and other things.

Just leave the default settings as they are for your first import.

Import Behavior Options

When you’re ready, you can start the import by clicking the big ‘Start / Resume the Import’ button. The importer will start fetching your content from your Drupal website and bringing it into WordPress. It will also import your images, blog comments, and more.

The time it takes depends on the amount of content you have. Once the import is finished, you should see a success message.

Drupal Import Completed

The FG Drupal to WordPress plugin can also help you fix internal links.

Sometimes, after a migration, links within your content might still be pointing to your old Drupal site structure. The plugin can try to update these to point to your new WordPress site.

Scroll down to the bottom of the importer page and click the ‘Modify internal links’ button.

Modify Internal Links in Drupal Imported Content

Step 4. Pointing Your Domain Name to Your New WordPress Website

Now that your content is imported into WordPress, you need to make sure people will find your new site when they type in your domain name.

If you already have a domain name for your Drupal website (like yourwebsite.com), then you want to keep using that same domain for WordPress. You need to adjust your nameservers to point to your new WordPress site.

Your new WordPress hosting provider, like BluehostHostinger, or SiteGround, will give you the nameserver information you need.

It usually looks like a pair of addresses, something like:

ns1.your-wordpress-hosting.com
ns2.your-wordpress-hosting.com

You change these settings with your domain name registrar, the company where you originally registered your domain name.

Sometimes, your domain registrar might be the same company as your hosting provider. But often, they’re separate. Common domain registrars include companies like Network Solutions and Namecheap.

You need to log in to your account at your domain registrar’s website. Once you’re logged in, find the settings for your domain name. Look for something like ‘DNS Settings’, ‘Nameservers’, ‘Domain Management’, or ‘Manage DNS’.

For example, here is the screen you will see on Bluehost.

Managing Nameservers in Bluehost

You’ll find step-by-step instructions for many popular domain registrars in my guide on how to easily change domain nameservers.

Once you’ve updated your nameservers, it takes a little while for these changes to spread across the internet. This is called DNS propagation.

DNS propagation can take anywhere from a few hours to, in some cases, up to 24-48 hours. During this time, some people might still see your old Drupal website, while others might start seeing your new WordPress site.

Step 5. Setting Up Permalinks and Redirects

Your old Drupal site had its own way of structuring URLs. WordPress does things a bit differently with permalinks.

Because the URLs for each post will be different, anyone who has a link to your old Drupal content will end up seeing a frustrating ‘404 Page Not Found’ error on your new WordPress site.

To prevent broken links, you have to set up SEO-friendly permalinks in WordPress and redirect your visitors from your old Drupal URLs to the right pages on your new WordPress site.

Setting Up WordPress Permalinks

WordPress gives you a few different options for how your website addresses (URLs) are structured. These are called permalinks.

The ‘Post name’ setting is a popular choice. It creates nice, clean URLs that usually include the title of your page or blog post. This structure can be helpful for both visitors and search engines because it makes the URL easy to read and gives a clear idea of what the page is about.

In your WordPress dashboard, go to Settings » Permalinks. You’ll see a section called ‘Common Settings’. Find the option labeled ‘Post name’ and click the radio button next to it to select it.

WordPress' permalink settings

Then, just scroll down to the bottom of the page and click the ‘Save Changes’ button. Done!

Setting Up Redirects from Your Old Drupal URLs

Now you need to set up redirects to make sure your old Drupal links still work. To do this, you will need that list of old Drupal URLs you grabbed using Link Klipper in Step 1.

Tip: If you use the premium version of FG Drupal to WordPress to import your Drupal content, then it can automatically create these redirects for you.

To set up redirects easily in WordPress, you need to install and activate a plugin called Redirection. It’s free and it makes managing redirects a breeze. If you need help, see my guide on how to install a WordPress plugin.

Once activated, you’ll find the Redirection plugin settings under Tools » Redirection in your WordPress menu.

Add New Redirection to Your Website

In the Redirection plugin interface, you’ll see fields for Source URL and Target URL:

  • Source URL is where you enter your old Drupal website URL – the one you want to redirect from. Just include the part after the domain name, like /my-old-page.
  • Target URL is where you enter the new WordPress URL for the same page. Again, just include the part after the domain name, like /my-new-page.

Make sure the ‘301 – Moved Permanently’ option is selected for the ‘Match’ type (it’s usually the default). This tells search engines that the page has permanently moved to a new location, which is important for SEO.

Finally, click the ‘Add Redirect’ button to save the redirect.

Now, you’ll need to go through your list of old Drupal URLs and repeat these steps for each URL you want to redirect. It can be a bit repetitive if you have a lot of pages, but it’s worth the effort to avoid broken links and keep your SEO intact.

For detailed instructions, see my guide on how to set up redirects in WordPress.

Alternative: Using AIOSEO for Redirects

If you’re already using the All in One SEO (AIOSEO) plugin, or if you’re planning to use it to improve your website’s SEO, then it also has a redirection manager built in.

It’s a powerful WordPress SEO plugin that lets you easily set up full site redirects, plus it offers many other features to help your website rank higher in search results.

Enter new domain address for relocation

For example, its 404 error tracking can easily catch broken links, and you can add schema markup, custom breadcrumbs, local SEO modules, and much more.

Step 6. Setting Up Your WordPress Theme

To make your WordPress website look amazing, you need to choose and install a theme. These are ready-made design templates for your site that control its appearance, including the colors, fonts, layout of your pages, and how your blog posts are displayed.

Free WordPress blog themes

There are plenty of free themes and premium themes available for every possible niche and industry you can imagine.

In my experience, clean and simple designs tend to work best for most websites. They look more professional, they’re easier for visitors to navigate, and most importantly, they put the focus where it should be: on your content.

To help you narrow things down, I put together a guide on selecting the perfect WordPress theme. It walks you through the key things to consider and helps you avoid some common traps.

Then, you can follow my step-by-step guide on how to install a WordPress theme.

Alternatively, you can easily create a custom WordPress theme using drag-and-drop with the SeedProd website builder plugin. This is a great option if you want to perfectly match your old site’s look without writing code, giving you full control over the design.

Of course, if you prefer, you can always hire professionals to design and code a completely custom WordPress website for you.

Step 7. Install Essential WordPress Plugins

WordPress plugins are easier to install than Drupal modules. Thousands are available, both free and paid. So, I created a guide on how to pick the best plugins for your website.

But first, let me introduce you to some must-have plugins that I recommend for pretty much every new WordPress site:

  • WPForms lets you create all sorts of WordPress forms – contact forms, surveys, order forms, and more. I use it on my own websites to allow readers to contact me and gather their feedback.
  • SeedProd is a powerful drag-and-drop website builder. It lets you easily customize your WordPress design, create unique page layouts, or even build a complete custom theme.
  • AIOSEO (All in One SEO) helps you optimize your blog for better search engine rankings. It’s the most powerful SEO plugin for WordPress.
  • MonsterInsights connects to Google Analytics and makes it easy to understand your traffic and visitor behavior right inside your WordPress dashboard.
  • OptinMonster helps you create popups, slide-in forms, and other opt-in forms to grow your email list and boost conversions.

You’ll find more ideas in my list of essential WordPress plugins. It’s packed with plugins I use and trust.

Alternative: Get Professional Help to Migrate Your Drupal Website

Professional WordPress Services by WPBeginner

While many of you will be able to follow this guide to migrate from Drupal to WordPress, it’s still a pretty technical project. Maybe you’re not very techy or are simply too busy to do it yourself.

If that sounds like you, then our WPBeginner professional services team can lend a hand. We’ve helped tons of people with their WordPress websites, and we can help you too.

Here are a couple of ways we can make your Drupal to WordPress migration easier:

  • Premium WordPress Support Services: Reach out to our team anytime you get stuck, have questions, or just want some personalized help with your migration. We can guide you through specific steps, troubleshoot issues, or even take over certain tasks for you.
  • Quick Site Launch Service: Want a completely fresh start with a brand new, custom WordPress website? Our Quick Site Launch service team can design and build a website from the ground up. And we can handle the whole content migration from Drupal.

If you’re curious to learn more about these services or if you just have some questions about migration in general, then we’re here to chat! You can easily get in touch with our support team on our Website Design Services page.

Bonus: Learning WordPress

Now that you have a new WordPress website, you’ll want to learn more. Luckily, we have lots of free resources to help you quickly become a WordPress pro:

  • The WPBeginner Blog is the heart of WPBeginner. It’s a WordPress learning library packed with thousands of easy-to-follow tutorials, guides, and how-to articles.
  • The WPBeginner Dictionary helps you understand all the WordPress terms and jargon, like a WordPress translator.
  • WPBeginner Videos walk you through common WordPress tasks step-by-step, visually, from basic to more advanced techniques.
  • Our WPBeginner YouTube Channel is packed with WordPress tips, tutorials, and how-tos to help you stay up-to-date with the latest WordPress goodness.
  • The WPBeginner Blueprint gives you a peek behind the scenes and shows you our recommended WordPress setup.
  • WPBeginner Deals offer exclusive discounts and coupons on WordPress themes, plugins, hosting, and more.

I hope this tutorial helped you move your site from Drupal to WordPress. You may also want to see our ultimate WordPress SEO migration checklist for beginners or our expert pick of the best WordPress migration services.

If you liked this article, then please subscribe to our YouTube Channel for WordPress video tutorials. You can also find us on Twitter and Facebook.

The post How to Migrate From Drupal to WordPress (Step by Step) first appeared on WPBeginner.

How to Move Your Site From HubSpot to WordPress (Step by Step)

21 April 2025 at 10:00

Many business owners feel stuck with HubSpot because they worry about losing their content, breaking their SEO rankings, or disrupting their email marketing. These are valid concerns – I had the same worries when I decided to migrate one of my HubSpot sites to WordPress.

The good news is that moving from HubSpot to WordPress is completely doable with the right approach. All you need is to follow the right steps in the right order.

Let me show you exactly how to move your site from HubSpot to WordPress while protecting your content, preserving your SEO rankings, and keeping your sanity intact.

How to Move Your Site From HubSpot to WordPress

Why Move Your Blog From HubSpot to WordPress?

Most people start using HubSpot because it is a powerful customer relationship manager (CRM) with marketing automation.

They tend to be really happy with it as a CRM, which doesn’t surprise me, as I love it myself. I even recommend it! See my detailed HubSpot review for more information.

However, what often happens is people start using the default blogging feature in HubSpot simply because it’s convenient. Then, they end up feeling limited.

I’ve worked with clients who started blogging on HubSpot and eventually felt the same way.

Now, I’ll be honest. HubSpot’s content management system is useful for landing pages and integrated marketing campaigns. But for blogging specifically? WordPress comes out on top.

Just making a simple design tweak or changing the layout of a post on HubSpot can feel like navigating a maze.

WordPress, on the other hand, is built for content. It started as a blogging platform and evolved into a powerhouse.

So, if blogging is a core part of your strategy, and you’re feeling a bit constrained by HubSpot, then WordPress can be super refreshing. You’ll get greater simplicity but more flexibility, more design control, and a whole lot more options to grow your blog the way you want.

Worried you won’t get to keep using all of HubSpot’s other powerful CRM features? The good news is that WordPress integrates seamlessly with the platform, so that won’t be an issue.

What to Expect When Migrating From HubSpot to WordPress

With any significant change, it’s helpful to know what lies ahead. Here is a brief roadmap of the journey we will take together:

  • First, we’ll get prepared. Imagine it as the preparation phase when you export your content from HubSpot and set up your new WordPress environment.
  • Then comes the actual migration. We’ll guide you through moving your valuable blog posts and important pages, and all the images that make your blog visually engaging.
  • Next, we’ll focus on maintaining your SEO. This is like making sure your mail is properly forwarded when you move. We’ll help you set up permalinks and redirects to avoid broken links and maintain your search engine rankings.
  • Finally, we’ll cover post-migration tasks. Think of this as settling into your new WordPress home. We’ll recommend some essential plugins and learning resources to help you get the most from WordPress.

All that said, you’re probably ready to move your site from HubSpot to WordPress! Here’s how you can do it step by step:

I’ll walk you through the entire process so you’ll be able to follow along even if you’re a beginner. But, if you change your mind at any time, you can always jump to the alternative option – which is getting help from the professionals.

Step 1. Export Your HubSpot Blog Content

Before you even think about touching anything in HubSpot, the first thing you’ll need to do is export your essential content. Later in this tutorial, you will import this content into WordPress.

It’s also wise to back up the link structure of your website. I’ll show you how to do both.

Exporting Your HubSpot Blog Content

The most important step in your WordPress migration is exporting your HubSpot blog content. Luckily, HubSpot makes it pretty easy to export your blog posts in a way you can import into WordPress.

Simply go to your HubSpot account and find your blog content at Content » Blog.

Navigating to the HubSpot Blog

Now look for the ‘Export blog posts’ option on the ‘Actions’ drop-down menu.

This option will let you export your posts as a .CSV or Excel (XLS or XLSX) file. I personally like using the .CSV option because it can be easily imported into WordPress.

Exporting Blog Posts in HubSpot

Once your blog has been exported, you will receive a link to the .CSV file in your email. You will have 90 days to download the file before it expires.

Exporting your blog posts like this is a great starting point because you can easily import them into your new WordPress website.

However, the export only includes your blog content, and not other pages like landing pages or sales pages. Later in this article, I’ll show you how to recreate those pages manually.

Backing Up Your Link Structure

Backing up your blog’s link structure is super important for SEO.

For this, you’ll need to gather a list of all the web addresses (URLs) from your HubSpot blog. This is important because we’ll use this list to create redirects. Redirects help maintain the SEO benefits you’ve built up over time, even after moving to WordPress.

For this, I like using a browser extension called Link Klipper, because it’s super handy. It’s also free and works with Chrome and compatible browsers.

To get started, install Link Klipper. Then, go to your HubSpot blog homepage. Click the Link Klipper icon in your browser toolbar and choose ‘Extract All Links.’

Download links using Klipper

This will quickly grab all the links on that page and download them as a .CSV file. When you open this file in Excel or Google Sheets, you will see a list of your blog URLs.

Now, I recommend using Link Klipper as a quick and easy way to grab URLs. However, you can also use an online sitemap generator like XML-Sitemaps.com. This tool crawls your website and creates a list of URLs, which you can then export.

Sitemap generators can sometimes find more URLs than Link Klipper, as they crawl your entire site structure. XML-Sitemaps will generate the usual XML sitemaps, but also create a text file called urllist.txt containing all the URLs that you can easily use when creating redirects.

With your blog content, pages, and URLs exported, you’ve done a great job! You have a safety net and a set of files that can be imported into WordPress.

Step 2. Installing and Setting Up WordPress

You need hosting to run a WordPress website. It’s non-negotiable since it provides your site with the resources it needs to be online.

A good hosting provider is like a reliable landlord – you want them to be dependable and keep things running smoothly.

In short, WordPress hosting is where all your WordPress content and files will live. It’s what makes your blog accessible to the world.

Now, you might be thinking, ‘Can’t I just install WordPress on my current HubSpot hosting?’ Unfortunately, no. HubSpot is a closed platform. You can’t install WordPress on HubSpot.

So, you’ll need to get new hosting specifically for your WordPress blog. If you’re new to WordPress or just want a straightforward experience, I recommend Bluehost.

Right now, they’re offering a deal for WPBeginner readers that includes a free domain name and a huge discount on hosting. You can get started for just $1.99 a month.

Alternatives: Hostinger and SiteGround are also popular hosting providers. They have good reputations and offer different features and price points. It’s worth checking them out if you want to compare.

For this guide, just to show you the general process, I’ll use screenshots from Bluehost. But honestly, the steps for most good WordPress hosts are pretty similar.

You can get started by visiting the Bluehost website and clicking the ‘Get Started Now’ button.

Bluehost website

You’ll land on a page showing different hosting plans. For a new blog, especially when you’re just migrating over, the Basic plan is usually perfectly fine.

Choose a plan that fits your needs by clicking the ‘Select’ button.

Choose a hosting plan

Next up, you’ll need to set up a domain name. This is your blog’s web address, like www.yourblogname.com.

Now, you probably want to keep using the same domain name you were using with your HubSpot blog, right?

The good news is that you can! Just choose the option that says ‘Use a domain you own’ and type in your current domain name.

Choose domain name

Or, if you’re starting fresh with a new domain name, then you can choose to register a new one. This will be free for the first year.

Now, follow the steps to enter your account details and payment info and complete the purchase.

After you sign up, Bluehost (and most WordPress hosting providers) will send you a welcome email with your login details. Keep this email safe! You’ll need it to access your hosting account.

Now, here’s where picking a good WordPress hosting provider pays off.

When you log in to your Bluehost account for the first time, they will automatically install WordPress for you. I love how this streamlines setting up new WordPress websites.

From your Bluehost account page, go to ‘Websites’ then click ‘Edit Site.’

Bluehost login WordPress

That should take you right into your brand-new WordPress dashboard.

Want a more thorough walkthrough of installing WordPress? My team has created a super detailed WordPress installation tutorial if you’re curious.

Step 3. Setting Up WordPress Theme

Alright, WordPress is installed. Now for the fun part: making it look like your website. That’s where themes come in.

WordPress themes are ready-made design blueprints for your blog. They control everything visual, like the colors, the fonts, and how your blog posts are laid out. It’s like choosing the style of your new house.

WordPress has a huge collection of themes. Seriously, thousands upon thousands. Free themes, paid themes, themes for every niche imaginable.

The WordPress Theme Directory is a good place to start exploring free themes.

WordPress themes directory

But having too many choices can be a bit paralyzing. To help you narrow down the options, my team has created a helpful guide on selecting the perfect WordPress theme.

In my experience, clean, uncluttered designs tend to work best. They look professional, they’re easy for readers to navigate, and they put the focus on your content – which is the most important thing.

Once you’ve chosen and installed a theme, you’ll be ready for the next big step: actually moving your content from HubSpot into WordPress.

Step 4. Importing Your HubSpot Blog Content

This step is like unpacking your moving boxes and arranging your furniture in your new WordPress home. It’s where your blog really starts to take shape.

At this point, you’re going to take the HubSpot content you exported earlier and import it into WordPress. To do that, I’m going to use a plugin called Import any XML, CSV or Excel File to WordPress.

First, you need to install and activate the plugin in your WordPress dashboard. If you need help, see our guide on how to install a WordPress plugin.

Once the plugin is activated, navigate to the All Import » New Import page in your WordPress dashboard. Once there, you should click the ‘Upload a file’ button.

Importing Posts Into WordPress

Now, you’ll be asked to choose your import file. Remember the .CSV file you exported from HubSpot in step 1? You need to select it now and then click the ‘Import’ button.

The plugin will automatically detect the type of content you’re importing (usually “Posts” for blog posts). It’s pretty smart like that.

Importing Posts Into WordPress

Next, click the ‘Continue to Step 2’ button. You will be shown a preview of the import file and can browse through a spreadsheet view of your posts, one at a time.

Once done, click ‘Continue to Step 3’ at the top or bottom of the page.

Now comes the important part: mapping fields. This is where you tell the plugin how the columns in your .CSV file correspond to fields in WordPress. Don’t worry, you only need to do this step once, not for each post.

For example, you’ll want to drag the column from your import file that contains your blog post titles to the Title field in WordPress.

Importing Posts Into WordPress

You can do the same for the post content, tags, and any other data you exported from HubSpot. It’s like matching up labels on boxes when you’re unpacking – you want to put everything in the right place.

Once you’ve mapped all the fields, click ‘Continue to Step 4’ at the bottom of the page.

Next, you’ll be asked to set a unique identifier for your posts. This is used internally by WordPress to keep track of your imported content.

Just click the ‘Auto-detect’ button and the plugin will handle this for you.

Auto-detect unique identifier

Finally, click ‘Confirm & Run Import.’

The plugin will now start importing your content. The time it takes will depend on how much content you’re importing. For a large blog, it might take a few minutes.

Once it’s done, the plugin will show you an ‘Import Complete!’ message.

Import complete

Now, you can navigate to Posts » All Posts in your WordPress dashboard. You should see your HubSpot blog posts there! Check them out to make sure all your blog posts are imported correctly.

Step 5. Recreating HubSpot Landing Pages in WordPress

Let’s talk about those special pages you might have built in HubSpot – landing pages, sales pages, or other custom pages.

Unfortunately, these often don’t transfer perfectly with a simple import like blog posts do. HubSpot’s page structure and design elements are quite different from WordPress.

So, the best approach for these pages is to recreate them in WordPress. It might sound like extra work, but it gives you the most control over the final result and makes sure everything looks right.

Now, while you could try to rebuild these pages using the standard WordPress block editor, it’s worth considering a dedicated page builder for landing pages.

The block editor is great for creating regular content pages and blog posts. It uses a system of blocks that you can easily add and arrange to build your page. However, for more complex layouts, a page builder plugin like SeedProd offers more advanced features and flexibility.

SeedProd is a drag-and-drop page builder specifically designed for creating landing pages, sales pages, and other marketing-focused pages. It offers a more visual and intuitive way to design intricate layouts without needing to write code.

Whenever I’ve used SeedProd, I’ve found it to be very user-friendly, even if you’re not a design expert. It has a visual interface, tons of pre-designed templates, and all sorts of elements you can just drag and drop onto your page.

The first step, of course, is to install and activate the SeedProd plugin. For details, see our tutorial on how to install a WordPress plugin.

Once SeedProd is active, you can go to SeedProd » Landing Pages in your WordPress menu and then click ‘Add New Landing Page.’

Add new landing page button

SeedProd will then show you a library of templates.

Browse through them and pick a template that looks similar to the HubSpot landing page you want to recreate.

SeedProd choose template

Don’t worry about getting it exactly the same at this stage, you can customize everything later.

Next, give your new page a name and set the URL slug.

Page name and slug

Click the ‘Save and Start Editing the Page’ button to open the SeedProd page builder.

Here’s where the fun begins! You’ll see a visual drag-and-drop interface. You can click on any element on the template and edit it – change text, images, colors, fonts, everything.

SeedProd page builder UI

On the left-hand side, you’ll find a panel with all sorts of elements you can add to your page – headings, text blocks, images, videos, buttons, forms, and much more. Just drag and drop them onto your page to build your layout.

Take your original HubSpot landing page as a reference. Section by section, element by element, recreate it in SeedProd.

For more details, see our tutorial on how to create a landing page in WordPress.

Want to explore other page builder options? Thrive Architect is another excellent page builder plugin for WordPress, and it’s also very visual and drag-and-drop based.

Thrive Architect is particularly strong if you are heavily focused on marketing and sales pages. It’s built by the team behind Thrive Themes, which is known for its conversion-focused tools. It excels at creating high-converting sales pages, opt-in pages, and webinar registration pages.

If your primary goal is to build pages specifically designed to drive conversions and sales, Thrive Architect is a powerful alternative to consider.

Editing a page in Thrive Architect

Yes, recreating your HubSpot landing pages in WordPress takes a bit of hands-on work. However, it’s the most reliable way to bring those important pages over properly.

And the great news is, using a page builder like SeedProd makes the process much smoother and allows you to build even more powerful and customized landing pages in WordPress.

Step 6. Importing Your HubSpot Images to WordPress

You might notice that after importing your content, your images are still being hosted on HubSpot’s servers. You’ve copied the text over, but the images are still living at their old address.

We need to bring those images into your WordPress Media Library. Why? Because it’s much better to host your images directly within your WordPress website. It’s more reliable, often faster, and gives you more control.

Imagine if HubSpot changed its image hosting structure or, worse case, you decided to close your HubSpot account completely down the line. Your images could disappear!

You’re able to import your images using a fantastic little plugin called Auto Upload Images. Please refer to our guide on how to install a WordPress plugin if you need help.

Note: You may notice that this plugin is outdated, but I tested it for this tutorial, and it was working fine. For details, see this guide on whether you should use outdated plugins.

Once activated, you need to trigger the bulk image import using the WordPress bulk edit feature. Don’t worry, you’re not actually editing anything, but just using the bulk edit to tell WordPress to re-process your posts and pages.

Head over to Posts » All Posts in your WordPress dashboard. Select all the posts where you imported content from HubSpot. You can usually do this by checking the checkbox at the very top of the post list.

Bulk update posts

Then, in the ‘Bulk actions’ dropdown menu, choose ‘Edit’ and click the ‘Apply’ button.

A bunch of bulk edit options will appear. Don’t panic! You don’t need to change anything here. Just click the blue ‘Update’ button at the bottom.

Bulk update all posts

What this does is tell WordPress to re-save all the selected posts. And that action triggers the Auto Upload Images plugin to kick in.

The plugin will scan the content of each post, look for external image URLs (pointing to HubSpot), and then automatically download each image and import it into your WordPress Media Library.

It will then update the image URLs in your posts to point to the newly imported images in your Media Library.

Next, you need to repeat this exact same process for your Pages. Simply go to Pages » All Pages, select all your pages, choose ‘Edit’ in bulk actions, apply, and then just click ‘Update’.

If you need detailed instructions, then see my tutorial on how to easily import external images in WordPress.

After you’ve done this bulk update for both your posts and pages, go to Media » Library in your WordPress dashboard. You should see all those images from your HubSpot blog and pages in your WordPress Media Library!

Step 7. Pointing Your Domain Name to Your New WordPress Website

If you were already using a custom domain name for your HubSpot blog (like yourblogname.com), then you definitely want to keep using that same domain for your WordPress blog.

Why? Branding, for starters. You want people to find you at the same address. But also, and maybe even more importantly, for SEO.

Search engines have already associated your domain name with your content and authority. Keeping the same domain helps you maintain your search engine rankings.

To make this happen, you need to adjust your domain name settings. Specifically, you’re going to change something called nameservers.

Nameservers are like the internet’s phonebook for domain names. When someone types your domain name into their browser, the nameservers tell the internet where your website is hosted.

Right now, your domain name is likely pointing to HubSpot’s servers, where your HubSpot blog was hosted. We need to update it to point to your new WordPress hosting account.

Your WordPress hosting provider (like BluehostHostinger, or SiteGround) will give you the nameserver information you need. It usually looks like a pair of addresses, something like:

ns1.yourhostingprovider.com
ns2.yourhostingprovider.com

Your hosting provider will have the exact nameservers you need to use.

I usually find this information in my hosting account dashboard, but you can also check the welcome email they sent you when you signed up. If you’re not sure, then their support team can help you out. See the tips in my guide on how to contact WordPress support.

Okay, so where do you actually change these nameserver settings? That’s at your domain name registrar. This is the company where you registered your domain name in the first place.

Sometimes, your domain registrar is the same company as your hosting provider. But often, they are separate. Common domain registrars include companies like Domain.comNetwork Solutions, or Namecheap.

You’ll need to log in to your account at your domain registrar. Find the settings for your domain name. Look for something like ‘DNS Settings’, ‘Nameservers’, or ‘Domain Management’.

For example, if your domain is registered with Bluehost, then the nameserver settings in their domain management area will look something like this:

Managing Nameservers in Bluehost

The exact steps vary depending on your domain registrar. But the general idea is always the same: you need to replace the old nameservers (the ones pointing to HubSpot) with the new nameservers provided by your WordPress hosting company.

Our team has written a handy guide on how to easily change domain nameservers at many popular domain registrars if you need more detailed instructions.

Once you’ve updated your nameservers, it takes a little while for these changes to spread across the internet. This is called DNS propagation.

DNS propagation can take anywhere from a few hours to, in rare cases, up to 48 hours. During this time, some people might still see your old HubSpot blog, while others might start seeing your new WordPress blog. This is totally normal, don’t worry!

After DNS propagation is complete, when users enter your domain name into their browsers, they will be automatically directed to your WordPress site at its new hosting location.

Step 8. Setting Up Permalinks and Redirects

You’re in the home stretch now! You’ve moved your content and images and pointed your domain to your new WordPress blog. But there’s another really important step for a smooth migration: setting up permalinks and redirects.

Your HubSpot blog probably had its own way of creating URLs. WordPress, naturally, has its own system too, called permalinks.

And here’s the thing. It’s highly likely that your old HubSpot URLs are different from how WordPress creates URLs by default.

Without proper URL redirection from your old HubSpot blog to your new WordPress site, visitors following the old blog post URLs will encounter 404 errors. These broken links not only frustrate users but also negatively impact your search engine rankings since Google penalizes sites with too many broken links.

To fix this issue, you need to do two key things:

  • Set up SEO-friendly permalinks in WordPress so your new URLs are clean and readable.
  • Set up redirects to automatically send visitors from your old HubSpot URLs to the correct pages on your new WordPress site. It’s like setting up a forwarding address when you move house.

Let’s start with permalinks.

Setting Up WordPress Permalinks

WordPress gives you control over how your website addresses (URLs) are structured. This is managed through permalink settings.

While you can choose any permalink structure, for the sake of this example, let’s choose ‘Post name’.

‘Post name’ permalinks create clean, easy-to-understand URLs that clearly include the title of your page or blog post. It incorporates keywords from your title, providing an additional SEO advantage and making it readable for people.

For example, instead of a URL that looks like this, which gives no context at all

yourblog.com/?p=123

You get something much nicer and more informative, like:

yourblog.com/your-blog-post-title

See the difference? The second option is much clearer.

Setting this up is quick and easy. In your WordPress dashboard, go to Settings » Permalinks.

You’ll see a section called ‘Common Settings.’ Find the option labeled ‘Post name’ and select it.

WordPress' permalink settings

Then, just scroll down to the bottom of the page and click the ‘Save Changes’ button.

Done! Permalinks are set up. From now on, WordPress will use the post name structure for all your new blog posts and pages.

Setting Up Redirects From Your Old HubSpot URLs

Now for the redirects, which are extremely important for a smooth migration. Remember that list of old HubSpot URLs you grabbed using Link Klipper way back in the export step? We’re going to put it to good use.

To set up redirects in WordPress without pulling your hair out, I recommend the Redirection plugin. It’s free, it’s powerful, and it makes setting up redirects straightforward.

The first step is to install and activate the Redirection plugin. If you need help, then see our guide on how to install a WordPress plugin.

Once activated, you’ll find the Redirection plugin settings under Tools » Redirection.

In the Redirection plugin interface, you’ll see fields for Source URL and Target URL.

Add New Redirection to Your Website
  • Source URL is where you enter your old HubSpot URL. But here’s a little trick: you only need to enter the part of the URL after your domain name. For example, if your old HubSpot blog post URL was https://your-hubspot-blog.com/blog/my-awesome-post, then you’d just enter /blog/my-awesome-post.
  • Target URL is where you enter the new WordPress URL for the same content. Again, just the part after your domain name. So, if your new WordPress URL for that post is https://your-wordpress-blog.com/my-awesome-post/, then you’d enter /my-awesome-post/.

Make sure the ‘301 – Moved Permanently’ option is selected for the Redirect Type. Using a 301 redirect is important for search engine optimization, or SEO. It signals to search engines that your content has moved permanently to a new address, and it helps you preserve link equity.

Link equity is the SEO ‘value’ or authority your old pages have built up over time, and 301 redirects help transfer that valuable equity to your new WordPress pages, maintaining your search engine ranking.

Finally, click the ‘Add Redirect’ button to save your redirect.

Now, you need to go through your entire list of old HubSpot URLs and repeat these steps for each one. Yes, it can take a bit of time, especially if you have a lot of blog posts. But it’s essential for a smooth transition.

Once you’ve added all your redirects, test them! Type your old HubSpot URLs into your browser and make sure they correctly redirect you to the right pages on your new WordPress site.

Alternative: Using All in One SEO (AIOSEO) for Redirects

Now, if you’re thinking about SEO seriously (and you should!), you might want to consider All in One SEO (AIOSEO). I use this plugin on my own websites, and it’s fantastic.

Yes, it’s a premium plugin, but it’s packed with SEO features to help your blog rank higher – and it includes a really handy Redirection Manager that lets you set up full site redirects.

Enter new domain address for relocation

What I really appreciate is that AIOSEO is an all-in-one SEO powerhouse. Instead of juggling separate plugins for redirects, sitemaps, schema, and everything else SEO-related, AIOSEO puts it all in one place.

Plus, its Redirection Manager is quite powerful and makes setting up even complex redirects straightforward. It’s a real time-saver and keeps my SEO workflow streamlined.

Step 9. Add Your HubSpot CRM to WordPress

Now, if you’re like many HubSpot users, then you’re probably using HubSpot CRM to manage your leads and customer interactions. Good news! You can easily connect your new WordPress blog to your existing HubSpot CRM.

Think of it as keeping the best of both worlds – the flexibility of WordPress for your blog and the robust CRM capabilities of HubSpot.

The official HubSpot plugin lets you connect your WordPress site to your HubSpot account and unlock a bunch of useful features right within your WordPress dashboard.

The HubSpot WordPress plugin

With the HubSpot plugin, you can:

  • Capture leads from your WordPress site: Easily add HubSpot forms to your WordPress pages and blog posts to capture contact information.
  • Track website visitors: The plugin adds HubSpot tracking code to your WordPress site, showing how visitors interact with your content and identifying potential leads.
  • Access HubSpot CRM tools from WordPress: Get quick access to your HubSpot contacts, deals, and tasks directly from your WordPress admin area.
  • Use live chat: Embed your HubSpot live chat widget on your WordPress site to engage with visitors in real time.
  • Analyze your marketing performance: View HubSpot analytics dashboards within WordPress to monitor your blog’s performance and lead generation efforts.

Simply install and activate the HubSpot plugin. For more details, see our step-by-step guide on how to install a WordPress plugin.

Once activated, the plugin will add a new HubSpot menu to your WordPress admin sidebar. This will take you to the setup wizard, where you can click the ‘Sign in here’ link at the top.

hubspot dashboard

Once you have signed in, simply follow the prompts to connect the plugin to your existing HubSpot account.

After connecting, you can explore the HubSpot plugin settings to customize features like form embedding, live chat, and tracking options.

And that’s it! You’ve now integrated your WordPress blog with HubSpot CRM. You can now manage your blog content in WordPress while still making the most of HubSpot’s powerful CRM and marketing tools.

If you’d like a more detailed walkthrough of setting up HubSpot on your WordPress site, then see our guide on how to add a CRM on your WordPress site.

Bonus: Now that you’ve installed the HubSpot plugin, you can also set up HubSpot Analytics and create HubSpot forms in WordPress.

Step 10. Install Essential WordPress Plugins

One of the best things about using WordPress is that you can easily extend your site’s features with plugins.

There are thousands of WordPress plugins available, both free and paid.

At WPBeginner, we put together a guide on how to pick the best plugins for your website. It’s worth a read to learn how to evaluate plugins and pick the right ones for your specific needs.

But to get you off to a flying start, here are a few top plugins we often recommend for almost every new WordPress blog:

  • WPForms is a fantastic plugin for creating all sorts of forms – contact forms, surveys, order forms, and more. I use WPForms on my own websites and love how user-friendly it is.
  • SeedProd is a drag-and-drop website builder that makes customizing your design a breeze. You can create custom page layouts beyond your theme’s standard options.
  • AIOSEO (All in One SEO) is one of the most popular and powerful SEO plugins for WordPress. It helps you optimize your blog for better search engine rankings.
  • MonsterInsights makes it easy to understand your blog traffic and visitor behavior. It connects WordPress to Google Analytics and shows you key stats in your dashboard.
  • OptinMonster is a powerful toolkit for growing your email list and boosting conversions. It helps you create popups, slide-in forms, and other opt-in forms to capture email addresses.

For even more plugin ideas and recommendations, be sure to check out our comprehensive list of essential WordPress plugins. It’s packed with plugins we use and trust.

Alternative: Get Professional Help to Migrate Your HubSpot Website

Professional WordPress Services by WPBeginner

Okay, I’ve walked through all the steps to migrate your blog from HubSpot to WordPress. And you know what? For many of you, following these steps will be totally doable!

But let’s be real. Even with a detailed guide, moving a website from HubSpot to WordPress is still quite a technical project. And time-consuming.

Perhaps you’re not super comfortable with the website side of things. Or maybe you’re already juggling a million tasks and just want this migration done quickly, correctly, without headaches.

If that sounds like you, then WPBeginner can help. Our WordPress Website Design service team can design and build you a brand-new, custom WordPress website that’s perfectly tailored to your needs. They can handle the migration of your content from HubSpot, too.

If you’re curious to learn more about these services, or if you just have some questions, then you can easily chat with our support team on our Website Design Services page. They can give you all the details and help you figure out if professional migration help is the right path for you.

Bonus: Learning WordPress

You’ve made the move from HubSpot to the wonderful world of WordPress!

Now, you might be looking at your new WordPress dashboard and thinking, ‘Okay, this is different!’ And you’d be right. WordPress works in its own way, and it has a lot of features and options that might be new to you if you’re coming from HubSpot.

Luckily, I can recommend tons of completely free resources to help you become a WordPress pro in no time. Here are just a few that I think you’ll find super helpful:

  • WPBeginner Blog: This is the heart of WPBeginner. Think of it as your go-to library for everything WordPress. You’ll find thousands of easy-to-follow tutorials, guides, and articles.
  • WPBeginner Dictionary: WordPress has its own vocabulary! Our dictionary helps you understand all the WordPress terms and jargon.
  • WPBeginner Videos: Prefer to learn by watching? Our video tutorials walk you through common WordPress tasks step-by-step, visually.
  • WPBeginner YouTube Channel: Even more video help! Our YouTube channel is packed with WordPress tips, tutorials, and how-tos.
  • WPBeginner Blueprint: Curious about the tools and plugins we use here at WPBeginner? The Blueprint gives you a peek behind the scenes.
  • WPBeginner Deals: Who doesn’t love a good deal? In our Deals section, we gather exclusive discounts and coupons on WordPress themes, plugins, hosting, and more.

So, don’t feel overwhelmed by learning WordPress. With WPBeginner as your guide, you have all the resources you need right at your fingertips. Dive in, explore, and start enjoying the power and flexibility of WordPress!

I hope this tutorial helped you move your site from HubSpot to WordPress. You may also want to see my ultimate WordPress SEO migration checklist for beginners or my expert pick of the best WordPress migration services.

If you liked this article, then please subscribe to our YouTube Channel for WordPress video tutorials. You can also find us on Twitter and Facebook.

The post How to Move Your Site From HubSpot to WordPress (Step by Step) first appeared on WPBeginner.

❌