WooCommerce is the world's most popular e-commerce plugin for WordPress, powering over 5 million online stores globally. The core plugin is free to download and transforms any WordPress installation into a fully functional online store — complete with product management, pricing, payment processing, and order fulfillment. This guide walks you through everything you need to know to install, configure, and launch your WooCommerce store from scratch.
Prerequisites Before Installing WooCommerce
Before installing WooCommerce, make sure you have the following in place:
- WordPress installed — version 6.0 or higher (6.5+ recommended)
- PHP 7.4 or higher — PHP 8.2 or 8.3 strongly recommended for best performance
- MySQL 5.6+ or MariaDB 10.4+ — for the store database
- SSL Certificate — required for secure online payment processing
- At least 256MB of RAM — 512MB or more recommended for stores with many products
- mod_rewrite enabled — required for WooCommerce Pretty Permalinks to function correctly
You can verify your PHP version in DirectAdmin under PHP Version Manager, or by creating a temporary file with <?php phpinfo(); ?> and visiting it in your browser.
| Requirement | Minimum | Recommended | Notes |
|---|---|---|---|
| PHP | 7.4 | 8.2 or 8.3 | PHP 8.x is significantly faster than 7.x |
| MySQL | 5.6 | 8.0 / MariaDB 10.6 | UTF8MB4 charset recommended |
| RAM | 256 MB | 512 MB+ | More products = more RAM needed |
| WordPress | 6.0 | 6.5+ | Update WordPress before installing WooCommerce |
Step 1 — Install the WooCommerce Plugin
Installing WooCommerce is straightforward from the WordPress Admin dashboard — no manual file uploads required:
- Log into WordPress Admin → go to Plugins → Add New Plugin
- In the search box, type
WooCommerce - Select WooCommerce by Automattic (the first result) and click Install Now
- Once installation completes, click Activate
- WordPress will automatically redirect you to the WooCommerce Setup Wizard
Alternatively, if you have WP-CLI access on your server, you can install and activate in one command:
wp plugin install woocommerce --activate
Step 2 — Run the Setup Wizard
After activating WooCommerce, the Setup Wizard guides you through essential store configuration. Fill in these details carefully as they affect invoices, shipping calculations, and currency display:
Store Details
- Country / State — Select the country where your store is based
- Address — Your business address (appears on invoices and order emails)
- Currency — Choose your store currency (e.g., Thai Baht, USD)
Industry and Product Type
Select the industry and type of products you sell (physical, digital, subscriptions, etc.). This helps WooCommerce recommend relevant extensions. Your choice does not lock you in to a specific feature set.
Business Details
Indicate how many products you plan to list and whether you currently sell on other platforms. WooCommerce uses this to show the most relevant features during onboarding.
Step 3 — Configure Core WooCommerce Settings
After the wizard, navigate to WooCommerce → Settings to fine-tune your store. The settings are organized into tabs:
General
- Selling Locations — Choose "Sell to all countries" or restrict to specific regions
- Currency — Confirm symbol, position, thousand separator, and decimal places
- Default Customer Location — Set to your primary market country for accurate tax calculation
Products
- Shop Page — Verify that WooCommerce has created the Shop page automatically
- Weight & Dimensions — Set to kg and cm for metric, or lb and in for imperial
- Reviews — Enable or disable product reviews based on your store policy
Tax
To charge tax, enable Enable taxes and configure a Standard Rate. For a 7% VAT rate applied to all products:
Country Code: (your country, e.g., TH) State Code: * (all states/provinces) ZIP/Postcode: * (all postcodes) City: * Rate (%): 7.0000 Tax Name: VAT Priority: 1 Compound: unchecked Shipping: checked (if taxing shipping)
Step 4 — Add Your First Products
Go to Products → Add New to create your first listing. A well-structured product page improves both conversion rates and SEO:
Basic Product Information
- Product Name — Clear, descriptive title that includes target keywords
- Description — Full product details shown below the add-to-cart button
- Short Description — Brief summary displayed alongside the product image
- Product Image — Main product photo (high resolution, square crop recommended)
- Product Gallery — Additional images showing different angles or variants
Product Data Settings
The Product Data metabox in the editor contains crucial settings:
- Product Type — Simple (single item), Variable (with size/color options), Grouped, or External/Affiliate
- Regular Price — Standard selling price
- Sale Price — Optional discount price with optional start and end dates
- SKU — Unique stock-keeping unit identifier
- Manage Stock — Enable to track inventory automatically and prevent overselling
- Weight & Dimensions — Required if calculating shipping rates based on product size
For products with multiple variants such as clothing sizes or colors, choose Variable Product and define Attributes (e.g., Size: S, M, L, XL) under the Attributes tab, then generate variations under the Variations tab to set individual pricing and stock per variant.
Step 5 — Configure Payment Methods
Navigate to WooCommerce → Settings → Payments to enable and configure how you accept money. WooCommerce includes several built-in options:
Direct Bank Transfer
The simplest option for getting started — customers transfer money to your bank account manually and you confirm receipt before processing their order:
- Click Set up next to Direct Bank Transfer
- Fill in your bank account details in the Account Details section
- Save settings. Bank details will appear on the order confirmation page and email.
Cash on Delivery
For stores delivering locally, enable Cash on Delivery. Ensure you configure Shipping Zones that match your delivery area so this option only appears for eligible customers.
Stripe — Credit and Debit Cards
To accept card payments online, install the free WooCommerce Stripe Payment Gateway plugin:
wp plugin install woocommerce-gateway-stripe --activate
Then go to WooCommerce → Settings → Payments → Stripe and enter your Publishable Key and Secret Key from your Stripe Dashboard. Always test in Test Mode first before switching to Live Mode.
Tip: Always test your payment gateway before going live. In Stripe Test Mode, use card number 4242 4242 4242 4242 with any future expiry date and any 3-digit CVV to simulate a successful payment. Use 4000 0000 0000 0002 to simulate a declined card. Remember to toggle from Test Mode to Live Mode in both your Stripe dashboard and WooCommerce settings before opening your store to real customers.
Step 6 — Set Up Shipping Zones and Methods
Go to WooCommerce → Settings → Shipping to define where you ship and how you calculate shipping costs. Shipping Zones group geographic regions together and let you assign different rates to each zone.
Creating a Shipping Zone
- Click Add Shipping Zone
- Give the zone a name, for example "Domestic" or "Thailand"
- Under Zone Regions, add the countries or states this zone covers
- Click Add Shipping Method to add one or more shipping options
Available Shipping Methods
- Flat Rate — Fixed cost per order or per item. Can use formulas to scale with quantity or weight.
- Free Shipping — Triggers automatically when cart meets a condition such as a minimum order value or a coupon code.
- Local Pickup — For customers who will collect their order in person.
Example Flat Rate formula to charge a base fee plus a per-item fee:
Cost: 5 + ( [qty] * 2 ) # Charges $5 base + $2 per item
Step 7 — Customize Email Notifications
WooCommerce sends automated email notifications to both customers and administrators at each stage of the order lifecycle. Review and customize these at WooCommerce → Settings → Emails.
Key email templates to personalize for your brand:
- New Order — Alerts the store admin when a new order is placed
- Processing Order — Sent to the customer confirming order receipt and processing
- Completed Order — Sent to the customer when the order is shipped or fulfilled
- Customer Invoice / Order Details — Manually sent receipt or invoice
- Failed Order — Notifies admin when a payment attempt fails
Set your From Name to your store name and From Address to a domain-based email (e.g., [email protected]) for better deliverability and brand consistency. Avoid using free email services like Gmail as the sender address for transactional store emails.
Step 8 — Choose a WooCommerce-Compatible Theme
Your WordPress theme must properly support WooCommerce to display the shop, product pages, cart, and checkout correctly. Recommended themes for new store owners:
- Storefront — WooCommerce's official free theme, built to support all WooCommerce features out of the box with no conflicts
- Astra — Lightweight, fast-loading, excellent WooCommerce support, available in free and Pro versions
- Kadence — Modern, flexible theme with beautiful WooCommerce Starter Templates that deploy in seconds
- Blocksy — Full Site Editing support with strong WooCommerce integration
Install your chosen theme via Appearance → Themes → Add New and search by name. After activation, use the Customizer (Appearance → Customize) to set your logo, colors, and typography to match your brand.
Recommended Plugins to Enhance WooCommerce
Beyond the core WooCommerce plugin, these extensions are widely considered essential for a production-ready store:
Performance and Caching
- LiteSpeed Cache — Best choice if your hosting uses LiteSpeed Web Server. Handles page caching, object caching, image optimization, and database cleanup with deep WooCommerce awareness (excludes cart and checkout pages from cache automatically).
- WP Rocket — Premium caching plugin known for easy configuration and strong results on any server stack.
SEO
- Yoast SEO — Helps optimize product pages, category pages, and blog posts for search engines. The free version covers all core SEO features.
- Rank Math — Feature-rich free alternative to Yoast with more built-in functionality in the no-cost tier.
Security
- Wordfence Security — Web Application Firewall and malware scanner for WordPress. Enable the firewall in learning mode for the first week to avoid false positives.
- Force Secure Checkout — Ensure HTTPS is enforced on cart and checkout pages. Enable in WooCommerce → Settings → Advanced → Force secure checkout.
Image Optimization
- Smush or ShortPixel — Automatically compress and convert product images to WebP format. Unoptimized product photos are one of the most common causes of slow WooCommerce stores.
Frequently Asked Questions
Is WooCommerce free to use?
The core WooCommerce plugin is free to download and use from the WordPress Plugin Directory with no licensing fees. However, you will need to pay for hosting, a domain name, and an SSL certificate. Some premium extensions such as advanced payment gateways, shipping plugins, or premium themes may have additional costs depending on the developer.
What hosting specifications does WooCommerce require?
WooCommerce requires PHP 7.4 or higher (PHP 8.2+ recommended), MySQL 5.6+ or MariaDB 10.4+, and at least 256MB of RAM (512MB or more recommended). You should choose hosting that supports LiteSpeed or Apache with mod_rewrite enabled for proper Permalink functionality, plus an SSL certificate for secure payment processing.
WooCommerce vs Shopify: which should I choose?
WooCommerce is open-source software installed on WordPress, giving you full control over your store. Main costs are hosting and a domain. It is ideal for stores that need high customization. Shopify is a SaaS platform starting around $29/month, easier to set up but less flexible, and charges transaction fees unless you use Shopify Payments. Choose WooCommerce if you want full data ownership and maximum customization.
My WooCommerce site is slow. How do I speed it up?
WooCommerce generates more database queries than a standard WordPress site. Key speed improvements include installing a caching plugin such as LiteSpeed Cache or WP Rocket, enabling object caching with Redis or Memcached, compressing product images with Smush or ShortPixel, using a CDN, and minimizing the number of active plugins. Choosing hosting with LiteSpeed Web Server and PHP 8.x will also deliver significantly better performance than Apache with PHP 7.x.
WordPress-Optimized Hosting
AsiaGB Hosting supports PHP 8.3, MySQL, LiteSpeed Cache, and WordPress Toolkit. Starting at 500 THB/year.
View Hosting Plans