Skip to main content

How do you charge for building web app projects?

Rails • Asked by Arjun Rajkumar

Hey all.. Just needed some advice/suggestions on how to charge for building a web app. Would be great to hear how you (freelancer or agencies) charge for projects? Do you breakdown into front end + backend or something more? Or have you found another way to do this.

Right now, this is the process I am following.
(Ideas -> Wireframes -> Design -> Slicing -> Build)

Ideas -> Wireframes :
THis is basically done at the initial discussion staget to get all their ideas onto paper (before starting the project). Helps me understand the scope of the project and what actually needs to be built. ROugh wireframes.
Once this is done I can set a cost for the front-end (Design / Slicing) and the backend (Build)

Wireframes -> Design -> Slicing - $XYZ in 10 days.
At this stage we get the layouts, the colours, the look and feel sorted. End product is HTML/CSS/JS.

Build -$ABC in 20 days.
This is using Ruby and Rails to actually build the app.

Total cost = $XYZ + $ABC in 30 days.

Both XYZ and ABC are not dependent on hourly rate or anything. I basically try to figure what the clients budget is in the beginning, and pitch the total cost to somehwere around that figure.

I'm trying to stay away from the 'hourly' rate card and also trying to prevent scope creep from happening. The wireframes in the beginning help me do this to a large extent. Just interested to hear how other people are doing this with their clients?

Will be great to hear your insights.

Thanks

Arjun


Hey Arjun!

This is a fantastic question. I had a bunch of different methods of doing this over the years and yours sounds very much like what I did.

What I finally ended up with was charging a flat fee per project. This worked because I generally had a long in-depth conversation about what needed to be built and charged extra to account for any changes that were likely to come up. If things deviated too much from the original plan, I'd usually have to cut the project off at a point and renegotiate things. This didn't happen often, but it was a concern. If you get done early, you make more profit. This is the big plus that the other hourly, daily, or weekly options don't really have, but you can also lose money here if you screw things up.

Another option I did for more open ended projects was to do weekly or daily pricing. They could buy chunks of my time and that works out really well. I know my budget and availability and they can budget as well for things.

One thing for me was that I only did the building part, so you've got to also account for the Wireframing, Design and Slicing parts. I can imagine that those have a lot more back and forth with the clients. Generally I had someone else doing the designs but I might participate in that part helping to improve the flow of the app and everything.

As for budgeting things, I'd usually try to find out how deep the customer wants to go on things and what their budget was. I'd tell them that their budget dictated a lot of what we might build. Since I worked for a lot of startups, we might start out with a small $2k-5k project to make sure we work together well and that what we were building is on the right track. A proof of concept if you will. It helped align their ideas with how much money would be required to build their bigger vision stuff as well and I knew that if we did a good job on the first project, we could work again on a larger one.


Hey Chris.. Thanks.. Yep, the wireframing part is a lot of back and forth with the client.. But that helps in properly defining whats needed and in most cases prevent scope creep.. I do work with a designer for the look & feel stages - so that helps.

The proof of concept is something i'm trying too.. As in instead of building the whole thing - we build out an important small part in 2 weeks or so.. And I charge for that. And it helps in seeing if the client and me are a good fit.

Interested in hearing more about your daily/weekly pricing if you still remember about them. Not the amount - but how you went about it.

I think just putting a figure on how much i'm worth internally (or how much I want to make every month) has helped the most in taking on more projects and looking after my time.


Yeah, the proof of concept part helped me for two reasons:

  1. It greases the wheels. The clients know you're not trying to gouge them for all they got.
  2. You get to back out early if the client isn't good to work with.

Roughly my daily and weekly pricing was based upon hourly pricing. Say like $100/hr equates to $4k for a 40 hour week. Chances are you're not going to be booked every single week of the year so the weekly price is high enough to account for time you're doing sales and taxes and other expenses you may have. If all goes well, you should be making a six-figure salary doing that.

The daily and weekly stuff was usually for ongoing projects. Say a couple months down the line after finishing a project the client comes back with some maintenance problems or revisions. This pricing makes it fairly easy for you to say okay cool, I'll tackle those things and it'll cost $X per day. It worked best when you couldn't quite judge how much time something was going to take which is where flat fee is riskier.

You're definitely right about picking a number of how much you want to make being the best way to decide what to charge. I think roughly the easiest way to break things down is to work backwards. If you want to make $100k/yr (keep taxes in mind), you're going to want to make basically $8300 a month. That's $2075 a week, $415 a day, or roughly $50/hr. Things that you have to pay for that an employer wouldn't pushes that number up (health insurance, taxes for self employed, office, internet, computer, etc) so you'll want to add those into the calculation. It's good to budget for buying some new computer equipment each year, and so on, so you'll want to tack those on top.

Another thing to think about is that often times you're going to be in one of two modes: Sales mode or Execution mode. Usually you won't be getting that many new projects while you're doing work for someone. I generally got new projects when I was nearing the end of a project and was taking more time out to go to meetups and talk with leads. When I got a project I was usually heads down working and so things tended to go in phases to keep the pipeline of work going. Referrals are always the best source, but you have to do really good work to make that work and your clients need to know other potential clients.

And of course, you have to be actually worth those prices you want to charge. It's not hard to work your prices up with experience, but a junior dev trying to charge $100/hr is going to struggle making clients think they're worth it. That's a lot of money. If you think of it from the flip side and consider paying someone to build one of your apps for $100/hr, you're gonna want to make sure they aren't slow or mediocre at what they do. The way I dealt with that was starting out charging $25/hr, taking on tons of work and each new client raising the prices slowly by like $5/hr or so. My slowness was accounted for (or I didn't bill for some hours) and the clients were happy and while I didn't make as much money as I wanted, it was exactly what I needed to work my way up to higher pricing.

This makes me want to do like a course on consulting or something. I think that would be really fun to do.


Login or Create An Account to join the conversation.

Subscribe to the newsletter

Join 27,623+ developers who get early access to new screencasts, articles, guides, updates, and more.

    By clicking this button, you agree to the GoRails Terms of Service and Privacy Policy.

    More of a social being? We're also on Twitter and YouTube.