Our guide to pricing and quotes for web-based software development and design.
The first questions most clients ask is "What will it cost?" This
is a fair question, but is akin to asking how much it will cost to build a
house before knowing whether it will be a mud-hut or a mansion. Design and
software development costs vary greatly between various projects, and we'll
only be able to estimate cost when we fully understand what you're building.
This guide gets you started in determining the cost of your project.
-
Fixed pricing is where a client and consultant mutually agree upon
a flat fee to complete a project.
Many clients like fixed pricing because they need to fit within a
budget, or present management with a specific figure in mind.
Fixed pricing has both benefits and drawbacks. While clients
feel protected that a project price won't exceed the estimate,
fixed pricing shifts a lot of risk to the to the consultant. Because
of this, development companies typically need to charge a premium
to account for "gotchas," and to mitigate risk within the
project.
In fixed price projects, developers on the project need to make the
actual estimates. This usually means that it takes more time to
reach a detailed specification and risk analysis needed to determine
a price.
Fixed bid projects can also sometimes put the consultant and client
at odds with each other. It is in the client's best interest to
extract as much work out of the developers as possible, and in the
development company's best interest to do as little work as
possible.
-
Hourly pricing is a common pricing model with development companies
and consultants where they charge by the hour for all work.
Goals and specifications nearly always change during a project's
timeline. One big advantage to hourly rates is that it is easy to
get started on a project, and easy to adapt to changes in project
requirements. Work is not limited by an initial specification for
work, and prices do not have to be renegotiated when project
scope changes.
Hourly pricing is usually pretty fair in that clients get any work
they pay for, and developers get fairly compensated for the amount
of work they do.
Clients sometimes fear hourly rates because they worry that the
project may not be completed within budget, or that unscrupulous
contractors might take them for a ride. Hourly pricing can also put
the consultant and client at odds with each other, since hourly
rates tend to reward less efficient work.
-
Phased pricing is a pricing model that combines both hourly and fixed
pricing in an effort to strike a balance of risk between the client
and development company. Phased pricing is usually most beneficial
for larger projects that consist of more than a couple weeks of work.
Phased pricing is a model where a consultant arrives at a rough
order of magnitude estimate that describes a best guess for the
overall price of the project. Much less work goes into
estimating this price than would go into building a specification
for a fixed price project. The estimate gives a general idea as to
the scope of the project, but is subject to change.
The development company can then create an fixed-price
estimate for individual phases or iterations of the project. They
continue to create estimates for each new phase as it becomes
clearly defined. Each phase is scheduled within a short timebox of
1-2 weeks where features and milestones are agreed upon by both
client and contractor.
-
Retainer pricing works great for maintenance or support contracts.
It is a way to guarantee clients access to developers they may
need for a specified number of hours during the length of the
contract. It works best when there is known maintenance needs that
need to be performed on a regular basis for a project.
-
Maintainable prefers to do hourly pricing for short term projects,
and phased pricing for longer term projects. We do our best to
reduce risk to the client for hourly work whenever possible. We do
this in a number of ways.
Maintainable is transparent about the number of hours we work,
and the resources being put into the project. Clients have access
to a private area where they can login to see the number of hours
spent on a project. Maintainable will notify clients as soon as
possible if we believe more hours are needed to meet a
milestone than estimated.
Maintainable provides a free development server where you can review
the work in progress on your application at any time. We deliver working
software in short cycles, so you're never months into a project without
something to show for it.
-
This gets you world class development with a company passionate about
creating great software and delivering value to clients. You can view our
Guide to Choosing a Development Company
to get more of an idea about why we might charge more than other development
companies, and what to look for in general when choosing a development
company.
-
Maintainable is always available for future updates and feature requests
to your application. We can do this on either an hourly contract or retainer
basis. We want to make sure that you are happy with our results.
Maintainable is our name, and it represents our commitment to the quality of
code we deliver. Our applications will on average have much smaller
maintenance costs than other companies because of development,
testing, and quality assurance practices that we adhere to.
-
Many clients approach us with amazing ideas for software that are expressed
as "a clone of Facebook, but with some additional features." They
are often surprised at what this might cost. We ask our clients to remember
that Facebook has 700 employees and has taken $716M in venture capital.
We encourage you to find out what makes your application special and build
the features you need around that. That being said, we always welcome
ambitious projects if you have the budget for it.
-
The best way to come up with a more accurate estimate of what your project
might cost is to know exactly what you want. The more detail you can
express to us about your project, the easier it is to understand the size
and scope of the project. This means detailed notes, scribbled drawings
representing various pages, or anything else you can come up with that
details what you're looking to create.
Clients have approached us with anything from drawings on napkins to full
scale photoshop mockups of what they want. We'll work with anything you
have.
-
You should have a budget in mind for your project. We're always up-front
and honest about what we believe is achievable on your budget. We won't take
on your project if we don't believe we can deliver an application with
business value within your budget.
-
We encourage clients to envision their dream application and share
every possible function and feature that they might want. It is good to
envision the final goal for any application, even if it is not always
attainable under the initial budget for the website. Features that you may
think are costly to create may be something we're familiar enough with that
it would be a no-brainer to add.
-
Development can be expensive, and everyone operates under a budget. While
you should have a vision of your dream application, it is important to
understand the core functionality that makes your product desirable to
clients.
On large projects, we typically work by creating a working application
that is fully functional with the application's bare essentials. We then
incrementally add features by priority. This approach works well since the
client never runs out of money without a functioning product that provides
business value.
Maintainable will work with you to scope your project to fit within your
budget. We will help you find which parts of your application might be
more costly and assist you in determining priorities.