By default, you can build pages and create content within WordPress without ever having to upload any custom HTML files. That’s because the WordPress core comes with built-in content types. In addition, the WordPress theme you use will likely have its own set of pre-designed page templates that you can take advantage of to create a unique website that meets your needs.

Beyond that, there are plenty of WordPress landing page plugins you can use to create customized page templates for site visitors to land from search results, email campaigns, and even social media.

So really, there is very little need to upload HTML files to WordPress because, usually, everything you need to format your website is already there. That said, there are some reasons why you’d want to know how to upload an HTML file to WordPress, some of which go beyond uploading a template for design purposes.

That’s why in this post, I’ll show you how to upload HTML files to WordPress. I’ll also discuss in detail why you’ll want to have this skill, so no matter what, you’re prepared.

What is an HTML File?

HTML stands for Hypertext Markup Language and was first developed by Tim Berners-Lee in 1990. In short, HTML is the code used to create electronic documents on the internet, which are better known as webpages. In fact, every webpage you see on the internet was written using HTML code.

The HTML code on your site’s web pages are responsible for making sure your content’s text and images are formatted in the right way.

Without HTML, web browsers would not understand the way to visually display the structure of your website for users. However, with the right HTML code creating the foundation for your webpages, and a little CSS code for adding in some design elements, your website appears perfectly for site visitors.

What is an HTML Template?

So, you know that HTML is the code responsible for creating the structure of single webpages on the internet.

But what is an HTML template?

An HTML template is a pre-designed set of HTML files that include things like text, images, and support files for font styles and Javascript. In other words, an HTML template is a pre-made package of HTML code that you can easily upload to your website and use.

When you use an HTML template on your WordPress website, you upload the file and plug in the text and images you want the template to display on the front end of your site.

It’s important to remember that HTML templates are different than WordPress themes:

  • WordPress Themes: even though you plug in text and images into WordPress themes, they are responsible for the look and feel of your entire website. Many element changes within your site’s theme are global, meaning they apply to your entire website.
  • HTML Templates: these are standalone zip files that you upload to your website individually. They only affect the look and feel of a single webpage on your website. In other words, changes you make to one uploaded HTML template will only affect that webpage.

Unfortunately, many people don’t understand the differences between themes and HTML templates and use the terms ‘theme’ and ‘template’ interchangeably.

Why You Would Need to Upload an HTML File to WordPress

There are a few specific reasons why you might want to upload an HTML file to WordPress:

    1. You Have Your Favorites: if you were using a great HTML template on an old website and wanted to use it on your new site, you might want to upload the template to your new site rather than re-do the entire thing. This will save you time and ensure it looks exactly the same.
    2. You Want a Custom Page Layout: if your current WordPress theme doesn’t support a specific page layout, you can upload an HTML file with the design you want and customize it as needed

Lastly, you might need to verify your WordPress website with Google Search Console and want to use the recommended method of uploading a Google HTML verification file to do so.

The way your website appears in search engines, especially a big one like Google, plays a role in your success as a website owner.

That’s why tools like Google Search Console exist. With Google Search Console, you guarantee that Google will index and rank your site in relevant search results, all in the hopes of making it to the first page.

Google Search Console also provides you information about your current SERPs (search engine result pages), so you can improve your SEO efforts and earn more clickthroughs to your site.

The thing is, to use Google Search Console, you need to verify your WordPress website. And it just so happens that one of the best ways to do this is to upload a Google HTML verification file.

Now, let’s take a look at the different ways to upload an HTML file to WordPress.

1. Method: How to Upload HTML File to WordPress in the WordPress Dashboard

The first method for uploading an HTML file to WordPress we’ll look at involves the WordPress dashboard.

You’ll need nothing more than the backend of your website and an HTML template to complete this process since you’ll be uploading the HTML file directly through a post, page, or the Media Library.

To upload an HTML file through a post or page, insert a ‘File’ block in the Gutenberg Editor. Then, click Upload to upload the HTML file.

Upload HTML file in Gutenberg
Upload HTML file in Gutenberg

Here’s what it looks like if you’ve disabled Gutenberg and are using the Classic Editor. Just click Add Media and then Upload to upload your HTML file.

Choose the HTML file you want to upload and then click Insert into post. Doing this inserts the link of the file into the post or page and automatically saves it to your Media Library.

Upload HTML file in Classic Editor
Upload HTML file in Classic Editor

You can skip uploading the HTML file to a post or page in WordPress and upload it directly to your Media Library. Click Media Library in the WordPress dashboard, then Add New, and choose the HTML file from the place you have it saved (e.g., your computer, hard drive, or external storage).

Keep in mind, you might encounter an error when you upload your HTML file while using Gutenberg. This is what it will look like:

File type not permitted
File type not permitted

Check here for detailed instructions on how to fix the “Sorry, This File Type Is Not Permitted for Security Reasons” Error in WordPress.

2. Method: How to Upload HTML File to WordPress Using an FTP Client

Uploading HTML files through the WordPress dashboard is the most straightforward method. However, for large templates made up of multiple files, it’s best to use an FTP client such as FileZilla.

Using an FTP client is also helpful for times you want to work locally on a test site before pushing any changes you make to your live site. This will prevent any unnecessary downtime if something goes wrong.

To start, always create a backup of your website first because you never know what the HTML file might do when you upload it to your site.

Next, open your FTP client.

Now you’ll need to connect to your web host account by entering your FTP credentials. This information is usually found in your web hosting account. If you have trouble finding it, reach out to your host and have them help you.

If you use Kinsta hosting, first log into your MyKinsta account and click on Sites in the dashboard and then on Info to get the credentials needed.

sftp details
Get your SFPT details in MYKinsta

When you do this, you should see your credentials under SFTP/SSH. You’ll need your username, password, and port.

sftp details username password port
SFTP details

Here’s the information you’re going to need to enter into FileZilla:

  • Host: your site’s domain name preceded by “sftp://”. For example, you’ll need to enter s
  • Username: from your MyKinsta dashboard
  • Password: from your MyKinsta dashboard
  • Port: from your MyKinsta dashboard

This is what it will look like at the top of the FileZilla screen:

Logging into FileZilla
Logging into FileZilla

After you’ve entered your credentials, click Quickconnect.

Now it’s time to upload the HTML file from your computer to WordPress. Start by navigating to your website’s root folder (which contains the wp-content folder, the wp-config.php file,etc.) on the right side.

Then, go to the left side and find the HTML file you have saved. When you find it, right-click it and select Upload to add it to your website. To see all hidden files in Filezilla follow this short tutorial.

HTML file uploaded
HTML file uploaded

You’ll see the file has successfully been uploaded to WordPress. To check to make sure it is visible on your website, type your website’s URL into your browser and add the name of the HTML file to the end. For instance, it might look like

When you do this, you’ll be redirected to the new webpage you’ve created with the HTML file.

3. Method: How to Upload HTML File to WordPress Using cPanel

The last method we’re going to share with you involves using cPanel and the File Manager to upload an HTML file to WordPress.

Start by logging into your hosting account’s cPanel and accessing the File Manager.

FileManager in cPanel
FileManager in cPanel

Once you’re in the File Manager, you have two options:

    1. Create a New Folder: create a new folder in your site’s root folder to upload your HTML file to.
    2. Upload to Root Folder Directly: rather than create a new folder, upload the HTML directly to WordPress. If this is how you want to do it, unzip the HTML file where you have it saved, change the index.html folder to something new, and then rezip the file to continue uploading to WordPress. If you don’t, the HTML template will override your site’s homepage.

For this example, we’ll create a new folder since there are a few added steps when you do this.

Create a New Folder and Upload an HTML File to WordPress

First, navigate to the root folder of your website (which contains the wp-content folder, the wp-config.php file,etc.). Then click New Folder.

Selecting New Folder from File Manager settings

Name your new folder and click Create New Folder.

Creating a new folder in cPanel
Creating a new folder in cPanel

Double click on the folder you just created then click Upload to select your HTML file.

Upload button
Upload button

Once this is done, you’ll see your zipped HTML file in the folder.

Zipped HTML file
Zipped HTML file

Now you need to unzip the HTML file by right-clicking and selecting Extract.

Extract HTML file
Extract HTML file

When the modal window pops up, click Extract Files to finish the unzipping process. When the HTML file has been unzipped, you’ll see all the different files included in the template. Remember this means you’ll see things like CSS, font style files, images, and JavaScript.

Extracted HTML files
Extracted HTML files

Now all you have to do to make sure the HTML template and files were uploaded is type your site’s URL into the browser and add the new folder’s name to the end.

If you run into a 404 error, don’t worry. This is a common WordPress error and can be resolved easily.

If your server doesn’t support redirection, and the index.php file is not redirected on loading the URL in your browser, you’ll see a 404 error after uploading your HTML files.

To fix this, stay within the File Manager and access your .htaccess file by double-clicking it. Then, add the following code and save your changes:

RewriteRule ^(.*)index\.(php|html?)$ /$1 [R=301,NC,L]

This code will redirect your index.php file and load it in the browser.


WordPress is the most used Content Management system around because it gives website owners the flexibility needed to create unique websites that stand out from the competition. Being able to upload an HTML file to WordPress using any of the above-mentioned methods is just another example of how WordPress caters to the needs of site owners and gives them the freedom to customize their sites as needed.

Plus, knowing how to upload an HTML file to WordPress is just a good skill to have in case the need arises. After all, you never know when you might come across an HTML template you love or need a certain type of page layout that your theme doesn’t support.