Blog: WordPress
Creative team working in a startup

How Long Does It Take To Make A Custom WordPress Theme?

Avatar for John Locke

John Locke is a SEO consultant from Sacramento, CA. He helps manufacturing businesses rank higher through his web agency, Lockedown SEO.

One of the first questions people ask when they’re searching for a WordPress developer is “How long does it take to build a custom WordPress theme?”

Like everything else in web development, the answer is “It depends.”

Keep in mind that development is one stage of the web design cycle. (Most projects have discovery, strategy, design, development, testing, and post-launch stages.)

If we’re defining a custom WordPress theme as a built-from-scratch theme (not a child theme), for use on a specific website, there are a few factors that influence the timeline for theme development.

For a really short answer, I’ve turned out custom WordPress themes in as little as one week. I’ve also had theme projects that lasted several months, due to complexity.

Typically though, most custom theme development projects take about two to three weeks.

Let’s look at some of the factors that determine how long a WordPress development project will take.

More Complexity Means Longer WordPress Theme Development

Obviously, simpler themes will take less time, and more complex projects will take more time. It all depends on how many moving parts there are in the project.

By moving parts, that means within the site itself, and also in the decision making process.

Factor #1: Variety of Page Layouts

It’s not really how many pages there are in a site, but how many different types of page layouts there are that make a custom theme more complex.

WordPress, like many content management systems, uses page templates to determine what shows up on a page, and how that information is laid out.

The more variety in the types of page layouts that exists, the longer a custom theme is likely to take.

Factor #2: Different Levels of Complexity

Let’s say a WordPress project is a simple marketing site, only displaying text and images, without much page variation. This is the most basic type of custom theme.

As you add more pages that have a unique type of layout or page view, that’s adding a layer of complexity to the project.

Project timelines also depend greatly on the type of functionality that are part of the site.

Let’s say you need to add e-commerce, an event calendar, and some other tools to our basic marketing site. Now we’ve added several additional layers of complexity to our custom theme.

This functionality is usually added through plugins, which normally come with their own default behavior, layout, and appearance.

It takes time to make sure the layout and design of this new functionality aligns with the rest of your site.

If we need to alter our plugins in any way, we may need to create custom templates for those page layouts, so they can match our unique designs.

Certain plugins, like WooCommerce (a popular e-commerce plugin), have places where they can be overridden — but you must know how to code, and where to “hook” into the default plugin code.

Certain custom designs and layouts can be brought to fruition when we add extra layers of functionality to a site, but we have to:

  • 1)  Know whether specific plugins can be overridden safely, in a way that allows them to be updated.
  • 2)  Figure out if we achieve our intended changes.
  • 3)  Do the actual development and build our custom overrides.
  • 4)  Save time for testing to make sure everything works correctly and doesn’t cause conflicts with other plugins.

For e-commerce websites, we already have to allow extra time for setting up payment gateways, testing the payment processing, and testing the email notifications for orders and customer receipts.

An Aside: Reasons To Choose Custom WordPress Theme Development

Many people use child themes in conjunction with a base theme as a way to speed up a project or keep a project within a certain budget. This is a reasonable choice as long as you know how to evaluate WordPress themes. I encourage clients to find a trustworthy WordPress consultancy first, and work with them to establish project goals and work together to choose a suitable parent theme.

You see, oftentimes, buying a base theme from ThemeForest and developing a child theme can take almost as long as building a theme from scratch — except with a custom theme, you have much better site performance, due to less theme bloat. This means your pages load faster, which is good for user experience, higher conversion rates, less abandoned carts, and better SEO.

Many themes found in marketplaces like Envato (ThemeForest) also lock you into one theme, because the site content, post types, and plugins are all bundled into the theme.

Essentially, much of the site data in a ThemeForest theme gets lost forever when you switch themes later on down the road, because Custom Post Types are “baked” into the theme, instead of being created using an outside plugin.

Custom built themes are a rock-solid way to create just the functionality you need, while keeping performance high, and your site data intact and portable.

Factor #3: How People Are Involved In The Project?

There’s one more factor that has an impact on how long custom theme development takes — the number of people involved in the decision and project management process.

The more that’s at stake, the more people are usually involved in the strategy and design stages. Larger clients have more layers to their processes. Larger design teams may have more people involved in the communication loop. Both of these can delay necessary communication or information.

The fastest way projects I’ve been involved with have the most streamlined points of contact. Meaning, if I can talk to one or two people and those people are the ones making decisions, things tend to go faster.

Projects go slower when there are many layers of people involved in making decisions about the projects. These extra layers can be in the client organization, or in the group sub-contracting me as a WordPress consultant. But the more layers communication needs to go through, the more time a project generally takes.

Projects are lean and move quickly when it is clear who owns the project on each side, and I can talk to the project decision makers in the client organization directly.


Most WordPress projects, from start to launch, take about six to twelve weeks, if you include every stage, and many of these stages can overlap. Development is one piece inside this puzzle.

The web development stage falls somewhere in the middle of this — past discovery, strategy, and design; and before testing, pre-launch training and post-launch marketing.

If you don’t have a lot of functionality or complexity in your custom theme, development can be done fairly quick. The more layers of complexity in development, communication, or decision-making are involved, the longer a project will end up taking. If the design team is already talking to the development team before handing them the finalized design, this can provide a head start.

Most custom theme development is part of a larger process, but two weeks (give or take a week) is normal for most small or mid-sized projects. WordPress projects for larger organizations tend to take longer, both because of increased complexity, levels of communication, and necessary sign-offs.

If you have a WordPress project you need brought to life, feel free to reach out and contact me.

Avatar for John Locke

John Locke is a SEO consultant from Sacramento, CA. He helps manufacturing businesses rank higher through his web agency, Lockedown SEO.

6 comments on “How Long Does It Take To Make A Custom WordPress Theme?

    1. Hi Jordan:

      Pricing is difficult, especially when you are first starting out. Many of my early projects were priced comically low. Like development, design, or writing, pricing is something that takes practice to become good at.

      One thing that has helped me, especially in the last year, is to think about it like this: If my freelance business had to pay me a salary, and still cover expenses, how would that affect how I price projects?

      A mistake that I made for a few years was to base pricing off of what I earned hourly before in my blue-collar life. If $20 an hour was a good living before, then $25 or even $30 an hour starting out should be a lot, right?

      The thing I didn’t realize is that when I was working for someone else, I almost always had 40 hours a week. Sometimes 50 hours a week. When I was a freelance developer for my own clients or subcontracting to larger agencies, that 40 hours a week of billable time was not there. But the hourly wage was the only frame of reference I had up to that point.

      But when you are used to thinking $xx an hour is a lot of money, it takes a lot of time and practice charging that much to actually believe it. Most people I talk to that are sole proprietors or freelancers still struggle with this, even if they’ve been doing it for a long time.

      Later on, I looked at what other people charged to internally tell myself what a normal rate was. Even doing this, you will still need to progressively push your boundaries to see what project or hourly rate is right for you.

      As your experience fielding your own projects grows, your rate will change. You will probably know when it is time to change, or push yourself to see what is right for you.

      One last thing I want to share is that you should always consider what it takes to operate as an independent business, and work backwards from there. Most freelancers end up eventually seeking a 9 to 5 job again because (((their pipeline * their project rate) – their business expenses) – their personal expenses) does not leave them with enough to continue to stay independent.

      If you operate as a freelancer or an independent consultant, your project rate should be higher than if you were a salaried employee. This is because the cost of a salaried employee is actually (wage + benefits), and as an independent, you still have to cover that (plus your business profit) out of your own rate.

      Hope this helps, and thank you so much for reading and commenting!

      – John

      1. Thank you so much John, for providing so detailed analysis and how this rate should be working, it cleared many things in my mind and I was almost in same situation as well as sometimes if a theme project completed by a developer in 10 hours its not going to cover everything so you need to be careful while pricing a project, as if you are able to do the same thing in 1 hour due to your years of experience and fast learning skills you should charge the value not just for HOURS.

        1. Thank you Ijaz:

          Absolutely, you should charge for the value you deliver. It is easy to get undercut on price if you charge only for hours. In fact, it penalizes the developer for efficiency if they charge hourly.


  1. I think your opinion will mislead many decision-makers with a non-technical background.
    What if I ask you to use WordPress and customize it as Facebook’s latest version? And we expect you to finish the website within 1 – 2 weeks as you mentioned in the article.

    Most of the time, developers need to customize a WordPress site from a blank starter theme according to customers’ requirements and change requests.

    For some UI/UX design, it requires time to handle with Javascript library and CSS/SCSS/SASS.

    Many clients won’t understand the whole development cycle of SDLC:
    Planning and Requirement Analysis-> Design-> Implementation -> Testing -> Deployment

    They just want the website done ASAP.
    Although you have mentioned 6-12 weeks, it is still a bit misleading to the non-tech background.

    1. Hi Johnny:

      I appreciate your feedback. While prospects sometimes underestimate how long it takes to build a complex website, we would never accept a project with the requirements you are describing.

      We agree it is unreasonable to try and build a Facebook clone in two weeks. Those are not our ideal clients.

      Most of our builds are for custom marketing sites, or occasionally, an e-commerce website. These are the types of projects we have had repeated success with.

      In the past, we have been approached by prospective clients for “rescue jobs” on site builds by other web development shops that they were not happy with. These are also not ideal jobs for us. The expectations on these are most often to quickly fix a laundry list of issues for an unreasonably low budget.

      I wish you much success, and I truly hope you find your ideal clients and clearly define the projects your web development shop is best suited for.

      Best regards,

Join the Conversation

Your email address will be kept private. Required fields marked *.