Let's suppose a customer needs a software product and comes to a software development vendor. The customer describes the product and maybe even provides business requirements documentation (BRD). Then the customer asks when the product will be done and for what price, i.e. the customer wants a fixed-price contract.

To answer this question the vendor needs to perform busines analysis (BA, System Analyst, UX designer, etc) and to prepare SRS (Software Requirement Specification). After that, this SRS needs to be agreed with the customer. Only then, based on the SRS, the vendor can provide the customer with the contract price and the amount of time required to implement the product. This process requires a fair amount of recources and time from the vendor. At whose expense is this done?

  • Remember that the customer can ask you to do all this work then simply not sign your contract or sign your competitor's contract instead of yours. So it is basically impossible to make your customer pay for this work. This is simply overhead like your electricity bills and rent
    – slebetman
    Commented Jan 20, 2021 at 1:12

9 Answers 9


This depends a lot on how the two companies involved in the contract negotiation operate.

You have to realize that there is always a cost of doing business, and somehow you have to recuperate it from the profits you are making. Think about your daily work, for example. You might work for 8 hours a day, but possibly you are productive and producing an actual result for, say, 6 hours. The rest of the time you might read emails, be in useless meetings, etc. Same for a company, but multiplied by the number of employees and adding to this other things like doing legal stuff that the law requires for example, where you don't actually get a profit from, etc.

Contract negotiations are included in this cost of doing business. It takes time. And time is money. If you win the contract, you can include this cost in the overall price of the contract so you can recuperate your investment. If you don't win the contract, well... that's the cost of doing business and you need to find other ways to recuperate it.

Unfortunately, many customers just send out request for proposals to multiple vendors and then they choose the one that offers the best price and conditions, expecting all of this to be free and only pay the company they sign the contract with. But as you noticed yourself, responding to this request takes time away from the vendor. And time is money.

And now I get back to what I said in the beginning of my answer: this depends a lot on the companies. A vendor might ask for compensation for this, and a customer might understand that nothing is for free and pay something for this effort, even if they don't choose the vendor for implementing the software. But you also have to take into account other aspects. For example, if the vendor asks for payment for the time spent drafting the contract, performing various analyses, estimations, etc, and the customer expects all of this to just be the cost of doing business for the vendor, how do you think the vendor will be perceived by the customer? The contract negotiation will start on the wrong foot, so the vendor may lose the contract before even going into more details or negotiations.

For these reasons, many times, this cost is carried by the vendor. There is inherent risk in doing business. Sometimes you have to take a risk in order to bring in a new customer. You can't always protect yourself from risk or ask potential clients to pay upfront for your own risks.

  • 4
    It also depends on the size of the business. During my contractor days, customers usually perceived it as positive that I pointed out that I had to charge them for the estimate, because it meant that I could give it the same priority as other paid work. Commented Jan 18, 2021 at 10:52
  • I agree it depends on the relationship between the two companies but the more accurate estimate the customer requires the more they will be expected to pay for it. A ROM (rough order of magnitude) quote will normally be free but if you require a very precise estimate you will likely be asked to pay towards the generation of the estimate.
    – deep64blue
    Commented Jan 18, 2021 at 12:52
  • 1
    @AlanDev: Indeed, there is some point beyond which you have to ask the customer to pay for your effort and what you are delivering to them in preparation of a contract, and if they still expect all of it to be free, to give up on the customer and tell them to take their project some place else.
    – Bogdan
    Commented Jan 18, 2021 at 13:46
  • 2
    It also depends on the relative size of the contract and the estimation, and the perceived likelihood of getting the contract. Boeing's investment to get the JSF contract is a different situation than a solo web-designer's bid to put up a splash page for a local restaurant.
    – fectin
    Commented Jan 19, 2021 at 2:22
  • 1
    @AlanDev Even then, it depends on the relationship between the two companies. If a very big, very good, client asks for a precise quote that takes a bit over a week to complete, the risk/reward ratio is good enough to do that out of pocket. The cost is so likely to be recuperated in the contract itself that it's worth it.
    – Mast
    Commented Aug 20, 2021 at 10:02

My company will sometimes engage into a "discovery" phase where we will spend 20-80 hours detailing the exact requirements of the project and determining the cost. We do this if we believe the requirements are not well documented enough or the project is so large that being off on the quote plus or minus 10% could mean 10,000+ dollars.

The rate at which we charge for discovery is quite low in comparison to development.

We then hand the client that package of documentation as well as an official quote. That way if they decide to not accept the quote, they did get something in return.

  • 1
    In addition to this answer, getting paid for Business Analysis is a great tool for separating serious request for quotes from non-serious ones. Companies that are intending to spend 20k-100k+ on custom software are very will to spend a tiny fraction on that on a detailed design. Companies that aren't really serious will drop out, stopping them from wasting your time. Additionally this process is very helpful in getting them to clearly define exactly what they want you to build to stop any unpaid scope creep in future. Commented Jan 19, 2021 at 23:47

Pre-sales work is normally assumed to be at the vendor's expense, but usually I would expect the activities you describe (analysis and design) to be part of the work the customer pays for after the contract is signed rather than before. Detailed analysis and design requires extensive commitment and work from the customer as well as the vendor. The price you should quote first is therefore an estimate, not a commitment.

  • We can provide a rough estimate early, but for a customer to be able to decide whether or not they are going to sign a contract they need to know the pretty much exact estimate, which requires the analysis, SRS agreement, etc.
    – Daniel
    Commented Jan 17, 2021 at 14:01
  • 3
    @Daniel, The place I work for AFAIK bills for that time in form of a separate, short-term contract. This sometimes covers proof-of-concept code.
    – liori
    Commented Jan 17, 2021 at 19:29

These costs are (usually) covered by the vendor. This is inherent risk, which can bankrupt small, specialized startup, especially if it enters the market under-capitalized. As a side note, this was for example a reason my university lab stopped working directly with clients seeking customized solutions. We only work with solution-providers who do this task for their clients, before they even approach us with clearly delineated task.

  • Hi xmp125a, what you say is very valid for FFP contracts. Many/most vendors will avoid FFP contracts for custom development. Quote a T&M estimate instead.
    – nvogel
    Commented Jan 17, 2021 at 18:11
  • @nvogel Easier said than done, especially when customer asks, "how much time will it take then ant what exactly will the material costs" be :). It boils down to how much negotiating power one has, and even more, how educated is the customer. Well educated customers will perhaps to push for FFP, but understand when you agree only on T&M estimate. On the other hand, customers who have little idea of what are they ordering will stick to FFP no matter what and those are best to avoid unless you have significant capital and lawyers.
    – xmp125a
    Commented Jan 17, 2021 at 19:36
  • 1
    If the customer insists then give the T&M quote alongside the FFP one. Since the T&M price is inevitably cheaper there is a strong incentive for them to pick the cheaper option. Settle for FFP only if you have a good relationship and understand the customer already or if other considerations justify the risk.
    – nvogel
    Commented Jan 17, 2021 at 20:40

As already answered, at some level this depends on what the sides agree upon, and there are no laws or rules governing this.

Considerations that affect the decision of who pays, include:

  • Will the quote be a simple number, or will it include the entire research you described? If you're delivering something useful, it's easier to ask to be paid.
  • That said, often the quality of the research may be a major factor in the decision of who wins the project, in which case you can't be expected to be paid for it, and you want it to be as comprehensive as possible. (Read: as expensive as you can afford.)

It's not unheard of (though not necessarily moral) for startups to ask for the full nine-yards in the quotes from various vendors, including extensive meetings to understand and improve the technical documents. Then they disappear and implement it themselves.

As mentioned in other answers, it's a business risk. On the other hand, a comprehensive quote can backfire. I've seen projects where obvious functionality was not mentioned in the quote. When the company wins the job and signs on the basis of this quote, every time the customer requests something - even obvious functionally - if it was not mentioned in the quote, they are charged for it as per the change request agreement. This section of the agreement can become very expensive for the customer, depending on how it's written.

The sensible way to circumvent this, is - as nvogel mentioned - for the initial price to be an estimate based on minimal work, and for the final accurate quote to be defined after the sides have committed to work together.

  • What does "committed to work together" mean? Does it mean signing a contract?
    – Daniel
    Commented Jan 18, 2021 at 18:44
  • @Daniel, that may depend on culture. Often it's only a memorandum of understanding (MoU) at this stage. Commented Jan 19, 2021 at 7:57
  • 1
    That, and including an estimated 20% 'future changes' budget up front. Because there are always changes. And you can tell the client that if they don't make changes they won't have to pay it. But when they inevitably do, you can at least point out that you warned them.
    – Kaz
    Commented Jan 19, 2021 at 17:24

First of all, always there is a proposal that you should prepare to show that you have the abilities to do the customers' requirements as well as they want. And most of the time you and your team have a sense of these abilities and you can put your comments on the time schedule and cost of the project. These kinds of preparation expenses are on the vendor's side.

Secondly, although it depends on the project methodology that you use, I think that you should prepare the SRS (maybe after some meetings), schedule the tasks (use control project tools), or think about the UX after the contract is signed.

Also, you should consider the project risks and failure.


Usually the same way companies pay for their sales teams and advertising budgets: Out of their own profit margin, as a cost of doing business. The idea is that you spend $xxx,xxx and this brings in business that generates more money than it cost to acquire it. The contract itself usually has a fairly hefty 'margin' baked into it precisely because it has to pay for all the stuff companies need to do that aren't directly billed to the end client.

It doesn't really matter to the company whether the money is spent on salespeople or lawyers or analysts or managers or a 3rd party contractor, as long as it (hopefully) brings in enough business to pay for all of it.


I worked at a small vendor with a simple rule: We need clear requirements. If you don’t have clear requirements you can hire us to write clear requirements, and we know better than most clients how to do that. You pay for the service, but the end result is yours, you can take it to another vendor, or implement it yourself, or get a quote from us to implement it.

The cost is fixed and not very high, and having clear requirements usually saves you money in the long run.


The answer depends a lot on the industry/project size and type/and the organization.

As others have pointed out, customers usually expect the vendor to provide a quote for free. There is nothing to do about it. However, how accurate/detailed is the quote and how it is structured can be negotiated.

Good customers understand that discovering and detailing their needs is a large part of a software engineering project. Unless the needs are trivial or from a template, discovering them is part of the service.

Furthermore, in a non-trivial scenario, it is best to follow lean|agile methodologies and aim to quickly deliver a proof-of-concept solution. The proof-of-concept then helps to understand further customer needs better and provides some immediate value to customers without investing too much in detailing all the needs. There could be a quick and somewhat accurate estimate for the proof-of-concept.

Some customers prefer to know the exact total amount upfront. Without knowing the exact scope of work there could be only a ballpark estimate. It is part of the presales to establish a good trust and rapport with the customer and enter a collaborative contract where parties act to support each other.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.