How to install WordPress comes down to one decision: whether your host installs it for you or you do it by hand. On almost every shared or managed host the answer is the one-click installer in your control panel, and it takes about two minutes. The manual route, what WordPress calls the famous five-minute install, is for hosts with no installer, for migrations, and for control over the database name and table prefix. Here are all four routes, which one fits you, and the errors that stop each.

Which WordPress install method should you use?

RouteTimeBest forThe catch
One-click installer (hPanel, cPanel, WP Toolkit, Softaculous)2 to 5 minutesAnyone on shared or managed hosting building a live siteSome hosts bundle plugins you did not ask for
Manual install by FTP15 to 30 minutesHosts with no installer, subfolder installs, migrations, control over the database name and prefixYou create the database, and one typo stops the install
Local install on your computer10 minutesLearning, building privately, testing a theme or plugin safelyNobody else can see it until you move it to a server
WP-CLI over SSHAbout 60 secondsDevelopers, and anyone installing WordPress oftenNeeds SSH access and WP-CLI on the server

If you are not sure, start with your host’s installer. Nothing about it locks you in: the files and database it creates are ordinary WordPress files and an ordinary database.

What your server needs before you install WordPress

RequirementMinimum WordPress statesWhat to actually aim for
PHP7.2 or greaterPHP 8.1 or newer, for speed and for security patches
DatabaseMySQL 5.7 or greater, or MariaDB 10.4 or greaterWhatever your host offers current, not a legacy 5.x option
HTTPSRecommended by WordPressRequired in practice; browsers flag sites without it
Server softwareApache or Nginx with mod_rewrite or the equivalentNeeded for pretty permalinks to work

Current figures are on the WordPress requirements page. Most hosting clears all of it, but check the PHP version before you install: a host still defaulting to PHP 7.x is telling you something about the rest of its stack.

Method 1: Install WordPress with a one-click installer

  1. Find the WordPress or Auto Installer section in your control panel. On Hostinger it is Websites then Add Website; on cPanel hosts, WP Toolkit or Softaculous.
  2. Choose the domain, and leave the directory field empty unless the site should live at a subfolder such as yoursite.com/blog.
  3. Set the admin username to something other than admin, and use the long password the installer generates.
  4. Use a real email address you check. Password resets and update notices go there, and changing it later needs a confirmation click in that same inbox.
  5. Decline any bundled plugin or theme pack, then run the install.

Check two settings after: installers leave the table prefix at wp_, and some set the timezone to the server’s, not yours.

Method 2: The manual WordPress install, step by step

  1. Download the latest release from wordpress.org/download and unzip it.
  2. Create a MySQL database and a database user, then add that user to the database with all privileges. Note the name, username, password and host; most hosts use localhost, some a hostname such as mysql.yourhost.com.
  3. Rename wp-config-sample.php to wp-config.php and fill in DB_NAME, DB_USER, DB_PASSWORD and DB_HOST.
  4. Replace the eight placeholder lines in the keys and salts block with fresh values from the WordPress salt generator. Skip it and every session on your site is signed with dummy keys.
  5. Change $table_prefix from wp_ to something short of your own. Do it now; changing it later means editing the database.
  6. Upload the contents of the wordpress folder, not the folder itself, into public_html by FTP or the file manager.
  7. Visit your domain. The install screen appears: enter the site title, admin username, password and email, then run it.

Set directories to 755, files to 644, and wp-config.php to 640. If a host tells you to set anything to 777, that is a reason to change host.

Method 3: Install WordPress on your own computer

A local install is a full copy of WordPress on your laptop, useful for learning or building privately. LocalWP and Studio by WordPress.com create a site in a few clicks and handle PHP and MySQL for you, which is why they have largely replaced manual XAMPP and MAMP setups. The site is yours alone until you move it to a server.

Method 4: Install WordPress with WP-CLI

If you have SSH access, four commands do the whole job:

wp core download
wp config create --dbname=mydb --dbuser=myuser --dbpass=mypass
wp db create
wp core install --url=example.com --title="My Site" --admin_user=adil --admin_email=you@example.com --prompt=admin_password

Learn this route if you build sites often: the same tool handles updates, user changes, domain moves, and bulk content work that would take an hour in the dashboard.

The twenty minutes after WordPress installs

  • Settings, Permalinks, Post name. The default produces URLs like ?p=123, bad for SEO titles and links and awkward to change once posts are indexed.
  • Settings, Reading. Check that “Discourage search engines from indexing this site” is unchecked. This one box is behind a large share of “my site will not appear on Google” questions.
  • Settings, General. Set your timezone, or scheduled posts publish at the wrong hour.
  • Delete what shipped with it. The Hello world post, the Sample Page, Hello Dolly and unused default themes. Unused code still needs updating.
  • Confirm HTTPS. Install the host’s free certificate and check both site URLs start with https.
  • Set up backups before you build. Know where your WordPress backups are stored and test that you can restore one.
  • Install only what you need. Security, caching and SEO plugins cover most sites; see the plugins a business site actually needs.

WordPress install errors and what they mean

What you seeWhat is actually wrongFix
Error establishing a database connectionA database value in wp-config.php is wrong, or the user was never added to the databaseRe-check DB_NAME, DB_USER, DB_PASSWORD and DB_HOST, then confirm the user has all privileges
Your PHP installation appears to be missing the MySQL extensionPHP is too old, or the mysqli extension is offSwitch the site to PHP 8.1 or newer in your control panel
A blank white pageA PHP fatal error, or too little memoryAdd define('WP_DEBUG', true); to wp-config.php to see the real message
WordPress is already installedinstall.php was run twice and the tables existGo to /wp-login.php instead; if you want a clean start, drop the tables first
The install screen never appearsFiles went one level too deepMove the contents of the wordpress folder up into public_html
Pages 404 after installRewrite rules were never writtenSettings, Permalinks, then Save Changes without altering anything

Should you install WordPress at all?

WordPress is free, it is yours, and nothing stops you moving hosts. The cost is maintenance: updates, backups and security become your job, not a platform’s. If that is work you do not want, choosing the platform first is cheaper than migrating later.

Frequently asked questions

How long does it take to install WordPress?

Two to five minutes with a host’s one-click installer, fifteen to thirty by hand including creating the database. WordPress calls the manual route the five-minute install, accurate only once the database details are ready.

Is WordPress free to install?

The software is free. You still pay for hosting, typically $3 to $15 a month, and a domain at roughly $12 to $20 a year. Premium themes and plugins are optional.

Do I need to install WordPress if I use WordPress.com?

No. WordPress.com is a hosted service with WordPress already installed. Installing it yourself applies to self-hosted WordPress, downloaded from WordPress.org.

Can I install WordPress in a subfolder?

Yes. Upload the files to a folder such as public_html/blog, or set the directory field in your host’s installer. The site then lives at yoursite.com/blog while the main domain serves something else.

What should I do if the install fails halfway?

Delete the files and drop the database tables, then start again rather than running install.php over a half-built database. A partial install is the usual cause of the “already installed” message.