How to Price Your WooCommerce Projects

Everything starts with the story you’re telling.

One of the most overlooked aspects of pricing is the fact that it never happens in a vacuum. Pricing is always contextual. And to that end, the context for a WooCommerce project isn’t just the work that needs to be done. It’s about the customer, how they define success, the freelancer or agency doing the work, and their experience. Context drives the pricing discussion.

And context is driven by the story you’re telling.

Stories can take a lot of forms, but just imagine the following three opening lines:

  1. I’m so excited to finally work on an eCommerce project.
  2. If this project is anything like the last 40 I’ve worked on, we could be done in 8 weeks.
  3. We have a team of 30 people we bring onto every project. We’re excited to get started.

Each statement tells us something different. In one case, we’re aware that the person will be learning on the job. In another, we know about experience and even some sense of timeline (and maybe cost). And in the last statement we might feel extra confident or extra worried, depending on whether we think we need 30 people on the project – a small store might freak out, and an enterprise organization may feel thrilled.

Use the first meeting to anchor context

When we meet with a prospect, we get the chance to create a first impression or reinforce what they may have already heard about us. That first phone call or meeting allows us to make sure that we set the right context.

  • We can reinforce our experience by telling stories of past projects.
  • We can build trust by predicting common challenges and how we overcome them.
  • We can shape our conversation by hearing what they think are success criteria.

And when it comes to pricing, there’s one other thing we can do. We can create some price anchors by articulating various projects of different complexities (features, sizes, etc.) and the prices associated with each.

As we do that, we’re helping them get grounded in the context of what it might cost to work with us, and it helps set some of their expectations.

The bottom line is that the better you get at listening, the better you’ll get at knowing which stories to tell, which projects to highlight, which risks to articulate and mitigate, and which price points to anchor to.

This is what separates folks that are great at pricing discussions and those who are just getting started. Thankfully, it’s something that you can practice and get good at.

Below we’ll look at several factors that go into the pricing calculus and ways you can use this information to help you in initial and further pricing discussions.

Specializing helps you price better

If you think about the physical world, there’s no question that a large department store costs more to establish and run than a local corner store. The same is true in the digital world of eCommerce when it comes to type of store, type of product, and even type of customer.

Different kinds of stores

Different kinds of stores have different costs, and it is important that you are able to distinguish between them. As the expert, your customer is expecting you to ask the right questions, provide the right guidance, and know what the right steps are in creating their online store:

  • Digital Download Stores
    If you’re developing an online store with a pure digital focus (such as selling digital images or songs), you must think about how to protect digital files against theft. You need to ask whether there will be downloading restrictions (i.e., limits to the number of times a file can be downloaded). But you won’t need to know anything about shipping.
  • Content Protected Stores
    With more people building online learning solutions, it shouldn’t surprise you that some people will want to build a membership site or online course using WooCommerce. In that case, you have other things to think about – whether payment is one-time or via a subscription, whether people can still download content or must be online to experience it, and whether two people can use the same login/password combination from two different places at the same time.
  • Stores Shipping Physical Products
    If a customer wants an online store that ships physical products, you likely need to answer questions about shipping methods, applicable taxes, inventory, and backorder rules. Answers to these questions can dramatically affect how much work is involved to launch a store.

Your customer is expecting you to ask the right questions, provide the right guidance, and know what the right steps are in creating their online store.

Depending on the kind of store a customer wants, you need to write different amounts of custom code. Or use a plugin that delivers many of the features that a customer wants, but constrains the overall experience.

Explaining that trade-off between the price of custom code vs. user experience is what helps a customer understand not only the details of their choice, but also helps establish you as the expert and the reason they should want your help.

Different kinds of products

When a customer first mentions what they’re trying to sell online, you get an opportunity to showcase how much you know about their industry and the nuances of the products they’re selling. Sometimes that’s all you need to help establish you as the right person for the job.

  • Compliance-based Products
    If your customer wants to sell products that have regulatory compliance dynamics associated (HIPAA, Sarbanes-Oxley, etc.), it’s important that you understand what’s involved so you don’t underestimate the project. But if you already know the space, you can quickly establish expertise and highlight the specific ways you’ll mitigate known risks and anchor pricing effectively.
  • Accessory-oriented Products
    Developers who think about every WooCommerce project as just another WooCommerce project miss the opportunity to highlight their expertise and win better deals and better clients. Sites that will sell a lot of accessories for every purchased product not only require different designs, but need expertise with upsells, cross-sells, and follow-up emails.
  • Luxury Products
    People who sell luxury products know that you’re selling something different than simply the product. You are selling the story and experience, and connecting with customers in a different way. It often means a much larger photography budget, different expenses for product copy, and a designer that won’t use normal WooCommerce product pages as the default.

When a customer first mentions what they’re trying to sell online, you get an opportunity to showcase how much you know.

Different kinds of customers

There’s a dramatic difference between small customers and enterprise customers. And as you can imagine, different kinds of customers come with different internal costs, and therefore have an impact on your pricing.

  • Mom-and-Pop Shops
    The nice thing about small shops is that you’ll likely get face time with the decision maker. No committees and few meetings are pretty normal in this segment. But you may need to carve out time for education.
  • Medium Shops with internal IT
    Having an internal technical person can be really helpful. But it can also be a challenge if they perceive your efforts as a threat. Medium shops may be educated already, which can speed things up, but you may not be dealing directly with the decision maker, which can slow things down.
  • Corporate Enterprises
    It’s easy to fall into the trap of thinking that enterprises have “real” money for large eCommerce projects. But budgets don’t equal profit margin. Working with enterprises can often mean a lot of meetings – and meetings you can’t always bill for.

Every store is different, and specialization matters. Every freelancer or agency who talks about a project is different. If you treat every project the same and every store the same, you’ll lose to competitors who understand these differences and address them when talking over project requirements with a customer.

To get good at any one or two of these kinds of stores, you need to work on several similar stores. The deeper your experience base, the better you’ll be at predicting and solving common challenges, and that’s what makes you not only the expert, but also as one who can command better pricing when a prospect is comparing you to others who are bidding.

That said, clients can all differ when it comes to talking about the scope of a WooCommerce project. Let’s look at the scope factors that influence pricing.

Scope factors that influence pricing

Design: Some customers show up with a theme they already purchased. They just want you to install and activate WooCommerce and fix any glaring issues with their theme’s compatibility with the plugin. Other customers want a custom design that showcases their products in an atypical fashion, such as the luxury goods example above. The difference between these two hypothetical customers is massive – hours vs. months of effort.

Custom features: Some customers want WooCommerce configured with no features beyond what comes with the plugin. Others want to add a few WooCommerce extensions, such as subscriptions or membership extensions from Prospress and SkyVerge. Every setting in those extensions takes time and a lot of experience. And other customers want features that don’t exist in any extension and could take months of work.

Data importing and migration: Some customers are starting from scratch. Others are migrating a five-year old store from a different platform (e.g., Magento) that requires a lot of custom migration scripts. And others are going online for the first time but from an offline system that will regularly need to send data to the store. Regular data importing is radically different from one-time importing, and both are dramatically more work than not doing any data importing at all.

Third-party integrations: Ever heard a customer that needs “just” a feature? They “just” need their new store to integrate with their company’s mainframe system for inventory management that won’t be part of the store itself. Or they “just” need to integrate their WooCommerce store with a CRM or General Ledger. These can be large projects on their own, especially if they’re not regularly connected to online systems like WooCommerce.

Marketing automation: Some customers have in-house folks that work on marketing, outbound email, and the like. Others, however, expect that it will be part of the work you do. Asking questions about this aspect of scope is critical so you’re not surprised by extra analytics and integration work.

Putting it all together

Now that we’ve walked through the various factors impacting pricing, we are still left with the core question: How do we price a WooCommerce project effectively?

The answer is that you price a WooCommerce project by ensuring you aren’t caught doing complex work for free, and set your hourly rate (if billing that way) at the level that matches your experience.

That feels generic, so let’s work on an equation to help you get to a ballpark quote. Imagine that each dynamic above represents a “weighting” factor to the project, and then each option has a multiplying factor tied to it.

Of course, feel free to edit factors to match your own experience.

Store Type:

  • Digital Download – 1.0
  • Content Protection – 1.2
  • Physical Product – 1.5

Product Type:

  • Standard – 1.0
  • Accessory-oriented – 1.2
  • Luxury – 1.3
  • Compliance – 1.5

Customer Type:

  • Mom & Pop – 1.25
  • Medium w/IT – 1.0
  • Enterprise –  3.0

Scope Dynamics:

  • Design – 1-3 (basic, custom homepage, custom everything)
  • Custom features – 1.25 (per feature)
  • Data importing – 1.25-1.5 (one time, regular)
  • Integrations – 1.25 (per integration)
  • Marketing automation – 1.25 (per integrated solution)

How to use these factors

Having done your initial calls and meetings, you likely have a sense of what kind of store, what kind of products, what kind of customer, and what kind of scope are involved in the project. Based on that, you can take the multiplying factors above and bring them together for a composite multiplier.

A digital download store for a mom-and-pop, with no design or data migration, but integration with MailChimp would look like this – 1 * 1 * 1.25 * 1.25 = 1.56

A physical product store for an enterprise, with design, migration, one custom feature, two integrations for luxury products would be: 1.5 * 1.3 * 3 * 3 * 1.25 * 1.25 * 1.25 * 1.25 = 42.85

Seeing the difference in the composite multiplier might freak you out. Like I said earlier, you need to adjust the factors based on your own experience. These numbers are based on my own expertise and match up across tons of eCommerce projects over 15 years.

This is just a multiplying factor. What do you multiply it against?

That’s where you come in. Different freelancers, with different experience, spend different amounts of time and effort on a baseline implementation.

If I asked you how long it would take you to configure WooCommerce settings and make it work with a default payment gateway (e.g., PayPal or Stripe), and use a theme that works well with WooCommerce (e.g., Storefront), you would likely give me a number. This is your baseline effort.

Maybe it’s one day. Maybe it’s one week.

And if I asked you your price for that one day or one week of development, each of you would have a different number based on your own hourly billing rate. This is your baseline charge.

Price = baseline charge * composite multiplier


This approach is fast, pretty darn accurate, and provides a consistent quote across different estimators on your team.

I hope it helps you price WooCommerce projects more effectively in 2018.


Chris Lema has been working on eCommerce sites since 1997. A well-known blogger and public speaker, Chris works at Liquid Web as their VP of Products. He’s spent the last year preparing an eCommerce hosting solution for WooCommerce to provide an alternative to hosted platforms such as Shopify and BigCommerce. 


Original article written by Chris Lema >

[wpseo_map width=”100%” height=”300″ zoom=”-1″ map_style=”roadmap” scrollable=”0″ draggable=”1″ show_route=”0″ show_state=”1″ show_url=”0″] [wpseo_address hide_address=”1″ show_state=”1″ show_country=”1″ show_phone=”1″ show_phone_2=”0″ show_fax=”0″ show_email=”1″ show_url=”1″ show_logo=”0″ show_opening_hours=”1″]