code ecommerce WooCommerce Wordpress

[WooCommerce] Checkout Progress Bar

As you read articles/posts on ecommerce optimization, specifically checkout optimization, a popular theme emerges: The Checkout Progress Bar. The idea is to provide your visitors some kind of visual feedback that they are making progress. It tells them how far along they are before the purchase is complete. Conversely, it tells them how much longer before they can own the product/service they are vying for.

With this in mind, I googled for a free plugin that would accomplish just that. My search ended fruitless (almost). I did hit this gem of a plugin called Progress Bar. This is a simple plugin that can be used anywhere on a WordPress site.


In this article, my aim is to create your own customized checkout progress bar without the use of any paid plugins. You will need

  • Download the Progress Bar plugin from the WordPress plugin repository
  • Make some code changes (PHP and JS included). Download from github.

The code changes are shown below. The first change is in your theme/child theme’s functions.php file. Two things are happening here:

  1. Hooking into the “woocommerce_checkout_before_customer_details” action hook to display the Progress Bar. We use the shortcode for the Progress Bar because it allows to send in parameters for styling and appearance.
  2. Loading the JavaScript file that will manipulate the Progress Bar based on how much of the Checkout Form has been validated.

The second file is the JS script that checks in real-time which mandatory fields have been validated. Then it calculates the progress (in pixels) by simply dividing the “number of fields validated” by the “number of fields that require validation”. It also accounts for the “Shipping Address Same as Billing Address” checkbox.

The end result is you get a progress bar for your WooCommerce Checkout Page.

WooCommerce Checkout  Progress Bar in Action
WooCommerce Checkout Progress Bar in Action

Notes on Customization

The CSS for the progress bar can be easily customized. Follow the instructions on this link. Also, note that the plugin has quite a few options that can be used for customizing the look and feel of the Progress Bar.

By Amit Ramani

Ever heard of 'tech and tack' together in the same sentence? Chances are you did not. I am part owner of a 'tack' store in Wellington (TACKNRIDER), and full owner of a 'tech' firm(ANTERIK).

8 replies on “[WooCommerce] Checkout Progress Bar”


thank you so much for this awesome plugin. I used this tutorial as you said, and a nice looking progress bar appeard in my checkout page. but the problem is, it doesn’t validate the input data and always stays at 50 percent. so what can I do to solve this ?

Hi JOhn
The reason it does not work is because the JS file that moves the bar is missing! You have to create a file called “wc-checkout-progress-bar.js” inside the theme’s “js” folder. Please create this file (see and then retry.
Currently, that file is not being loaded. Console Error:
Failed to load resource: the server responded with a status of 404 (Not Found)

hi Amit
Yeah thats right
at first, I created the js file in the main theme’s folder but now I realized that it had to be in the child theme’s folder and its working like a charm!
thank you so much for your help and for this great website

I just tested your site with the changes. It looks great. Glad I was able to help! Let me know if that progress bar helps in increasing the conversion rate!

Leave a Reply to John d. Cancel reply

Your email address will not be published. Required fields are marked *