How to Install WordPress Manually in cPanel: A Complete Step-by-Step Guide

If you run a website on a cPanel-based hosting plan, you have two main roads to getting WordPress installed: the one-click WordPress Toolkit installer or a manual installation. While the Toolkit is fast and convenient, knowing how to install WordPress manually in cPanel gives you finer control over configuration, database credentials, file permissions, and the core files themselves. This guide walks through the entire manual installation process step by step, from downloading the WordPress package to running the famous “five-minute install.”

Manual installation is especially useful when you need to set up a WordPress multisite network, use a custom database prefix, or configure advanced wp-config.php settings before the site ever goes live. It also helps you understand exactly where your files live and how the CMS connects to your database — knowledge that pays off when debugging issues down the road. Let’s get started.

Prerequisites: What You Need Before You Begin

Before touching the keyboard, make sure you have the following ready:

  • A cPanel account with login credentials (typically https://yourdomain.com/cpanel or a URL provided by your host)
  • A registered domain name pointing to your hosting account (or a subdomain / addon domain you plan to use)
  • FTP credentials or the cPanel File Manager for uploading files to the server
  • The latest WordPress zip package — download it from wordpress.org/download

That’s it. No additional tools or software are required. A stable internet connection and ten to fifteen minutes are all you need.

Step 1: Create a MySQL Database and Database User in cPanel

WordPress stores all of its content — posts, pages, user accounts, comments, and settings — in a MySQL database. Before installing the CMS, you need to create both the database and a user who can access it.

1.1. Open the MySQL Database Wizard

  1. Log into your cPanel dashboard.
  2. Scroll to the Databases section and click MySQL Database Wizard.
  3. This tool walks you through database creation, user creation, and privilege assignment in a single flow.

1.2. Name the Database and Create the User

In the wizard’s first step, enter a database name. cPanel prefixes it with your account username and an underscore — for example, youruser_wp_site. Keep it descriptive but short.

On the next screen, create a database user. Choose a strong password — ideally 16+ characters mixing uppercase, lowercase, digits, and symbols. You can use the built-in password generator and copy it somewhere safe.

1.3. Assign Privileges

The final wizard step asks you to set user privileges. Check the All Privileges box and click Next Step. WordPress needs full read and write access to the database to function correctly. Write down the three values you’ll need during installation:

  • Database name (e.g., youruser_wp_site)
  • Database username (e.g., youruser_wp_admin)
  • Database password (the strong password you created)

Keep these handy — you’ll enter them during the WordPress setup screen.

Step 2: Download WordPress and Upload the Files

2.1. Get the Latest WordPress Package

Visit wordpress.org/download and download the latest version as a .zip file. The file is typically around 20–25 MB. Do not unzip it yet — uploading the zip to your server and extracting it there is faster than uploading individual files.

2.2. Upload via cPanel File Manager

  1. In cPanel, click File Manager under the Files section.
  2. Navigate to public_html (or the document root folder for your domain). If you’re installing on a subdomain, navigate to public_html/subdomain or the subdomain’s dedicated folder.
  3. Click Upload in the toolbar and select the wordpress.zip file from your computer.
  4. Wait for the upload to complete (typically 5–15 seconds on a decent connection).
  5. Once uploaded, close the upload dialog and return to the File Manager.

2.3. Extract the Archive

  1. Right-click the wordpress.zip file in File Manager and select Extract.
  2. A dialog box confirms the extraction path — it should default to the current directory. Click Extract File(s).
  3. After extraction completes, you’ll see a new folder called wordpress containing all the CMS files.

2.4. Move Files to the Document Root

If you want WordPress to load directly at yourdomain.com rather than yourdomain.com/wordpress/, you need to move the extracted files:

  1. In File Manager, navigate into the wordpress folder.
  2. Select all files inside (not the folder itself — use Select All in the toolbar).
  3. Click Move and set the destination to public_html/ (or just ../ to go up one level).
  4. Click Move File(s). All WordPress core files now live directly in your domain root.
  5. Optionally, delete the empty wordpress folder and the wordpress.zip archive to keep things tidy.

Step 3: Run the WordPress Installation Script

With the files in place and the database ready, it’s time to run the installer.

  1. Open a browser and navigate to https://yourdomain.com/wp-admin/install.php.
  2. You’ll see the WordPress language selector. Choose your language and click Continue.
  3. WordPress checks that your server meets the minimum PHP and MySQL requirements. If everything is green, click Let’s go!
  4. On the database configuration screen, enter the three values from Step 1:
    • Database Name: youruser_wp_site
    • Username: youruser_wp_admin
    • Password: the password you created
    • Database Host: almost always localhost for cPanel setups
    • Table Prefix: Change wp_ to something unique like wp5s_ for added security
  5. Click Submit. If the credentials are correct, you’ll see a success message. Click Run the installation.
  6. The final screen asks for your site information:
    • Site Title: Your website’s name
    • Username: The admin username (avoid “admin” for security)
    • Password: Use the strong auto-generated password or create your own
    • Your Email: The admin email address for password resets and notifications
    • Search Engine Visibility: Leave unchecked unless you want to block search indexing while building the site
  7. Click Install WordPress. Within seconds, you’ll see a success screen with a login button.

Step 4: Post-Installation Security and Configuration Tips

Before announcing your site to the world, take a few minutes to lock things down:

4.1. Set Correct File Permissions

In cPanel File Manager, right-click each WordPress folder and select Change Permissions. Recommended defaults:

  • All folders: 755 (drwxr-xr-x)
  • All files: 644 (-rw-r–r–)
  • wp-config.php: 600 or 640 (restrictive, since it contains database credentials)

4.2. Enable AutoSSL in cPanel

Under the Security section in cPanel, click SSL/TLS Status and then Run AutoSSL. This provisions a free Let’s Encrypt certificate for your domain so your site serves over HTTPS. A secure connection is essential for login forms, payment pages, and SEO rankings.

4.3. Install an SSL Plugin and Enable Updates

Log into your WordPress admin dashboard and check that automatic updates are enabled under Dashboard → Updates. Install a security plugin like Wordfence or Sucuri for firewall and malware scanning — many shared cPanel hosts benefit from this extra layer of protection.

Step 5: Troubleshooting Common Manual Installation Issues

Even with careful steps, things can go wrong. Here are the most common issues and how to fix them:

“Error Establishing a Database Connection”

This usually means the database name, username, or password in wp-config.php is incorrect. Open File Manager, edit wp-config.php, and verify all three values match what you created in the MySQL Database Wizard. Also confirm the database user has been assigned to the database with all privileges.

“Headers Already Sent” Warnings

This error points to whitespace or extra characters in wp-config.php — usually after the closing ?> PHP tag. Open the file and delete any blank lines or spaces at the very end. Better yet, simply remove the ?> at the end, as it’s optional in PHP files and leaving it out prevents this class of errors.

404 Errors on Inner Pages (Permalink Issue)

After installation, your homepage might load fine but inner pages return 404s. Log into the WordPress admin, go to Settings → Permalinks, select any option (e.g., “Post name”), and click Save Changes. This rebuilds the .htaccess rewrite rules. If the file is unwritable, you’ll see a code snippet — copy that into a new .htaccess file in your public_html folder via File Manager.

Key Takeaways

  • Manual WordPress installation in cPanel gives you complete control over database credentials, file locations, and pre-install configuration — useful for multisite networks and custom setups.
  • Always create the MySQL database and user before uploading WordPress files, using cPanel’s MySQL Database Wizard for a guided experience.
  • Upload the whole WordPress zip and extract it on the server via File Manager — it’s faster than transferring hundreds of individual files over FTP.
  • Set strong, unique passwords for both the database user and the WordPress admin account to reduce the risk of automated attacks.
  • After installation, configure AutoSSL, correct file permissions (755 for folders, 644 for files), and a security plugin before promoting the site.
  • If you encounter a database connection error on first run, double-check the credentials in wp-config.php — a single typo is the most common cause.