WooCommerce is the most popular ecommerce solution for WordPress by some margin. It boasts over 4 million active installs, a 4.6 user rating on WordPress.org, and an army of happy, loyal digital store owners.
What’s more, as of June 2019, WooCommerce powers around 7% of all online stores and 22% of the top 1 million ecommerce sites. Ecommerce sales are booming, so if you’re looking to open up shop on your WordPress-powered website, going with WooCommerce is one of the best decisions you could make.
The only question left is: How can you get WooCommerce up and running up your website? To answer this, we’ve put together an extensive WordPress WooCommerce tutorial.
And remember, your ultimate goal is to increase your store’s revenue. So be sure to download our free ebook, 10 Ways to Boost Your WooCommerce Product Page Conversions.
Let’s jump right in!
Is WooCommerce Free to Use?
WooCommerce is an open source shopping cart plugin free to download and use on WordPress websites. Running an online store, though, isn’t cost-free as there’ll be costs associated with hosting and domain fees, at least, along with customizations, design, branding, marketing, and advertising costs.
How to Install and Set Up WooCommerce (In 7 Steps)
Naturally, you’ll need to begin by installing and activating the WooCommerce plugin. You can do this either on a new or existing WordPress site. In the following steps, we’ll walk you through the process of setting up the plugin and configuring its settings.
Step 1: Install the Plugin
The first thing you’ll need to do is to install WooCommerce on your website. You can download it for free from the WordPress repository, then upload it to your site. Even easier, you can install it right through your WordPress dashboard.

To do this, access your WordPress site and navigate to Plugins > Add New. Use the search bar to locate “woocommerce”, and click on Install Now when you find the right plugin. The plugin author should be listed as Automattic:

Give the plugin a moment to install. Then, click on the Activate button:

At this point, the plugin will be up and running on your website!
Step 2: Access the Setup Wizard
After installing WooCommerce, you’ll be prompted to walk through a setup wizard. It’s optional, but we recommend going through it in order to configure some key settings.
The first page of the WooCommerce setup wizard should look like this:

Here, WooCommerce is prompting you to enter some basic information about your store. This includes its address, what currency you’d like to use, and whether you plan to sell digital or physical products (or both).
Keep in mind that anything you set here (or throughout the rest of the setup wizard) can be changed later on in your WooCommerce settings if necessary. For now, the next step in our WooCommerce tutorial 2019 is to select Let’s Go.
Step 3: Choose Your Payment Processors
On the next page, you can decide what payments you’ll enable for your online store. By default, you can use Stripe and/or PayPal, along with offline payments such as checks and cash:

Simply select the options you’d like to use, and WooCommerce will set them up. You can also use extensions to add more payment processors to your store, which we’ll talk about later. At Kinsta, we’re big fans of Stripe.
Recommended reading: How to Prevent and Reduce Credit Card Fraud by 98% Using Stripe Radar
Using Square instead? Check out our in-depth comparison blog post: Stripe vs Square.
Step 4: Configure Your Shipping Options
Next, you’ll find the Shipping screen:

Here, you can decide how much customers will be charged for shipping. You can set one rate for your preferred zone, and another for customers who are in other locations. If you like, you can also offer free shipping to one or both groups.
Step 5: Review Optional Add-Ons
At this point, you’ve configured all the basics for your online WooCommerce store. The next page of the setup wizard presents you with a few optional add-ons:

All of these tools can come in handy, although none of them are required to run your online store. We do suggest at least checking out Storefront. This is a WordPress theme designed specifically for WooCommerce and can make setting up your store quicker and easier.
Step 6: Install the Jetpack Plugin (Optional)
The following screen also offers an optional add-on:

Jetpack is a handy WordPress plugin that offers a wide range of features. This includes security functionality, various analytics, and more. It can be a useful addition to your WooCommerce store, but isn’t required – so it’s up to you whether you’d like to install it or not.
Step 7: Complete the Setup Process
Your WooCommerce store is now ready to rock and roll:

You’ll find a number of useful links here. You can import products to your store, return to your WordPress dashboard, or edit the settings you just configured.
Most likely, however, what you’ll want to do now is start adding products. To keep following our WordPress WooCommerce tutorial, go ahead and select Create a Product now.
Adding and Managing New Products in WooCommerce
After installing WooCommerce, you’ll find two new tabs on your dashboard’s side menu. These are called WooCommerce (your general settings area) and Products (your products settings area).
To start setting up your online store, you can either follow the link at the end of the setup wizard or go to Products > Add New. Either way, this will enable you to add your first product, using the familiar WordPress editor:

The first thing you’ll want to do is create a title and a short description of the product. Here’s what just a title and description looks like in a live preview:

With this done, you’ll also want to add information about your new product to WordPress. In the next few sections, we’ll look at how to do so.
Adding Key Details to Your Product
If you scroll down below the post editor, you’ll see two new widgets not found on regular posts or pages. The first is the Product data section:

Here, you can add all kinds of details about your product. At the very top, you can select whether or not the product is virtual (which removes the Shipping tab) and if it is downloadable. Then, in the General tab, you can enter in the regular and sale prices (sales can be time-sensitive).
If you’re selling digital products, you’ll also have to upload the file to be purchased, customize the download limit (leave it blank to mark it as unlimited), and set the download expiry (leave it blank to keep it available permanently):

Next, in the Inventory tab, you can manage your stock by entering in the quantity of the product, stock status (in/out of stock), and if you’d like to allow backorders:

Additionally, you can mark the product as individually sold, meaning only one can be bought in a single order. This is also where you can enter the product’s SKU (identification number) if you have one.
There are a number of other useful tabs here as well. The Shipping section will enable you to enter the item’s weight, dimensions, and shipping class. In the Linked Products tab, you can add upsells and cross-sells, while Attributes enables you to describe the product’s characteristics.
Finally, in the Advanced tab, you can enter custom purchase notes, give the product a set position in your menu, and enable or disable reviews. If you like, you can also view recommended extensions under the Get more options screen.
Creating Attributes and Variable Products
As you can see, there are plenty of options for adding details to your WooCommerce products and customizing them fully. Let’s take a closer look at two of the most useful options in the Product data section – attributes and variable products.
Attributes are key descriptors for your product, and they tell potential customers important information about it. This might include the item’s color, the material it’s made out of, its size or type, and more. If you add these details to your product in the Attributes tab, they’ll appear on the product page:

No matter what type of products you’re selling, attributes are useful for communicating vital characteristics in a concise way. However, what if you also sell items that come in multiple options? For that, you can select the Variable product option:

This will give you access to a new Variations tab, where you can create multiple versions of your product using the attributes you already assigned. So for example, let’s say you offer a shirt in red, green, and purple. You can add a variation for each color, then give each a unique description, price, and so on.
Your customers will be able to see all available variations on the product page:

This makes it easy for visitors to view everything you have to offer at a glance. Plus, it means you don’t have to create separate product pages for slight variations on the same item.
Customizing Your Product Short Description
Underneath the Product data widget, you’ll also find a section labeled Product short description:

Here, you can create a concise tagline that will appear underneath the product’s title. You can use this description to highlight the item’s primary benefits and incorporate one or more keywords to help customers locate it in searches.
After customizing your product’s data and description, don’t forget to check out the other options on the product page as well. You can add tags to your product, place it in a category, and include a featured image or even an entire image gallery.
Here’s what your final product might look like on the front end:

Once your product is ready, hit Publish to make it live on your site. Then, you can repeat this process to create additional products as needed.
Managing Your WooCommerce Products
You’ll probably include a number of items in your WooCommerce store, which means you’ll need an easy way to manage them. Fortunately, you can do this through the Products tab in your dashboard.
For example, you can select All Products to see every item currently listed in your store. You can add, edit, and delete products here as needed:

In the other pages under the Products section, you can view your product categories, tags, and attributes. Each of these pages looks like the standard WordPress Posts > Categories page and can help you keep your entire inventory organized.
How to Customize Your WooCommerce Store
Earlier in our WooCommerce tutorial, you configured a few basic settings for your online store. There are a lot more options to play with, however, which you can find in the new WooCommerce tab.
It’s here you can view orders, coupons, and reports, as well as customize settings and add new extensions. Let’s walk through each screen one by one.
Orders
First up, the Orders page displays a list of recent purchases on your store:

If you sell digital products, there’s not much to do here other than view what has been bought lately. However, if you sell physical goods, this is where you can find out what products you need to ship and the status of your orders.
Coupons
WooCommerce has several useful options for adding new coupons to your ecommerce store. In the Coupon tab, you can select Create your first coupon to access the editing screen:

You can add a coupon code and description here. Then, the General tab enables you to edit its basic information: the type of coupon (percentage discount, fixed cart discount, or fixed product discount), its value, free shipping options, and its expiry date:

Under Usage Restrictions, you can set a minimum spend the customer has to make in order to validate the coupon. You can also check the box for Individual use only if you don’t want customers to use the coupon in conjunction with other offers.
You can set if the coupon should apply only to non-sale items here, and also select the products and product categories the coupon is applicable to. Finally, you can even ban certain email addresses from coupon usage.
The final tab, Usage Limits, enables you to determine how many times the coupon can be used, both overall and per customer. Then, simply publish your coupon to make it active, and let your customers know about the code they’ll need.
Reports
WooCommerce also offers powerful built-in tracking functionality. In the Reports tab, you can view charts and graphs of your sales, orders, and shipping costs over different time periods:

Each graph can be limited to the sales of a particular product, category, or coupon. In the Customers sub-tab, you can also view your customer acquisition over the same time periods.
Last but not least, you’ll be able to review your low in stock, out of stock, and most stocked products in the Stock sub-tab. All of this data can be exported as a CSV sheet if needed.
Settings
This is where WooCommerce gets really impressive. In the Settings screen, you can customize just about every aspect of your ecommerce store. Elements such as the placement of your ‘thousands’ separator, the entire checkout process, email options, and much more can be tailored to meet your needs.
Within this section, the General tab covers your store’s basic information, including its currency, selling locations, and display options:

Another notable option here is Enable tax rates and calculations. If you check this box, you’ll gain access to a previously hidden Tax tab:

Here, you can let the platform know if the prices you enter for your products will include taxes or not. In the latter case, you can have WooCommerce calculate tax rates for you, based on your store’s address, the customer’s shipping address, or the customer’s billing address.
You’ll also be able to configure how taxes will apply to shipping costs, and even determine whether they’ll be rounded. Then you can customize the way prices and taxes are displayed on the front end and during the checkout process.
Your product data, including measurements, reviews, stock details, download methods, and even add-to-cart buttons can be customized in the Products tab:

Shipping is where you can configure your shipping zones and pricing:

You can also customize how shipping is calculated, and choose what the default shipping destination will be. Restricting your store availability only to specific countries is also possible.
The Payments tab shows you what payment processors are available and active on your store:

Here you can enable and disable whatever payment options you like. Plus, you’ll find handy links for customizing the settings for specific processors.
Next up, Accounts & Privacy controls various aspects of your customers’ experience:

You can set up a privacy and checkout policy, configure how customer data will be stored and retained, and more.
In addition, you have various options for how customer checkouts will be handled. Under the Guest checkout and Account creation sections, you can determine whether visitors will be able to place orders as guests (i.e., without logging into an account).
Then, you can decide if they’ll have the option to log into and/or create a new account during the checkout process. You’re even able to provide them with automatically-generated usernames and passwords, in order to speed up the registration process.
In the Emails tab, you can customize all things customer support:

At the top of this screen, you’ll find a list of email notifications that are sent through WooCommerce in response to specific triggers (such as an order being placed or canceled). You can click on any of these emails to enable/disable them, as well as to customize their contents:

You’ll even find instructions here for editing the email templates, if you’re comfortable using HTML. You can copy the email’s file to your theme folder, then make whatever changes you like. Alternatively, you can create your own custom email templates.
Below that, you can configure a few global settings for all the emails sent from your WooCommerce store. This includes the ‘from’ name and address, footer text, and even colors and backgrounds.
Finally, in the Advanced tab you can enable the REST API, configure keys, apps, and webhooks, and perform other lower-level tasks:

All of these settings can be customized and changed whenever you like, and your store will be updated automatically.
Status
Next, let’s briefly check out the Status tab:

All of your back-end information can be found here, such as your WooCommerce/PHP/MySQL/etc. version, size limits, logging, and more.
In the Tools sub-tab on the same page, you can clear your website’s caches for multiple variables, clear out old data, and even revert your store’s settings to their defaults.
Extensions
One of the attributes that make WordPress the most popular Content Management System (CMS) on the planet is the community behind it. There are thousands of themes and tens of thousands of plugins you can use to customize your website. What’s more, nearly 100% of them are user-contributed.
This also applies to WooCommerce, although on a smaller scale. You can find lots of tools for expanding your store, adding new options and features, and customizing its look in the Extensions tab and elsewhere:

For instance, while you can use WooCommerce with any theme, it can help to pick one that’s designed for the plugin. Storefront is a great place to start, but there are plenty of other options in directories such as ThemeForest:

You can also check out the WooCommerce extension store, which includes both developer-created and third-party options:

There are extensions for adding new shipping options to your store, enabling subscriptions, customizing the checkout process, integrating email and social media marketing, and much more. You can also find free and paid extensions that let you offer additional payment processors to your customers, such as Square and Amazon Pay.
Finally, you’ll also find plenty of plugins designed to extend Woocommerce in a variety of ways. Just to give one example, the Braintree For WooCommerce plugin enables you to accept all kinds of payments on your store:

In other words, if you want to tweak something about the way your WooCommerce store works, chances are you can do so by simply finding the right tool.
Editing WooCommerce Templates
Between WooCommerce’ built-in settings and the many extensions and plugins available for it, you have a lot of flexibility over how your shop works. However, if you’re a more advanced user and want to perform your own customizations, a good place to start is by editing WooCommerce’s template files.
This will enable you to tweak the way key features work, such as the customer carts and checkout process. Please note that this is a risky process, especially if you’re new to working with theme and plugin files directly. Before getting started, you’ll want to back up your site just in case of any accidental changes. Here’s how to safely delete a theme.
Then, you’ll need to access your site using a Secure File Transfer Protocol (SFTP) client such as FileZilla. Locate your site’s root folder (often either called public_html or named after your domain), and navigate to wp_content/plugins/woocommerce:

In this directory, you’ll find a folder called templates. Open it up, and you’ll see a list of all the templates that are currently active for your store:

At this point, you can open up any template you like and start making changes. For instance, if you want to make alterations to the ‘Thank You’ page that appears after a customer has placed an order, you can open up the checkout folder and locate the thankyou.php file. Then you can download it, edit or add elements as you see fit, and reupload it to your server.
WooCommerce Hosting
When you run an online store, time is literally money. This is why it’s important to have a fast and reliable WordPress host, in order to ensure longer uptime, higher conversion rates, and a better Return on Investment (ROI).
WooCommerce has been known to slow down WordPress sites, especially for large stores with lots of products. Fortunately, with Kinsta as your hosting provider, you won’t need to worry about this. We provide managed hosting services, along with highly-optimized WooCommerce hosting designed specifically with performance in mind:

Thanks to our scalable infrastructure on the Google Cloud Platform, as well as the latest technology such as PHP 7, Nginx, and MariaDB, we can ensure a move to Kinsta will help to increase your sales!
“The COO contacted me with an actual solution instead of lot of “trust us” fluff I was getting elsewhere. He was honest and straightforward, which was very refreshing. After migration, support was handled by the CEO, who made some excellent suggestions and tweaks which dramatically improved performance.”
– Caleb Worm, Swagway.com
Summary
WooCommerce is, beyond a shadow of a doubt, the best free ecommerce solution for WordPress. On the outside, the plugin has phenomenal stats. However, it’s only when you dig deeper into the plugin’s many options that its true power is revealed.
Is there anything important we’ve missed in our WooCommerce tutorial? If so, let us know in the comments section below!
Hello John,
I have created my woo-commerce site with the coupons. As I have added 113 coupons but & there are 10 coupons shows on one page but while clicking on next page it does not show the next 10 coupons. It remains on 1st page. How can I sort out this?
Hey Chaitanya,
My apologies for the (very late) response but if you or anyone else who reads this comment is still having this problem shoot me a tweet @JRJohnWrites and I’ll take a look.
Cheers,
Jonathan
Hello John,
You are Great. This is Very Good Tutorial.. Awesome Thanks for sharing.
Awesome, thank you!! :)
What are the guidelines in case of custom wp theme ?
Hi brother.How can i write another wp page user informations (user name,order date, price bla bla bla.)Can i help me?
Hello Jonathan i want to ask u question about wordprees and that is how to export prodcuts from woocommerce using free theme names mystile for future purposes?
A comprehensive tutorial. Some payment gateway integration could have been done
That one is really amazing…! I can see your hard work through this post. Really descriptive and informative. I am also one of WooCommerce Developer and I can understand your effort. Really Wonderful Job… Thanks for sharing….
Thanks, glad it was helpful.
thanks for this. awesome
Glad it was helpful!
Best tutorial for Woo commerce and thanks for sharing it you share very informative blog .
Woo commerce transform your WordPress website into a thoroughbred eCommerce store. Delivering enterprise-level quality and features while backed by a name you can trust. and I am using wocommerce SMS service from MSG91.
It is a interesting and awesome tutorial. Can you (or someone else) tell me which actions I should do to add pre order options?
Hello! Who knows woocommerce? I have a problem in the store kladproraba.com is not displayed the unit for external/affiliate products, reviews block works only when the setting indicated that it is the external product and the reviews block no. Third-party plugins did not solve the problem, only plug diskus works, but it’s not what you need. Have experience how to solve the problem? Share with me Your experience, I would be very grateful!
Stupid question: I have everything set up and a couple of test products created, so how do I actually make a PAGE of products? Where is my “shopping page?”
Im asking the same question. I have a horrible headache because ive been looking for it since yesterday ! Im gonna end up taking a different route because im too frustrated
this may sound like the stupdist question ever, but where the hell is my store???? I followed the wizard, set everything up….. how do i see my actual store???????????????????????????? I know it sounds like a dumb question but i cant find the damn thing and im frustrated as hell about it. I have woocommerce on my wordpress dashboard but none of those take me to my actual store either. How am i supposed to see what it looks like for Gods sake !
Hey Rachel! By default it creates a “shop” page. If you click into pages in your WordPress site you should see “store.” yourdomain.com/shop Hopefully that helps. I will update the tutorial above with this info. Thanks!
Brian…… I have the shop page but the only options coming from that still do not lead me to my store ! I just don’t get this . Im sorry but ive been struggling for over a month now 10 hours plus per day and im feeling like I should quit.
alot of questions here but i dont see anyone getting any answers !
Hi kindly plz let me know how I can add button select sizes option and colour on front page just above the add to cart
I just set up a coupon in woocommerce on my wordpress site to have unlimited usage but only 1 use per customer. It shows 0/infinity on my coupon list. Does not show 1 use per customer, or am I reading it wrong? Thanks for any insight. I saw that this was a woocommerce bug about 10 months ago. Anyone else have that problem? If it shows 0/infinity symbol does that mean people can use it 0 times and coupon won’t work?
Thank you so much for this tutorial, I also used this tool and try to create a website.
I have a question on how to setup a complex shipping for my WooCommerce store. I have multiple quantities of same product that i sell on my store. My shipping is currently unstructured but i want to make it structured. For example, i sell Apples all around the world but due to quality and currency fluctuations i have to charge a heavier shipping amount to North American and European customers rather than India customers. With India, i get a huge profit but with others, the shipping is a little off. I would now like to charge shipping based on the following factors :
– weight of my shipment
– shipping zone,
– total price of order
– total quantity of items
– Shipping class
– based on special services like insurance from UPS, FedEx, adult signature.A
I have heard WooCommerce Shipping calculator from StorePep is a right choice of solution for my needs. What does your wisdom tell about configuring shipping based on these factors?
I’m sure it’s doable since it sounds like a very basic feature for an ecommerce site. You can set up different shipping zones and with the basic settings or with a paid add-on you can achieve your goals https://docs.woocommerce.com/document/setting-up-shipping-zones/
I would suggest to give it a try, test it and see how it works for your site.
How do I send my customers to their product after they purchase it? Preferably, I want to send them to a webpage, where the video is embedded and the downloads are links in the form of clickable buttons. How can I do this with WooCommerce?
I am trying to figure out how to display the flat rate shipping cost on the single product page template. How can I do this?