I have a doubt about budgeting when working with agile iterative approach. If I understood well, in agile at the end of each iteration we have usable product, so we have some of the requirements met and then some part of the software will be already working.

How do we charge for our work in this methodology? Do we charge per iteration, i.e. charge per major requirements being met, or just charge the customer when the software is indeed finished and then receive for everything at once?

  • Completely up to you and your client. Some cynical consultants I've talked to have claimed that Agile was invented by consultants to milk a contract for as long as possible. – user40980 Oct 29 '13 at 20:35

Usually the project approach doesn't matter. Most likely one will present a daily rate per consultant/resource. Then take the rate times the days for the cost estimate.

For example (numbers for ease of multiplication):

Daily rate=100

Agile = 10 iterations. Each iteration will last 10 days = 100 days

100x100 = $10000 per consultant/resource

Different rates will apply depending on the resource (Dev, QA, Arch, PM, etc.). Some resources may not be allocated 100%.


iteration rates based on labor, or for clients that like flat-bids, price each feature based on estimates, and add up for each iteration

the 'true' answer for you will end up being 'whatever both you and the client are comfortable with'


Dr. Jeff Sutherland (original signatory of the Agile Manifesto and co-creator of Scrum) proposed a contract format for Agile based projects that he calls “Money for Nothing, and Your Change for Free”.

The fundamental approach, is that the parties agree that they are working together, and building trust in each other’s expertise.

To do this, the contract requires active customer participation, including:

  1. Prioritizing features according to business value
  2. Mutually agreed estimates for all work
  3. Active participation in each Sprint Planning
  4. Active participation in writing the acceptance criteria for each feature (for a shared definition of done)
  5. Active participation in each Sprint Review, and providing timely feedback for work (both completed and in-progress)

The value of the contract is agreed on, along with time & materials, and the scope. These are based off of the mutually agreed estimates for the work (usually produced using relative estimation by the team and the team’s historical velocity).

With this contract comes a couple of additional clauses:

Change for free - If the customer actively participates with the team as above during the process, the customer can change the scope without any additional cost, as long as the total scope is not changed (e.g. they could pull out a 13 point story further ahead in the backlog that is no longer needed, and replace it with other stories so long as they total to 13 or less points).

Guarantee of Work - If the customer actively participates with the team as above during the process, the customer can terminate the contract at any point at which they feel the implementation of the next feature costs more than the business value of the next feature, for 20% of the remaining contract value.

Further Reading:

Blog posts: http://scrum.jeffsutherland.com/2008/10/agile-contracts-money-for-nothing-and.html

PDF of slide deck: http://jeffsutherland.com/Agile2008MoneyforNothing.pdf

(I would include more links - but my reputation will not allow more than two - however if you search for "Money for nothing and you change for free" you should find further reading)

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