Results 1 to 8 of 8

Thread: How much to charge?

Hybrid View

  1. #1

    Thread Starter
    Addicted Member
    Join Date
    Jul 2000
    Posts
    225

    Question How much to charge?

    Hiyas,

    In the past year or so I've been professionally making websites (charging average yet competitive prices too since they are not easy jobs I get), and now I've came across a job where I have to make a point-of-sales system for a store. I'm a one-man team and I'm still at uni so I'm not what you'd call '100% professional', but I still know what I'm talking about, I get the job done and I do it well and professionally (better than some 'professionals' too, IMHO). I'm going to use VB since I know the language inside-out from using it in school and as a hobby.

    The program must be able to scan products using a barcode scanner (easy), print user-defined barcodes, contain a database of products (with images), keep a record of customers (with a form of discount card/scheme), sales/trades/rentals of products, history of sales, etc.. The user must be able to of course modify/delete/add records (products/customers). The program will only be used on one computer at one store.

    My question is, what's a ballpark figure that I should be charging? FYI I'm in Australia but a USD amount would be fine.

    I've been told that $80AUSD (about $48USD I think) an hour is the minimum going rate for a VB programmer, and that I should guestimate how long it'd take to do the job and charge to the hourly rate. I'm thinking I'd take maybe 40 to 50 hours, but that'd work out to equal $3200~4000AUSD, or $1920~2400USD!!! I think that's a little high for a small store with only one P.O.S. terminal, but what does everyone else think? I mean, if they want it customized to their needs like that, *should* I charge that much? I have a fair idea of a price I will charge, but I just want to check this out on here first.

    This is my first VB job but I *know* I can do it well (trust me - I have a *LOT* of experience with VB :P).

    I'd be VERY interested to hear feedback from anyone in-the-know about prices.

    Cheers,

    Git
    Last edited by git; Nov 21st, 2003 at 10:05 AM.

  2. #2
    Super Moderator si_the_geek's Avatar
    Join Date
    Jul 2002
    Location
    Bristol, UK
    Posts
    41,974
    well there's a few things to think about...

    does any off-the-shelf software already exist that does the same thing? if so you might be best to get them to buy it, and just charge a "finders fee".

    will you have the right to sell the software to other comanies? if so you can charge them less, as you can make more money later with very little effort (after you have used them to find any bugs for you )

  3. #3

    Thread Starter
    Addicted Member
    Join Date
    Jul 2000
    Posts
    225
    Thanks for the reply! Actually the store is already using an off-the-shelf system but they want a custom job.

    I will hopefully reuse a similar system for another business(es) in the future but a lot of the code will be custom written (ie. not easily portable or can be used in anything much that I can think of).

    Keeping this in mind, any idea of a price to charge?

    Git

  4. #4
    Member
    Join Date
    Jun 2003
    Posts
    39
    There are really a number of factors you have to go through.

    Before even thinking about price, there are a number of things I would recommend you do first.

    First off, determine whether you are going to charge a fixed price or time and materials (hourly rate).

    In either event you'll have to get an estimate. If you are going to charge a fixed price however, what you want to do is prepare thorough specifications for the product.

    For the specifications, include all functionality explicitely spelled out, and even GUI mockups of what the screens will do. This will save you some time actually coding.

    There is no point quoting a price till you get this document with fixed pricing. Even though you seem to have a fairly good idea of what the customer wants, it might snowball. You might want to prepare a ballpark estimate on what you currently know to save you time if its way outside of the customer's desire, but make sure they know its an estimate.

    The most important step here is have the customer read and sign the document. The real danger with fixed pricing is if you don't do this, you will forever be on the hook for every little whim the customer has. Every contractor here has guaranteed had projects where they didn't do this, and either had to really piss off a customer by saying "NO', or done 6 months of work. Make the customer understand that any change outside the specifications will be charged seperately.

    When you actually do these changes, prepare a similar document that outlines what you will be doing, the cost of the change, and have the customer again sign.

    Somewhat annoying for people who generally just want to sit down and program, but it really pays off.

    Once you have your specification completed, then you have to figure out price. Price will be based upon time, usage, and value to the customer. $2500 USD for a completely custom POS solution actually sounds on the cheap side, and would guess you'll find that you'll end up spending much more time then the 40-50 hours you've estimated. If for other reasons, you still want to go ahead with this for experience and to put on a resume, thats fine.

    What you don't want to do is base it entirely on the customer. If you tell them it will cost $500, and you end up spending 100 hours on it, neither will be happy since you will start cutting corners. If $2500 (or more) is what its gonna cost, then thats what its gonna cost, whether the customer pays or not.

    If the customer comes back and says they can only spend $500, then take a look at their requirements and propose what you can do for that amount. It may turn out that their big 'wish list' isn't really necessary, and you can come up with a cheaper solution.
    Last edited by LabtroRob; Nov 21st, 2003 at 11:51 AM.

  5. #5
    Super Moderator si_the_geek's Avatar
    Join Date
    Jul 2002
    Location
    Bristol, UK
    Posts
    41,974
    as you aren't a VB pro it could take you longer than expected, but the client shouldn't have to pay for that. You are also more likely to make mistakes that need to be fixed, but that is unfortunately your problem.

    what I would normally suggest is to estimate the time it will take and add 20-25% (in this case I'd say add 40% to be safe), then mulitply it by your hourly rate. Then charge a fixed price similar to that figure.

    most importantly, make sure that you agree that any changes to the requirements they have given will mean they have to pay you more - it's too easy to get dragged in for more work because "it's what we wanted, we just didn't say it"



    from what you have said, it sounds as though you will be able to sell it almost as it is to other firms.

  6. #6

    Thread Starter
    Addicted Member
    Join Date
    Jul 2000
    Posts
    225
    Thank you to you both for your replies!

    LabtroRob:

    Yeah, firstly I'll be checking with the business to see if the *basic* specification I have at the moment (that being a large flowchart of screens/actions) includes all the stuff they want. I've already explained to them that it's much less stuffing around (hence cheaper for them) if I know exactly what the program will be like, and don't have to keep redesigning it and adding to it.

    I'm thinking against an hourly rate due to the fact that if I did that, the price could easily double what the estimated budget was. Of course, if the business isn't happy with how their bill is rising, I could be in a world of crap (as would they).

    But yeah, I need an estimate. That's why I'm asking on here.

    Yup, exactly @ specifications. I need to include every single feature and explain every process in the design document, and have it in the contract that when they sign the design document is turned into the program, and any extra requested features = $$$$$. I need to do this because I know of too many people who have been caught with projects ridden in feature creep. 'Nuff said. Plus I suppose it's always a good bargaining tool, a good way to support the price that's being charged.

    FYI I used to be the sort who'd sit and program, but after working on professional projects I understand that you cannot do that (for legal/production reasons).

    Wow @ $2500 USD - are you sure such a small store would bite on a HUGE price like that? That's my dilemma - I'd happily charge $80 AUSD an hour for my work except for the catch that I don't know if the store would be willing to pay that much... Of course, they may be willing to pay $2500 USD but I have no way of telling.

    IMO the only way to tell the absolute maximum to charge is ask other people who do this kind of thing, and given the schema of the program and the business's size/specification (ie. one computer, one store), find out how much they have charged in the past for similar projects.

    The last thing I want to do is castrate myself by asking for too much and I'm told politely to PO, or I undercut (spending way too much time on a project with not even compensation) myself simply because I didn't *think* that the business would want to pay any extra money. I just need to find that rough ballpark figure somewhat near what I should be charging them.

    Yeah, I'll definately have bargaining power in that 'you get what you paid for'.

    As another note, I'll have to have milestone stages in the design document and explain in the contract that payment must be recieved within X days from the completion of the milestone, and work will effectively cease until payment is recieved (plus the fact that there's no refunds). It's risky in a way but it'll likely stop the business from stuffing me around (I've heard it happens *way* too much in the industry).

    si_the_geek:

    I've done a few similar programs in VB and Access in the past, the latest of which took me maybe around 10~15 hours including programming and testing (not design though - FYI these were database programs with several tables, some of which were linked to each other - complex stuff). This project being /roughly/ double the scale, I'd guestimate up to 40~50 hours, purely because of the complexity possibly causing problems with implementation of the design hence extra time.

    FWIW I don't think my skills are too limited as I've been programming in VB for about 3 1/2 years and I've done game projects (in Direct X), windows applications, utility programs, graphic manipulation programs, etc. (mostly stuff for my own personal use). I had so much experience by the time I did a subject at uni that used VB, that I scored 100% on the major project (in a subject of maybe 100 others, no-one else scored 100%!). I was pretty bloody happy about that, and considering my classmates will be 'out there' with me in the real world working professionally one day, if anyone should be charging more for VB stuff it's me. :P (as greedy/nasty as that sounds, hehehehe)

    Yeah, as I said up above I'll need to have the contract covering all of that sort of stuff - I've known too many people who have been screwed around by businesses... In fact I've heard how it happens so much even if it is *in* the contract. As long as I'm getting milestone payments I'm not too worried, though.

    I'm not really sure about reselling it - the core code within the application is reusable, but I can't see how the customer and rental schemes can be reused (they're pretty custom). I mean, I might be able to on a future project, but I honestly don't think I'll have another project of this size anytime in the near future. I'd say maybe 50% of the program (VERY rough guess) is likely reusable.

    So, as you can see I have the dilemma of not knowing what to charge due to the small nature of the business. If I charge too much, I could be screwed over. If I charge too little, I could be REALLY screwed over. I'm definately charging a fixed amount based on the design document's specifications (with additional stuff costing more, of course) but I really need feedback on how much that amount should roughly be. I just don't want to tell the guy a figure (after showing him the design document of course) that is /way/ off what it should or COULD be.

    Thanks guys,

    Git

  7. #7

    Thread Starter
    Addicted Member
    Join Date
    Jul 2000
    Posts
    225
    I just had a thought.

    I'm guestimating I could spend up to 75 hours doing the work. I'm thinking 40~50 but let's throw on half as much again just to cover expenses for design (design will take a while, IMO), bug testing, transport to/from the business and any problems that may pop up.

    That's $80 AUSD * 75 hours, or $6000 AUSD (around $3600 USD).

    If half the program is reusable, and I plan on reselling this part, then I don't charge much for that part. So if that's 50% of the program, maybe make it $3000 AUSD + say $500 AUSD as a base price, meaning $3500 AUSD or $2100 USD.

    Would you say that's a fair way of calculating a price?

    Basically:

    ((Hours * Rate) * Percentage That Can't Be Reused (ie. Custom Work) + (1/6 Of Work That Can Be Reused)

    So, ((75 * 80) * 0.5) + (1/6 * ((75 * 80) * 0.5)) hence (6000 * 0.5) + (1/6 * (6000 * 0.5)) hence 3000 + (1/6 * 3000) hence 3000 + 500, the final price being $3500 AUSD ($2100 USD).

    Do you think this is a fair way to estimate/justify the pricing? Does this figure sound like a fair ballpark figure for the work I described?

    Thanks,

    Git

  8. #8
    PowerPoster hellswraith's Avatar
    Join Date
    Jul 2002
    Location
    Washington St.
    Posts
    2,464
    I like what the others before said. Don't over price yourself. For a college student in the US, I don't think they could ask for more than $25 USD an hour. Just the way it is. Without experience, how does anyone know you are worth more? Just because other professionals can charge that much, it doesn't mean you can...yet. They have projects that they have done in the past that they can prove their worth with.

    I say price it so both you and the customer will be happy. Take it as a learning experience. Then, since that customer will be happy, you can use as a reference later when you want to charge more.

    Just my opinion though, take it for what it is worth.

    Number one rule though that you MUST follow, get "Detailed" specs that the customer buys off on. Use-case senerios and screenshots are a must. Once they approve that spec, you don't have to deviate from it unless they pay you more money. I am working on a project right now that the customer agreed to the spec, but as the application is being finalized, they realized they want changes made. Since the changes were not in the spec, they have to pay more for the changes. We write up a new bill, they agree to pay for the feature request. It is the only way to do business.

    The company I am working for now got screwed because they didn't have the firm contract. Like it was said before. The customer kept changing things, and they couldn't charge for it because they had no firm contract to refer to.

    Good luck.

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •  



Click Here to Expand Forum to Full Width