How Much Does A Website Cost?

George-Valentin Hulpoi
George-Valentin Hulpoi10 min read · 2 Feb

There is no fixed price, but a general formula is (quantity * complexity * quality) * rate.

In the article, I will try to explain as simply as possible, for non-technical people, all the factors that influence the price, and at the end of the article, you will find different examples of prices for landing pages, presentation websites, online stores, or custom web applications.



In this article, you'll come across terms like visual builders, templates, plugins, and libraries. I feel obliged to give you a simple explanation of what these terms mean and give you some examples.


A template, like the ones you find at places like ThemeForest, is like a ready-made package for building websites or digital content.

Sample template (landing page) from ThemeForest

Figure: Sample template (landing page) from ThemeForest

It's perfect for people who don't want to start from scratch or aren't design experts. These templates come with things like layouts, colors, and fonts — and they also include functional elements like menus and widgets.

You can modify them to suit your style and content, so it's a quick and easy way to get a professional-looking website without all the hassle of building them yourself.


A theme is a set of templates that perfectly match a visual builder or system (for example, WordPress).

Example of themes in WordPress

Figure: Example of themes in WordPress

Visual Builder

A visual builder such as Webflow or WordPress Elementor is a tool that allows you to create and customize a website without the need for extensive coding knowledge.

Example of visual builder (Webflow)

These platforms usually have a drag-and-drop interface that allows you to visually build a web page.

You can choose pre-made components, widgets, and templates and customize them in real time by adjusting settings, colors, fonts, and layout.

The visual builder simplifies the website development process, making it accessible to people with limited coding experience, while still providing a level of flexibility and creativity in design.


A plugin is a component that adds new functionality to a website. For example, WordPress was made to create a blog, but using the plugin called WooCommerce you can turn your website into an online store.

Another example is a plugin that adds a contact form to your website, you just add it, configure it and it gives you the feature you want.


A library is similar to a plugin, but the difference is that it is more developer-oriented. This means you as a non-technical person can't just add the library to your website and expect it to add functionality, you have to code to do so.

Formula Explained


When we talk about "quantity" in this context, we mean the features you want your website to have. For example, if a business listing site also wants to include a blog on its web page, we call the blog a new feature.

A feature can include sub-features. For example, a website can have various elements such as pages, blog, legal pages, and an online store. The online store is a feature in itself, but it is composed of several sub-features such as products, orders, shopping cart, etc.

Within the SCRUM method, each feature is analyzed, and if it seems too complex, it is broken down into sub-features. These are then reanalyzed until they are considered simple features. Thus, the focus is on managing simple sub-features which, when combined, form a more complex feature.

A common mistake is not to describe all the features or to give superficial descriptions. Let's take as an example the desire to have an online store with a shopping cart. Stating that you want a shopping cart can be considered a superficial description. An experienced developer might ask you detailed questions such as: Where can the shopping cart be accessed (on a specific page or from any page)? Should the cart remain saved even after the user exits? Should an email be sent when the user leaves the website without completing the order? And so on.

I know you are not familiar with the technical terms and may feel that it is difficult to manage all these details. However, you can make a general list of features and then discuss it with an experienced developer to get help with the details.


Each feature can be easier or harder to add, meaning some are simpler and some more complex.

If you're a non-technical person and you say you want a certain feature, only a developer can tell you how complicated it is. The developer mustn't underestimate the difficulty of the feature, because, in the end, they may ask for more money or deliver a poor-quality product.

Let's take, for example, a section on your page with a call to action button. When you press the button, it takes you to the contact page - a simple feature that can be implemented in minutes. But what if you want to know what page the user came from when they filled out the form? Even if the button remains the same, this functionality can take up to 30 minutes to implement.

In this situation, using a visual builder, template, theme, plugin, or library can reduce your complexity because they are already built and just need to be introduced.

Take for example a Live Chat module, which might normally be a complicated feature. However, if you use a plugin, you just add it, and configure it, and a feature that could take weeks becomes a feature that you can implement in an hour at most.

Seems simple, doesn't it? When you want something complex, the idea is to find something already made. However, things are often not that simple. Often what you find doesn't exactly fit your needs or you can't configure it the way you want. Other times, what you find may be of questionable quality or create other problems.

For simple websites, you can use themes, templates, or plugins, but when it comes to more complex projects, this approach can be quite difficult.


I like to separate quality into two aspects: end-user quality and technical quality.

End-user Quality

This type of quality refers to what the user feels and notices when accessing the website, taking into account aspects such as speed, user experience, and design.

Whatever type of website they visit, people expect it to be fast, easy to use, and of course, look good to be considered perfect.

Sometimes the problem comes when you want to provide this level of quality, and that requires more effort. For example, let's take a product page that has several pictures and you can see them all by swiping. The functionality seems to be working, but upon closer investigation, you realize that the page is loading slower due to the large number of pictures.

What can you do in this situation? Well, the developer needs to spend more time to improve the feature so that the page loads faster. In other words, it's about increasing the quality of that functionality.

Example of smooth vs jerky animation

Figure: Example of smooth vs jerky animation

Another example is animations. If they are not properly optimized for different types of devices, they can appear choppy. In this situation, again, the developer has to invest more time to ensure that the animations run smoothly on various devices.

Technical Quality

If you want a custom web application, this part is essential for you. Quality here refers to how a particular feature was built, how easily it can be modified or extended, and how stable it is.

As you have a web application, you add more and more functionality in general. If the technical quality is not solid, development becomes more and more difficult as new features are introduced. Especially if someone else takes over the project and the technical quality is low, it will be extremely complicated to continue developing the web application.

I know you are not tech-savvy, but I want to point out a few important points. Technically speaking, your web application should have automated tests and the source code should be clear and easy to understand for other programmers.

Of course, the subject is more complex, but I will summarize these essential points. It is a matter that you should keep in mind, especially if you do not want to spend considerable sums to correct the mistakes of others.

NOTE: I mentioned in an earlier section about complexity that tools like visual builders, templates, themes, and plugins can make a feature simpler, but I feel the need to warn you about this. In this industry, the focus has often been on aesthetics rather than quality.

In the past, I wanted to create a theme and after researching the market a bit, I found that the project is rated more for its appearance, not necessarily for the build quality. This trend is reflected in almost every theme or template available in the market, most of which are of questionable quality.


The rate is the amount you pay for a developer's work per hour. This rate is influenced by the technical experience of the developer and the country in which they work. The quantity, complexity, and quality of the project define the total amount of work, and the rate determines the final price you pay.

This aspect is quite subtle because sometimes, whether the rate is low or high, there is no guarantee that all the features will be delivered at the quality you want.

Consider the following situation: in India, developers are very affordable, but there is a negative reputation associated with it - they promise a lot, but often do not deliver. However, there is a chance to find a freelancer with considerable experience who may be early in their career and is willing to provide services at a reduced rate.

So does a lower price always mean lower quality? Generally yes, but not necessarily always.

Another option is to work with a developer from a well-developed country such as Canada or the United States, where a skilled developer can command as much as $100 per hour. Does a high price automatically guarantee high quality? Not always. Even if the developer has positive reviews, they can often come from non-technical people who may not fully understand the quality of the work provided.

Does high cost ensure high quality? It might, but you have no guarantee.

NOTE: I find it funny the current context where big companies sell services at very high prices, but then outsource to countries like India at much lower prices. In this situation, the developers involved may be careless and work sloppily. It is yet another example that shows that a high price does not always guarantee high quality.

Another valuable piece of information is that a person using visual builders has a lower rate than a programmer.