Compare website quotes by total ownership cost

Website Proposal & Ownership Cost Lab demo — the same requirements against three website proposals, with an unknown integration and the monthly cost of the selected pair

The cheapest build price is not necessarily the cheapest website proposal. A comparison only becomes useful when the proposals cover the same requirements and the same time period. Below is a method you can use with any set of quotes, followed by a worked example where the ranking changes once the comparison is complete — and a break-even check that tells you what the site would have to sell without pretending to forecast it.

Start with scope, not price

Before you look at a single amount, list what the business actually needs from the website. Group it so nothing hides:

  • Build — design, templates, search, accessibility checks.
  • Content — catalogue setup, migration from the old site.
  • Hosting — the server, peak-season capacity, monitoring.
  • Security — updates, backups, a review before launch.
  • Integrations — payments, stock sync with the till or ERP, newsletter.
  • Support — response times, a monthly change budget, training.
  • Ownership — domain renewals, licences, who owns the design files and code, data export at the end of the contract.

Mark each line mandatory or optional. Then, for every proposal, mark each requirement as included, excluded or unknown. An unknown required component is not a free component. It is a question you still have to ask.

Separate the billing patterns

A build payment happens once. Monthly hosting repeats. A domain renewal may happen annually — and when it does, the whole amount leaves your account in that month. Transaction fees per order and fees as a share of revenue change with the usage assumptions behind them.

Combining all of this into one monthly figure can hide the cash needed at the start. So keep five patterns apart:

Pattern When it is paid
One-time once, in the month you enter
Monthly every month from the first to the last month
Annual in full in the first month and every 12 months after it
Per order fee × orders per month you assume for that proposal
Share of revenue rate × revenue per month you assume

If a vendor raises a price every year, enter the increase once as an annual escalation — factor = (1 + increase) raised to the number of whole years. A monthly $100 line with a 10% annual increase costs 12 × $100 + 12 × $110 = $2,520 over 24 months. Do not also enter the higher price as a second line for the same months, or the increase is counted twice.

A worked example: two proposals over 24 months

Consider two illustrative proposals for a shop with eight employees.

Proposal A charges $1,000 to build, $50 per month for hosting and $120 at the beginning of each year for the domain:

  • $1,000 + 24 × $50 + 2 × $120 = $2,440
  • First month: $1,000 + $50 + $120 = $1,170
  • Month 13: $50 + $120 = $170, because the domain renewal returns.

Proposal B charges $1,500 to build and $30 per month for hosting, domain and updates:

  • $1,500 + 24 × $30 = $2,220

If both cover the same mandatory requirements, B is $220 lower over 24 months, even though its build price is higher. Its first month is $1,530, so A needs less cash at the start — two different questions with two different answers.

The missing integration

Now suppose B's proposal does not mention the stock sync with the till system, which the shop marked as mandatory. Its $2,220 is only the known portion until the integration is priced. A comparison tool should show it as incomplete and refuse to call it the winner.

You ask the vendor and get a price: $300 for the integration. Entered as a supplemental cost line and marked "priced as a supplement", it brings B to $2,220 + $300 = $2,520. Now A is $80 lower on the completed scope.

The result changed because the comparison became more complete — not because a ranking formula changed its opinion. A third proposal in the demo makes the same point from the other side: Proposal C quotes $1,800 with two years of hosting included, the lowest headline number of all, but leaves the required integration "possible later" with no price. Its $1,800 is a lower bound, not a total, and it stays out of the ranking.

Keep tax assumptions explicit

Cash paid and economic cost can differ when the business is entitled to recover a tax. On a $100 line priced before 20% tax, you pay $120. If your business recovers that tax, the economic cost is $100; if it does not, it is $120. On a $120 price that already includes 20% tax, the tax inside it is $20.

A calculator should apply the treatment you enter, not decide whether your business qualifies. The same goes for currencies: a quote of €100 at a rate of 1.1 that you entered becomes $110. Without a rate the total should stay open rather than be guessed.

Use break-even as a condition, not a sales forecast

Sometimes the cheaper platform charges per order. Then the question is how many additional orders the site would need to cover what it costs to own.

If incremental fixed website costs are $1,000 and each additional order contributes $20 before $2 of website fees, the remaining contribution is $18. At least 56 additional orders are needed to cover the fixed cost under those assumptions:

  • 55 orders × $18 = $990 — not enough;
  • 56 orders × $18 = $1,008 — enough.

Notice what is not in the numerator: the fees on the orders you already assume. Writing (1,000 + 56 × 2) ÷ 18 would count them twice. And if the fees change during the period — an annual increase, a discount, a fee that starts in month 3 — no single number is honest; a month-by-month scenario under your planned orders is.

Nothing in that calculation establishes that the site will generate the orders.

The same method at a larger scale

A medium-sized business has the same problem with more rows. In the demo, a retailer with four sites compares 40 requirements — online shop, four stores, a trade portal and head office — across three vendors over 24 months. Licences for 100 users and 50,000 orders a month are visible usage inputs rather than part of a headline price.

With those inputs, a hosted platform that looks inexpensive on setup ($18,000) reaches $515,580 over 24 months once per-order and payment fees are counted, while a custom build with a maintenance retainer reaches $195,540. A third vendor quoting in euros leaves content migration excluded and accessibility unknown, and its quote has already expired — so it shows only a lower bound. Which proposal fits depends on your assumptions; the point is that the assumptions are on the page.

Try it with the demo

Website Proposal & Ownership Cost Lab keeps scope and ownership cost together for a single shop or a medium-sized procurement review. Open the fixed demo to inspect the missing-integration example and its month-by-month report. Use Business Decision X-Ray for the wider business decision; this tool focuses on the proposal details that feed it.

Tools mentioned in this guide

More guides