
Ask HN: How much? - hackeronymous
I am using an anonymous account for this post.  Indeed,  I registered this account solely for the purpose of this post.  Sorry, pg.<p>I have been freelancing for almost a decade, and I still never know what to say when a prospective client asks me this question.<p>Given that I have always worked alone, and given that I have never talked to anyone about this topic openly, my response has always been based on personal intuition.  Now I wonder if I am underselling myself.<p>I am not sure if this is a taboo topic among hackers, but my impression is that such a thing does not really exist.  But given that I don't know any hackers who freelance personally, I have a real need for getting some more datapoints.  If I don't know what others are billing, and I therefore bill significantly less out of my own ignorance and misestimation of effort, I reduce the average price at which others are able to charge.  The compound effect of this is tha we are all running like hamsters on wheels for very little money.<p>Between 16 and 21, I made 5 to 10 HTML-only websites for between $2,000 and $5,000.  I also made 3 to 5 flash-based intros/websites for between $5,000 and $20,000.<p>At 21, I made a .NET-based windows desktop app for $50,000.<p>At 24, I wrote a RoR web-based app for $100,000.<p>These were all freelance projects built by me from scratch while doing HS and Uni.<p>Does anyone else feel like sharing what they billed for contract projects (not subcontracting gigs, client-direct only -- before any type of broker takes their cut)?  It doesn't have to be something you did personally.  Maybe you know what the company you worked for billed for developing a specific type of app.  The results will only be interesting if we get numerous data points, and the best way to motivate more responses is to respond yourself.
======
SwellJoe
Not sure why you consider this such a touchy subject that you had to do it
anonymously. Charging money for your services and skills is not a bad thing.

I've rarely done software development contracting, but I spent several years
as an IT contractor (with a lot of scripting, and simple web-based UI work to
make it possible for non-technical people to carry on when I've gone). I
started at $95/hour, and by the end was quoting $150/hour with a four hour
minimum for off-site work, and eight hour minimum plus expenses for on-site
work (with a $1000/day discount rate for multiple days).

Most of my development work over the years has been product-focused, wherein
no one client paid for the whole thing. I would build as generally as
possible, retain ownership, and sell the result to many customers. I wasn't
very good at this for the first five years or so, however, and ended up doing
a lot of development for pennies on the dollar. I would talk to a potential
customer, they'd say, "We wish your products could do X and Y." and I'd think,
"Yeah, I bet a lot of people would like that", and would offer to provide it
for some ridiculously low price ($199, or whatever) as a plugin for my
existing product line...spend two or three weeks working on it (and sometimes
money for icons, design, other developers, etc.) and then never sell another
copy of that plugin. I suggest not doing that.

------
Laurentvw
Just for the sake of giving us more information, would you be willing to
compare your RoR app with a website I made a while ago.

I got paid $500 to make <http://www.solafcars.com> (works in multiple
languages, includes an admin panel, everything on the site is editable). I
would assume your RoR app was much bigger, but let us know how it compares.

I know I got underpaid though.

~~~
tptacek
Did this take more than 3 hours to make? Did you provide any post-
implementation support at all? If either are true, you wildly underbid.

~~~
Laurentvw
It definitely took more than 3 hours, I'm not superman lol. Everything was
made from scratch. The admin panel took most of my time. Keep in mind I also
made the design, registered the domain name and set up the hosting. Support
was also provided, we got together so I could explain how he could manage the
website on his own. It was my first real freelance project though, so I let
him choose the price.

~~~
tptacek
Your pricing may be off by as many as two orders of magnitude.

------
ujjwalg
I think it will be easier to answer your questions if rather than providing
the total amount, you provide $/hour in those time periods.

~~~
hackeronymous
The problem with billing by the hour is that developer performance varies by a
factor of 10x or more, whereas hourly fees vary by about 5x. And most clients
would not feel comfortable playing $250-$300/hour unless there was some way
for them to justify it. (i.e. more people involved, despite the fact that they
may do nothing). Besides, why charge per hour? If I solve your problem, what
does it matter how long it took me to do it?

~~~
ujjwalg
I was not saying that you should charger per hour. I was asking that the
numbers you floated will make more sense if you can provide how much time you
spent on each of those projects. For example: you mentioned $100k on RoR
project. This number will make more sense if you mention whether it took you
1000 hours or 10000 hours or maybe 3 months or 3 years.

~~~
hackeronymous
Oh, I see what you mean. It probably took about 1000 hours total, but spanned
over a period of a year. So maybe 20 hours per week. I was just learning Rails
at the time, so it took a bit longer than it otherwise would have. I could
probably make what I made in about 1 to 2 months tops now.

~~~
Tichy
100000$ for two months work seems like a good price.

~~~
hackeronymous
I should probably mention that even though I spent 20h/day working on it, I
spent/spend virtually every waking hour either reading/writing/thinking about
writing software/business. I don't drink, I don't do drugs, I don't party. I
live with my fiancee, and work pretty much every waking hour on something or
other. I don't have a blog because it would consume too much time, and I don't
interact with other developers because I worry that it will pull me toward the
middle of the bell curve. I worry that I may be going insane, but only
passively.

~~~
calambrac
_I don't interact with other developers because I worry that it will pull me
toward the middle of the bell curve._

Didn't you say you used RoR? You're okay with using other folks high-level
code, but you think interacting with them will pull you towards the middle of
the bell curve. Interesting.

------
weirdwes
This has often been a hesitation of mine when being asked to do freelance
projects. Before I took a web programming job, I had no formal training or
experience so I always felt like I couldn't ask for high hourly rates because
I wasn't confident enough in my work. After landing a job and doing it for a
living, I still felt like I couldn't charge much because I would compare it to
my salary which was a FAR cry from anything close to $50+ an hour. Because of
the inhibitions, I've always just stuck with friends, friends of friends and
family members when doing projects.

Now that I'm unemployed, I really think I need to reevaluate what my work is
worth and start asking for a decent rate when projects come my way. The
comments in this thread are definitely telling me I'm selling myself short -
both in freelance projects and in what I fought through to earn what I earned
at my last job.

Enjoying this thread. :)

------
ujjwalg
Somehow I feel that this post was more about being boastful than anything
else.

~~~
hackeronymous
Actually, no. But I can see why you would think that. I _literally_ don't know
the range of what is reasonable and what is not. Your comment is implicitly
informative, though. Furthermore, if I was being boastful, I would probably
not be hiding behind an anonymous account.

~~~
natrius
Boasting usually isn't done to make other people feel bad; it's to make the
boaster feel good. This post could serve that purpose even anonymously. If
people confirm that you indeed are being highly compensated, that could make
you feel good about yourself.

Not that I think that was the intention.

------
larrykubin
Over the past few years, I've worked on quite a few PHP/MySQL/jQuery/Oracle
webapps for clients. I've never worked on a plain HTML site or a Flash site,
so I can't provide any stats there.

Here are some of my stats - most projects I have worked on cost around 10-20k,
average around 75-100 an hour, and take approximately 3 months of part time
effort. I've done maybe 15 to 20 projects of this length/cost. I like projects
of about this size because: I am not overwhelmed, it allows for nice quarterly
vacations ~ a week each, the requirements aren't overly complicated, I have
free time during the day, and the projects don't drag on forever. I freelance
in Austin, my wife covers me on her insurance, I'm in my late 20's, and have
done this for 3 years.

I have bid on a few 100k-size, year long projects, but have not been selected
for any of them so far. So it goes.

~~~
hippee-lee
If you don't mind me asking, where/how do you find projects to bid on?

------
z8000
Boy am I in the wrong business if these kids can knock out CRUD apps for
$100K.

~~~
christofd
Well, Laurent charged only $ 500 USD for his solution (but that's an anomaly).

If you are serious about web apps, then scaling the back end comes into play,
which means getting into distributed systems. Networking, security and
SysAdmin become relevant as well.

I think it's fair to charge up to $100K with a college education and/or work
experience in the field. Other professions do so as well.

Go pick on other professions: i.e. banker bonuses, real estate commissions,
union rates, lawyer rates etc.

~~~
ujjwalg
so you are saying $500/hour is industry average? Hackeronymous mentioned that
he charged $100k for a 1000 hour work which he could have done in almost 1/6th
time if he was experienced. I am not sure about the industry average, but I
work through guru/elance/odesk and average seems to be $50-$150 for an
experienced developer.

~~~
christofd
No, in the example on this thread Laurent, a Belgian programmer, charged $ 500
USD for the whole solution, the whole shebang. (He could have just given it
away for free, since the main point was to establish a reference)

Although, I admit... this example is really just a CRUD app, with no advanced
server back end.

------
noodle
assuming that your .net and RoR app took less than a year to finish and you're
not killing yourself with the hours (around 40/wk), it sounds like you're
doing fine.

~~~
tptacek
150,000/yr (~75/hr) is low.

~~~
jroes
How is that low? once again, I must whip out some statistics:

[http://swz.salary.com/salarywizard/layouthtmls/swzl_compresu...](http://swz.salary.com/salarywizard/layouthtmls/swzl_compresult_national_IT10000026.html)

The average full-time web developer salary is 70k. I'm not saying I don't want
to make $150k+, but I just can't find any way to substantiate the claim that
I'm worth that much.

~~~
whatusername
don't forget payroll tax, supplied laptop/desk/electricity/etc, sick leave,
annual leave, any skills development, the fact that you're also doing sales
(which is probably more than 70K)..

Just because you have 70,000 listed on your annual pay summary - does not in
any way mean that's how much your company spends to keep you employed. When
you are a freelancer - you take on a lot of those costs yourself.

~~~
tptacek
You're making the same mistake made upthread; price by value, not by cost.
Payroll costs, leave, utilities, all irrelevant.

Freelancers make more because they accept risk. Customers pay extra to
mitigate scheduling risk, recruiting risk, and project risk.

(Yes, you're not _viable_ if you can't at least pay freelancer overhead and
still have a living wage, but that has nothing to do with what your bill rate
is.)

~~~
req2
Ah, I see the disconnect I made- I started talking about the 'doing fine'
comment on the yearly salary, rather than the initial topic of pricing.

------
nailer
I billed at AUD 75/hour as a Windows admin when 17.

Now GBP 550/day at 28 as a Linux architect and infrastructure software
developer.

~~~
highplains
sweet fancy moses!

~~~
tptacek
550/day is not crazy high at all.

~~~
christofd
That's in british pounds, not USD.

Addition: did the math at www.oanda.com (currency conversion). GBP is LESS
than what I thought: 1.63842 USD.

So, that's 900 bucks a day, resulting in $ 110-120 USD/ hour.

~~~
tptacek
Yes, I know. It would be quite low in USD.

~~~
lzell
"We're hiring a Rails/jQ developer. NYC or Chicago"

Someone should take you up on $120 per hour being low!

~~~
tptacek
We're not looking for contractors.

------
tptacek
Here's a useful outside perspective:

[http://www.cartalk.com/content/columns/Archive/1999/October/...](http://www.cartalk.com/content/columns/Archive/1999/October/01.html)

------
pmjordan
I've been trying to work this out for some months now, so apologies for piggy-
backing onto this question:

How do you actually _achieve_ market prices?

I'm aware that there are massive differences in how much you can charge based
on location, but I still feel I'm hitting more resistance to my asking prices
than I should be. As far as I can tell, it's not a quality issue. I've had
repeat business from almost all my past customers and none of the others were
unhappy as far as I can tell, and I've had zero downtime for over 6 months now
after starting 15 months ago.

Yet, if I give a straight hourly figure, 90% of the time I'm either told it's
too much or I never hear back at all. I do a little better when quoting a
fixed price based on the same hourly rate (plus buffers, etc), but many times
the work is too ill-defined to come up with a definite offer, so it comes down
to giving an hourly rate, with the usual result.

I've had the most success and repeat business with extremely time-sensitive
projects, or projects that have gone off the rails and need turning around. I
charge about 50% more if I'm basically being asked to work day and night. Once
the work is done and done well (and it always is), I can generally get future
projects at the standard rate with no major trouble.

I've reluctantly tried the loss-leader strategy of charging less on the first
project, and as expected it's not terribly effective.

So as far as I can tell, the issue isn't so much the price as proving I'm
worth it. How do you guys handle referrals, references, etc.?

A lot of my work involves NDAs (as it's often subcontracted), which makes
referring to existing work and customers extremely difficult. I have a few
customers who are brilliant and who I can use as references, but as far as I
know, nobody has ever followed them up. Other than literally becoming known by
everyone in the area, what other options do I have? Am I expecting a higher
conversion rate than I should be? How do I go about finding more well-paying
customers?

Maybe I'm tending to the wrong niches, too. My background is mainly in high
performance computing, game tech and web apps.

\- I've had zero HPC freelance work, and no leads either. No clue where to
find them.

\- I've had a sizeable amount of game tech programming, but getting reasonable
money from game devs seems to be like squeezing blood from a stone.

\- The web app business can yield better results, but there's a sea of awful
programmers (who seem to exclusively know PHP for whatever reason) out there
who call themselves web developers. Their hourly rates are dirt cheap, but
their efficiency is lower still. I still can't reliably get this through to
potential customers.

\- The easiest money is in business-y/enterprise-y development. Except the
only way I seem to be able to do this is via subcontracting, which is
suboptimal because it's the middle man getting the reputation.

I'm not sure what other areas are more lucrative. Embedded stuff seems like a
good fit to my skill set (game console development isn't far off) but I have
no clue how to even find potential customers. I'm not sure how or where best
to sell myself to enterprise-y businesses.

~~~
tptacek
Short answer: by turning down projects that are below your threshold.

Intermediate tactics:

* No matter how your SOW/MSA is structured, don't quote prices in terms of $/hour.

* When you get rate pushback, follow up with a bid for a smaller or more constrained project. Slip scope. Never slip your rate. You'll never get it back.

* Include a support retainer or annual/quarterly maintenance price, instead of giving that away for free.

~~~
pmjordan
Thanks for the advice, Thomas!

 _Short answer: by turning down projects that are below your threshold_

I'm slowly getting to the stage where I can afford this, but I've only built
up about 6 months of runway, and it seems nobody starts projects in winter,
which meant I came this >< close to running out of cash in February. I'm
trying to avoid a repeat performance. Is it adviseable to turn down below-
threshold projects purely for reputation's sake?

 _No matter how your SOW/MSA is structured, don't quote prices in terms of
$/hour._

Easier said than done. I keep doing this dance where I'm avoiding giving an
hourly figure, but end up going nowhere. Do you have a more specific
suggestion for how to go about doing this? Also, what does 'MSA' stand for in
this context? Too many meanings for google to be useful.

 _When you get rate pushback, follow up with a bid for a smaller or more
constrained project. Slip scope._

Thanks, that's useful. Thinking back, that's happened by accident a few times,
but I'll consciously encourage this in future. Some customers seem to fear
this though: it seems they're afraid I'll build something only I can maintain
and then charge them crazy money later. Maybe this happens. I don't know.

 _Never slip your rate. You'll never get it back._

Yep. I expected that, had to do it once or twice anyway. No fun at all.

 _Include a support retainer or annual/quarterly maintenance price, instead of
giving that away for free._

So far, I've just billed individually for any but the most trivial
maintenance. (e.g. 15-minute fixes to bugs that were blatantly my fault) How
do I avoid scope creep on flat fees without it seeming like a raw deal to the
customer?

~~~
tptacek
An SOW is a statement of work. An MSA is a master agreement. Together, they're
your contract.

If your BATNA is "lose house, live in box", the bill rate discussion is
academic. Steadily raise your rate with new clients. Many consultants will
advise you to build a steady pipeline and then raise your rates until you're
turning away enough work to be 50+(Nx10)% utilized.

You can quote prices in fixed project dollar amounts (or by the milestone),
and then cap your hours in an SOW. If you're working with procurements
departments, it doesn't matter, since they're doing the math automatically.
But don't offer up a $/hour amount.

I have less development consulting experience than many of the other
commenters here do, but what I'd probaby do with regards to bugfix support is:

* Have a formal acceptance process, at the end of which the customer is responsible for signing off on the deliverable. Most large projects I've worked on are QA'd by the customer as well as the vendor.

* Have an escalation ladder for bugs, from cosmetic to data-loss, and have SLA time frames for free fixes on anything other than "cosmetic".

* Offer an up-front retainer contract for rapid (=better than SLA) bugfixes, changes, or feature requests, pointing out that if the customer does not opt for the retainer, feature additions and subsequent revisions will be full-on new projects subject to whatever your current rate and scheduling terms are.

Something I've learned in the past 4 years: scheduling risk is something many
customers will pay to mitigate.

------
antidaily
I used to throw out numbers and almost always underbid. These days I ask for
the budget, figure out how many hours that comes out to, and tell them what
they get. I never give a number before the potential client tells me what they
can spend. They know what they can afford so why play games?

~~~
herrherr
Unfortunately some clients like to play this game and don't mention their
budget. In my opinion this makes it worse for both sides.

------
utku_karatas2
As another freelancer much below your rate I wonder if they knew you were a
one man show in your 100K project. Usually firms want to see teams and sales
reps in suits if they're going to shell out large amounts like that. How did
you ever gained their trust?

------
herrherr
In my 3 years of freelancing I have done quite a few websites (40+), but I
never reached prices that were this high.

Here are my rates. Btw I see no reason to post this anonymously. It's ok to
charge money =)

\- HTML Website $1500+ (without design)

\- CMS $2200 - $12000 (without design)

Normally I'm using fixed prices, but in case someone specifically asks for my
hourly rate I quote $70/h. Note: I ran this business part-time while doing my
bachelor. Since I'm now a B.Sc (since last week) I think I might increase the
rates. Guess that's appropriate, right?

~~~
Andys
Speaking for myself, if I was hiring someone to do a website, or a CMS, I
couldn't care less if they had a B.Sc. or not. I wouldn't check, and I
certainly wouldn't let it change my mind about the price being charged.

~~~
herrherr
I'm fine with your argument, but you would be suprised how some clients are
argueing. For example: "You are no professionals (read: no finished studies),
therefore I'm not paying more than $X."

~~~
Andys
So they're just using it as a technique to get a discount? That's terrible :-(

------
utsmokingaces
damn I need to charge my clients more.

