How to Install WooCommerce: Complete Setup Guide
WooCommerce is the most popular ecommerce platform in the world, powering over 37% of online stores. It is free, open source, and runs on any WordPress installation. The combination of zero licensing cost, an enormous plugin ecosystem, and WordPress's familiar interface makes WooCommerce the most accessible way to start selling online.
Step 1: Choose and Set Up Hosting
WooCommerce runs on WordPress, which runs on virtually any web host that supports PHP and MySQL. Your hosting choice affects store performance, reliability, and monthly cost.
Managed WordPress hosting (recommended for most stores). Providers like SiteGround ($3 to $14 per month), Cloudways ($14 to $46 per month), and Bluehost ($3 to $14 per month) offer WordPress-optimized servers with automatic updates, built-in caching, SSL certificates, and WordPress-specific support. These hosts handle server administration so you can focus on your store. SiteGround and Cloudways provide the best performance in independent benchmarks for WooCommerce stores.
VPS hosting (for more control). DigitalOcean ($6 to $48 per month), Hetzner ($4 to $16 per month), and Vultr ($6 to $48 per month) provide virtual private servers where you configure the entire stack yourself. This gives you more control and often better performance per dollar, but requires Linux administration knowledge. A $12 per month DigitalOcean Droplet (2GB RAM, 1 vCPU) handles a WooCommerce store with several thousand products and moderate traffic.
Minimum requirements. PHP 7.4 or higher (PHP 8.1+ recommended), MySQL 5.6 or higher (or MariaDB 10.1+), 512MB RAM (1GB+ recommended), and HTTPS support. Every modern hosting provider meets these requirements.
Sign up with your chosen host, create a new site or server, and configure your domain name to point to your hosting account through DNS A records.
Step 2: Install WordPress
One-click installation (easiest). Most managed WordPress hosts provide a one-click WordPress installer in their control panel. Click the installer, enter your site title, admin username, admin email, and password. WordPress is installed and ready in under a minute. This is the recommended path for anyone not comfortable with manual server configuration.
Manual installation. Download the latest WordPress release from wordpress.org. Extract the files and upload them to your web server's document root (usually /var/www/html or ~/public_html) using FTP, SFTP, or your host's file manager. Create a MySQL database and database user through your host's control panel (cPanel, Plesk, or phpMyAdmin). Navigate to your domain in a browser, and the WordPress installer will prompt you for the database name, username, password, and host. Enter these details, then create your admin account. WordPress is now installed.
After installation, log into the WordPress admin at yourdomain.com/wp-admin. Go to Settings and verify your Site Title, Site URL, and timezone are correct. Under Settings, then Permalinks, select "Post name" structure (yourdomain.com/sample-post/) for clean URLs. This permalink structure is important because WooCommerce product URLs will follow this pattern.
Step 3: Install and Activate WooCommerce
In the WordPress admin, go to Plugins, then Add New. Search for "WooCommerce" in the plugin search box. The first result will be WooCommerce by Automattic, with millions of active installations. Click Install Now, then click Activate after installation completes.
WooCommerce automatically creates essential pages during activation: Shop (your product catalog), Cart, Checkout, and My Account. These pages contain WooCommerce shortcodes that render the appropriate content. Do not delete these pages.
After activation, WooCommerce may prompt you to install additional recommended plugins like Jetpack or the WooCommerce Shipping and Tax extensions. These are optional. Jetpack adds site statistics and security features. WooCommerce Shipping provides USPS label printing. WooCommerce Tax automates tax calculation. Install them only if you need their specific functionality.
Step 4: Run the Setup Wizard
WooCommerce launches a setup wizard after activation. If you dismiss it accidentally, access it from WooCommerce, then Home in the admin sidebar.
Store details. Enter your store's physical address (used for tax and shipping calculations), the industry your store belongs to, and the types of products you sell (physical, digital, or both).
Currency and locale. Select your base currency. WooCommerce displays prices in this currency by default. If you need multi-currency support, you will add a currency switching plugin later (WOOCS or WooCommerce Multi-Currency are popular free options).
Shipping and tax basics. The wizard asks basic shipping questions (do you ship physical products, where do you ship to) and whether to enable automated tax calculation. You will configure these in detail in Step 6, so the wizard settings are a starting point.
Complete the wizard. Do not worry about getting everything perfect, as every setting can be changed later from the WooCommerce Settings page.
Step 5: Configure Payment Gateways
Go to WooCommerce, then Settings, then Payments. WooCommerce includes basic payment options (bank transfer, check payments, cash on delivery) by default, but you need Stripe and PayPal for card processing.
Stripe setup. Go to Plugins, then Add New, search for "WooCommerce Stripe Payment Gateway" by WooCommerce. Install and activate it. Navigate to WooCommerce, then Settings, then Payments, and click Manage next to Stripe. Check Enable Stripe, then enter your Publishable Key and Secret Key from your Stripe Dashboard (found under Developers, then API keys). Enable Test mode initially. Under Payment methods, enable Credit Cards at minimum, and optionally enable Apple Pay, Google Pay, and any other methods available in your country.
PayPal setup. Search for "WooCommerce PayPal Payments" by WooCommerce in the plugin directory. Install and activate. Go to WooCommerce, then Settings, then Payments, click Manage next to PayPal. Click Connect to PayPal, which redirects you to PayPal to authorize the connection. After authorization, PayPal Checkout is configured. Enable Sandbox mode for testing.
Test your payment flow. With both gateways in test/sandbox mode, create a test product (price $1, any name), visit your store's frontend, add the product to cart, proceed to checkout, and complete payment using Stripe's test card number (4242 4242 4242 4242, any future expiry, any CVC). Verify the order appears in WooCommerce, then Orders with payment status complete. Repeat with PayPal sandbox. Only after successful testing should you switch both gateways from test to live mode.
Step 6: Set Up Shipping and Tax
Shipping zones. Go to WooCommerce, then Settings, then Shipping. Click Add Shipping Zone. Create zones based on where you ship: for example, "United States" covering all US states, and "International" covering everywhere else. Within each zone, add shipping methods: Flat Rate (a fixed fee, like $5.99), Free Shipping (above a minimum order amount or unconditionally), or Local Pickup (for stores with physical locations). For calculated rates based on weight, dimensions, and destination, install carrier-specific plugins for USPS, UPS, or FedEx.
Tax configuration. Go to WooCommerce, then Settings, then Tax. If you enabled automated taxes during setup, WooCommerce uses the WooCommerce Tax service (powered by TaxJar) to calculate rates automatically based on the customer's shipping address. For manual configuration, under Standard Rates, add tax rows for each jurisdiction where you collect sales tax. Each row specifies the country, state, rate percentage, and whether the rate applies to shipping. For most US-based stores selling domestically, you need tax rows for each state where you have nexus (a physical or economic presence that requires you to collect sales tax).
For EU stores, create tax rows for each EU country with the appropriate VAT rate. WooCommerce supports reduced rates and zero rates through additional tax classes (Reduced Rate and Zero Rate are included by default).
Step 7: Choose and Install a Theme
Your theme controls how your store looks to customers. Go to Appearance, then Themes, then Add New to browse the WordPress theme directory. Filter by "E-Commerce" to find WooCommerce-compatible themes.
Free themes. Storefront is WooCommerce's official free theme, designed specifically for online stores. It is lightweight, fast, and fully compatible with all WooCommerce features. Astra, OceanWP, and Kadence are popular general-purpose themes with excellent WooCommerce integration and more design flexibility than Storefront. All four are free and widely used.
Premium themes. Themes from ThemeForest ($30 to $80 one-time), Flavflavor, and other marketplaces offer more polished designs with advanced customization options. Flatsome, Woodmart, and Porto are among the most popular WooCommerce premium themes. Premium themes typically include built-in product page layouts, mega menu navigation, and custom product gallery designs.
Install your chosen theme, then go to Appearance, then Customize to adjust colors, typography, header layout, and shop page settings. Preview changes before publishing to ensure the store looks correct on both desktop and mobile devices.
Step 8: Add Your Products
Go to Products, then Add New. Each product needs at minimum a title, description, price, and at least one image.
Product data fields. The Product Data panel below the description editor is where you configure pricing (regular price, sale price with optional schedule), inventory (SKU, stock quantity, backorder settings), shipping (weight, dimensions, shipping class), and linked products (upsells, cross-sells). For variable products (like a t-shirt in multiple sizes), go to Attributes, add your attribute (Size) with values (Small, Medium, Large), check "Used for variations," then go to the Variations tab to set per-variation prices, stock levels, and images.
Product images. Upload a primary product image (the featured image, displayed in catalog grids) and additional gallery images (shown on the product detail page). Use consistent image dimensions across all products for a clean catalog appearance. 800x800 pixels is a good standard for product images, providing enough detail for zooming without excessive file size.
Categories and tags. Organize products into categories (displayed in the store navigation) and tags (used for cross-referencing). Create your category structure before adding products so you can assign categories during product creation rather than going back to categorize products later.
Bulk import. For stores with many products, WooCommerce supports CSV import. Go to Products, then Import, upload a CSV file formatted with columns for product name, description, price, categories, images (as URLs), and other fields. The import tool maps CSV columns to WooCommerce product fields. This is significantly faster than creating products one at a time for catalogs with 50 or more items.
Step 9: Install Essential Plugins
WooCommerce works with the core WordPress plugin ecosystem. These categories cover the most important additions:
SEO: Rank Math SEO (free) or Yoast SEO (free with premium option) for meta titles, descriptions, XML sitemaps, breadcrumbs, and schema markup. Configure these before launch so your products are indexed with proper metadata from day one.
Security: Wordfence (free) or Sucuri Security (free) for firewall protection, malware scanning, and login security including two-factor authentication. Enable two-factor authentication for all admin accounts.
Backups: UpdraftPlus (free) for scheduled backups of your database and files to cloud storage (Google Drive, Dropbox, Amazon S3). Configure daily database backups and weekly full-site backups. Test the restore process at least once before launch.
Performance: WP Super Cache (free) or W3 Total Cache (free) for page caching. Imagify or ShortPixel (free tier available) for automatic image optimization on upload. These plugins reduce page load times substantially with minimal configuration.
Email deliverability: WP Mail SMTP (free) to route transactional emails through an SMTP service (Gmail, Mailgun, SendGrid, Amazon SES) instead of your server's default mail function. This prevents order confirmation emails from landing in spam folders.
Step 10: Test and Launch
Complete checkout test. Place at least two test orders with each payment method. Verify that order confirmation emails arrive at both the customer address and your admin email. Check that orders appear correctly in WooCommerce, then Orders with accurate totals, tax calculations, and shipping costs. Process a refund on a test order and confirm it reflects in both WooCommerce and the payment gateway dashboard.
Mobile checkout test. Open your store on a phone. Browse products, add items to cart, and complete checkout on a mobile device. Over 60% of ecommerce traffic is mobile, so any checkout friction on small screens directly costs you sales. Pay attention to form field sizes, button tap targets, and the overall flow on a 5-inch screen.
Performance check. Run your store's URL through Google PageSpeed Insights. Target a score above 80 for mobile and above 90 for desktop. Product pages should load in under 3 seconds. If performance is poor, check for unoptimized images, excessive plugins, or a poorly coded theme.
Pre-launch checklist. Verify your domain's SSL certificate is active (green padlock in browser). Check that search engines can find your sitemap (yourdomain.com/sitemap.xml). Verify your privacy policy and terms of service pages exist and are linked from the footer. Remove or hide the test product you created earlier. Switch payment gateways from test to live mode. Submit your sitemap to Google Search Console and Bing Webmaster Tools. Your store is live.
WooCommerce installation is straightforward: choose a host, install WordPress, activate WooCommerce, connect Stripe and PayPal, add products, and test thoroughly before launch. A basic store can be operational within a day. Focus on getting a functional store live first, then refine the design, add features, and optimize performance based on real customer data.