The Cost of Bootstrapping Your App: The Figures Behind DropSend (part one) RyanC 06 Mar 2006

63 comments Latest by Azzam Sheikh

I bet a lot of your are thinking about building your own web app. But how do you get started if you have no idea what it’s going to cost you? How can you budget for the unknown?

I recently did a talk at The Future of Web Apps in London (one of our Carson Workshops events), focusing specifically on this issue. The feedback I received was very positive, so I’ve decided to share it with you all.

You can also listen to the MP3 and grab the notes, but for those of you who don’t have time to listen to the 45 minute talk, I’m going to summarise here.

What does it actually cost?

When we built DropSend, it was our first enterprise level web app and I had no way to predict how much it would cost to build. Frustratingly, no one would share their figures with me either. So we had to learn the hard way. Yuck.

In order to help you avoid this pain, I’m going to walk you through, step-by-step, the costs involved in building an enterprise web app, on a budget. I’m going to be 100% honest about what we spent so you’ll have a good idea of what kind of budget you’ll need to set.

What’s the big deal?

Why is it only recently that small companies (Carson Systems is only two full time employees and a set of 3 part-time freelancers) are able to build large scale web apps? Here’s why:

  1. Broadband is widespread so your potential audience is larger
  2. Average people are comfortable with web apps (Gmail, Online banking, etc)
  3. Hardware is dirt cheap
  4. Open source platforms are virtually free

Definition of the terms

As I’m talking about "Building enterprise web apps on a budget", I need to define two things:

  1. "Enterprise" - This is debatable, but I’d define it as a mass market product for 1,000+ users
  2. "On a budget" - Under �30,000

I’ve heard some comments about my �30K figure not being "on a budget". Please keep in mind that this article is aimed at small companies, not freelancers. Most small companies will be able to allocate �30K, over a period of time. It may be possible to bring an enterprise web app to market for less than this, but it will probably be lacking in quality.

DropSend - Enterprise and on a budget

I’d better know what I’m talking about, if I’m offering advice, right?! Well, all of this advice is based on us building DropSend, a truly enterprise level web app that was built on a budget: Here’s a bit about it:

  • Used for sending and storing large files that you can’t email
  • 13,083 worldwide users (March 6, 2006) and growing
  • 6 servers at 365 Main
  • Desktop apps which use our API
  • Built using PHP, AJAX, MySQL and Linux

The most important thing

Before you get started, the most important thing is to make sure your idea is financially viable. How can you do this?

  1. Use common sense. Would you actually get out your credit card and pay for it?
  2. Be cautious about your projections and then cut by a further 45%. Are you still in business?
  3. Don’t rely on being acquired. It’s unwise to base your financial future on something you have zero control over. (In other words, it’s stupid.)

What we actually spent

  • Branding and UI design: �5,000 - We worked with Ryan Shelton on this. He’s amazing.
  • Development: �8,500 - We worked with Plum Digital Media, who are crazy talented developers.
  • Mac and PC desktop apps: �2,750
  • XHTML and CSS: �1,600
  • Misc hardware: �500
  • Hosting and maintenance: �900 per month - We work with BitPusher for all of our hardware infrastructure and maintenance. I can’t recommend them enough. They helped us define the hardware architecture, procure the boxes, install, and set everything up. Now that we’re up and running, they do all our hardware maintenance.
  • Legal fees: �2,630
  • Accounting: �500
  • Linux specialist to setup the dev box: �500
  • Misc: �1,950
  • Trademark: �250
  • Merchant Account: �200
  • Payment Processor: �500 - We use Secure Trading - they’re fab!
  • Total: �25,780 (Approx $45,000 USD)

Yikes. �25,780?

If you’re a small company and �26K sounds like a lot of money, don’t despair. You will be able to spread these costs out over many months. If you don’t have that kind of cash right now, don’t feel bad. It took us almost a year to get the financial stability and save the cash for DropSend.

How to build your team on a budget

One of the most expensive parts to building a web app is the team. Here are some of our tips for keeping your costs down:

  1. Don’t go for rock stars - go for quiet talent. They’re cheaper, more fun to work with, and they’ll actually listen to you.
  2. If someone is too expensive, but you really want to work with them, offer them 2 - 5% of the product equity in exchange for a cheaper price.
  3. Ask your friends to recommend people they trust. If you pick a bad apple, it will cost you time and money.
  4. Outsource. We tried India initially, and it proved to be a disaster. I think this was because I had never managed a project long-distance before. If you already feel comfortable with this, it can save you tons of money.

Scalability on a budget

One of the trickiest parts of building an enterprise web app on a budget, is scaling. How can you start with a little bit of hardware/capacity/CPU/backup and scale infinitely?

Here’s what I’d recommend: Don’t start worrying about that until you have to. If you throw a bunch of money at the problem and your app fails, you might as well have burned the cash at the race track.

For DropSend, we almost bought a bunch of IBM Blades and hooked them up to SAN storage. I’m SO glad we didn’t go this route.

So here are three basic tips regarding scalability on a budget:

  1. Buy just enough hardware to launch
  2. Build your app so it easily scales. DropSend is a great example of this. When we need more diskspace, we just add a line to the config file, plug in another box, re-deploy, and BAM, we’ve got more diskspace.
  3. Plan for scaling, but don’t obsess

Next time …

In Part 2 of this article, I’ll be covering:

  1. Tips for staying on budget
  2. The importance of pessimism
  3. Budgets for legal costs
  4. How to save money with free tools
  5. How to do marketing for free
  6. Why venture capital doesn’t usually make sense for web apps

Thanks for reading. I hope we’ve saved you some of the pain and suffering we went through when we built DropSend. On a side note, I’ve just finished 37signals new book Getting Real, and it’s got some more excellent ideas on how to build on a budget.

As always, feel free to agree or disagree below. See you next time!

63 comments so far (Jump to latest)

Jason Kunesh 06 Mar 06

Ryan-

Thanks for sharing your costs and lessons learned in public. I can’t wait for part 2. Given that it seems like you outsourced almost everything from programming to UI design, could you give a little background on what your role was in creating DropSend? Are you the founder/product visionary?

It seems like a lot of other firms assemble a team, consult, and then make products (like 37 signals itself). I wonder if there’s any particular advice you could give in finding and evaluating talent?

Ryan Carson 06 Mar 06

Hey Jason,

Yes, I’m the founder of Carson Systems and DropSend. My wife and I are the Directors.

The reason we outsourced everything to freelancers is because we were too small to bring people on full time.

However, we’re now getting so busy that we’ll be hiring our first full-time developer. Scary! :)

Best,
Ryan

Rik Lomas 06 Mar 06

Just curious, Ryan, how many of the 13,000 users pay for the service?

Someone Somewhere 06 Mar 06

This was a really good post. I liked it a lot and got a lot of value from it. Thanks!

James Cruden 06 Mar 06

Very interesting. Thanks.

Ryan Carson 06 Mar 06

Hey Rik,

I’ll happily share our expense figures, but not our revenues. It would be unwise for us as our competitors would take advantage.

Best,
Ryan

John Peele 06 Mar 06

Ryan, would you mind elaborating on a few of your line items? The cost for Mac and PC desktop apps… are those the DropSend desktop components development costs or actual software that you had to purchase in order to build DropSend?

John Peele 06 Mar 06

Ryan, would you mind elaborating on a few of your line items? The cost for Mac and PC desktop apps… are those the DropSend desktop components development costs or actual software that you had to purchase in order to build DropSend?

And what all did you get for your money in the Branding and UI area?

Brian Sweeting 06 Mar 06

I heard your talk and you mentioned that you are/were a developer. Why did you decide not to be involved with the development yourself? It seems like an easy way to reduce cost.

Ashish 06 Mar 06

Great post Ryan.

Whether you did this on purpose or not, this is a VERY clever way to cross market your partners in success. I respect that.

Ashish 06 Mar 06

Ryan,

Just checked Plum media’s webiste, you are partners with them. Good marketing strategy.

LukeP 06 Mar 06

Ryan,

Thanks for the great tips. I’m very interested in what your legal fees and trademark cover and how you came to the decision about what legal services you needed. I think this is grey area that I’d like to learn more about - especially how it pertains to the startup/running of web apps.

Ryan Carson 06 Mar 06

Ashish,

We are in no way connected to Plum Digital Media. They simply built the backend to DropSend, and that’s it. I’m not sure why they’ve listed us as ‘partners’.

I was simply sharing who we worked with in case others are looking for good people.

Ryan

Ryan Carson 06 Mar 06

John,

The Mac/PC costs were for building the Mac and PC desktop tools for DropSend (http://www.dropsend.com/uploadtools.php).

Ryan

Geoff Gill 06 Mar 06

VERY cool post, Ryan. The real world data is pretty hard to come by, thanks for sharing. Curious as to how long it took from start to finish [minus the concept / scoping phase].

GBG

tamimat 06 Mar 06

thanks for the post ryan. i like people who are straightforward in what they say.

John Koetsier 06 Mar 06

Thanks so much for sharing, Ryan. This is really, really helpful for a presentation I’m going to make to exec of my company in a week or so.

BTW, you said above that sharing your revenues would be giving too much away to your competitors. To be really honest, I think that sharing your costs shows WAY more.

They can find out your revenues easily enough by pretending to be customers and signing up for your service, or pestering you for free trials to try to gauge how often you give away free accounts.

Jeff Hartman 06 Mar 06

Now that is a post! Truly valuable information for anyone who wants to be in business for themselves, even if you can’t compare costs equally across businesses/apps.

Fazal Khan 06 Mar 06

@ Brian Sweeting - I reckon Ryan would have stayed out of development because he was the project manager. If you get involved in the details its too easy to lose sight of the rest of the project. Ryan had his own vision and was probably best that he stayed at the helm and outsourced the work to someone else, that way he could still see what is going on and act as quality control….worth considering next time you have a large project.

Alex Reuter 06 Mar 06

Great post. I was wondering though, does the $900/month for bit pusher cover the hardware itself? Or did you purchase the hardware and send it to them to host?

Thanks,
Alex

Eden Jaeger 06 Mar 06

Ryan,

Coincidentally, I just finished listening to the podcast of your presentation this morning. I am listening to the other presenters right now and have really enjoyed them all so far. Thank you very much for making these available (free is great, but I bet you could get away with a small fee if you wanted).

I am a full time developer with some side projects that I do mostly for fun, but hope that maybe some day they could be a source of income. You definitely opened my mind with your real-world examples and I appreciate it very much. I had not at all considered the high costs of legal matters- I say the costs are high because I am guessing that they do not really scale with the size of the project.

I had also never given much real consideration to outsourcing since I can do the majority of the work myself, but when I think about all the time I could free up� maybe that is a necessary step to launch a serious application that could actually be profitable.

Lots to think about� but thanks again!

Dave P 06 Mar 06

Ryan,

I listened to your presentation (as well as the all the others offered) a couple of weeks ago.

I must commend you on the excellent job that all of you did - your candor, insight and general ability to fire the imagination are unique and refreshing.

I’d recommend all reading here to download the full mp3’s from the workshop.

I’m not a user of dropsend, as I don’t currently have that particular need, but I certainly spread the word whenever I get the chance. That alone I hope has resulted in a least one sale for you; ensuring you continue your current open approach in the future!

Great Job, and good luck to your company!

Oleg S 06 Mar 06

I’d be careful with the definition of “Enterprise web app”. You’ve described a process of building an app from scratch and with a full freedom of choice of technologies. What’s called “enterprise” is usually mid-size or bigger companies with a lot of bull such as inefficiency, heavy standards, meetings and such. As result things will end up much more expensive for the enterprise

Mark 06 Mar 06

“Enterprise-strength” app would probably be a better description than finding yourself categorically labeled enterprise.

James Byers 06 Mar 06

Ryan,

I wonder if you might be able to break out the hosting side of things? I’m curious how far �900 gets you in rough terms of bandwidth, hardware, and maintenance, especially at at 365 Main. Are you renting hardware from BitPusher or leasing it yourself?

Thanks,
James

Peter Cooper 06 Mar 06

Bear in mind it’s no problem to pull off a (profitable) Web 2.0 app a lot more cheaply than this. The Carson numbers seem to assume no in-house talent for coding or design, and while a company like 37signals has to pay salaries, if you (and/or a group of likeminded people) are willing to treat it as your own startup, you won’t necessarily need to pay �X,XXX to hire external developers and designers.

Also �900 per month for hosting is on the high end even for a semi-popular app, but considering DropSend does an absolute ton of bandwidth with all the file transfers, is an edge case. It’s quite viable to run a pretty busy application off of one or two boxes at between $200-$300 per month at a dedicated server company with no initial outlay.

So, if you haven’t got $45K don’t despair.. you can make up that $45K with in-house talent, time, and being smart with your infrastructure.

Pat Lang 06 Mar 06

Great Post. Thanks for sharing.

Gahlord Dewald 06 Mar 06

I agree that people shouldn’t be frightened by $45k. That’s a totally achievable figure.

But when folks start saying “just do it yourself and don’t pay yourself” keep in mind that you gotta eat/pay rent as well (presumably).

The $45k just gets you up and running faster because you’re not working on it during weekends/nights etc. And because there is money being spent you treat it as more than a hobby.

Thanks very much for sharing all this with us!

Chad Sakonchick 06 Mar 06

Ryan, I went the India route and launched my app for roughly $8500, most of it going to the design work.

Can’t wait to read Part 2, marketing is what I’m finding to be the most difficult part of the process so far. It’s easy to think that once you launch the app, people will automatically know that it’s there.

JF 06 Mar 06

I suggest people work on their app on the side. Keep your day job while you build the app. That’s what we did with Basecamp. The time and money constraints will force you into making more focused decisions.

Alex Reuter 06 Mar 06

I would love to see the software/hardware architecture if its avaialable. The app I am working on has a similar disk space issue (it involves people’s photos) and I’ve been looking around at a bunch of solutions. Right now I’m leaning towards mounting the webserver’s root via NFS and storing the archived copies of the files on a few PCs with Mogile FS on them.

Anyway - would love to hear how you’ve tackled the disk space problem. Thanks again for posting this stuff, its pure gold.
-Alex

Ashish 06 Mar 06

Chad Sakonchick, Good luck for your venture.

Would you be willing to share with us your Indian connection and a little about your experience?

Cheers
Ashish

Vaibhav 06 Mar 06

Ryan:

This is a great article - something we practice all the time.

I was really intrigued to see you say “Don�t go for rock stars - go for quiet talent.” This is SO true and yet you always hear people preaching hire the smartest of them all. I think while there is definite merit in that, practically you really do not need every member to be the smartest. Sometimes the quiter, tier 2 folks are a lot more easy to work with, lot more focused, willing to learn, don’t waste time on meaningless technical arguments and really can “listen”. We have had great success with this approach and I hope others start to see this difference as well.

Also, your India experience rang a bell too. I have heard it from others but most times I have seen that the problem occurred mainly due to mis-match of skills, project management and understanding of the criticality of milestones etc. We ourselves have a super savvy tech team in Pune, India and with a Bay Area and India combination we have seen that your are able to iron out the issues and really leverage the economics of costs and time in a big way. Next time you want to give it a shot, feel free to drop me a note. If you can make offshore work (and it is working great for a number of companies), the 45K USD will further reduce drastically which just makes it a whole lot easier and affordable.

I will look forward to the next part of this post. Good luck with DropSend.

Ryan Carson 06 Mar 06

LukeP - The legal costs I mentioned (Terms of Service, contracts for your freelancers and a privacy policy) are the bare minimum for any web app. The trademark isn’t necessary, but it’s always wise. It’s expensive to get a world-wide trademark, so we just went for UK for now.

Geoff Gill - DropSend took us about 9 months from idea to real-world.

Alex Reuter - It’s 900 *pounds* not dollars per month. This covers hardware rental (we didn’t have to lease - hooray!) and maintenance.

Dave P - Thanks for the kind words! :)

James - Best to call BitPusher (they’re super friendly) to get the specifics. I know we got a very good deal.

Vaibhav - Thanks for the insight on outsourcing the code. I don’t think we’ll go that route again (we’re hiring our first full-time developer this month), but if we do, I’ll give you a shout.

Jason - Good point. I should’ve mentioned that the very first app Carson Systems built, was done by me, while I still had a day job. As I’m not a great programmer though, it was a little lacking in quality :)

LukeP 07 Mar 06

Ryan,

Thanks for the much-awaited response to my post. Those facts are SO helpful for someone on the outside or on the line.

Can’t wait for part ii.

-Luke

Ozh 07 Mar 06

Awesome read, and right on time with my current thoughts. I cannot say thanks enough.

Anthony 07 Mar 06

I would like to get thoughts on driving traffic in part 2. I built a site called bigcite.com with over 50,000 tagged quotes. A sort of “delicious” or “digg” for online quotes… put in some snazzy ajax and whatnot and have yet to drive more than a few hundred visitors…. I didnt think it sucked THAT bad… arg!

Nitin Nanivadekar 07 Mar 06

$45k is huge.
I think if the entire job is outsourced to India, it will take 15% of it.

Matt Biscay 07 Mar 06

Very informative. Thanks for the read.

Rust 07 Mar 06

Great info! Thanks for the insights - my own startup is just getting off the ground, and while we’ve only spent about $20,000 CDN so far, there’s still some design work, legal stuff, and marketing to go. So I’m definitely looking forward to Part 2 :)

RyanA 07 Mar 06

Nitin: Re: Outsourcing to India.

You can’t outsource Branding. Your designers need to have the cultural sensitivities of the target market. You can’t get that offshore.

You can’t outsource legal matters either.

And outsourcing would cut 75% of the USD 45k? What if the developers were paying their client to do the work… Perhaps.

William 07 Mar 06

From Chad’s article on outsourcing…

“Today, I�d be cautious of hiring someone who has a regular job. That simple decision will prevent their putting your project on the back burner because they�re overloaded at work.”

Don’t you have any ethical concerns with this manner of thinking?

You seem like a real asshole.

jonniefromoz 07 Mar 06

What about marketing? How can you set up something like this with no marketing budget?

Ryan Carson 08 Mar 06

I’ll be talking about marketing in Part 2. Stay tuned!

Julian 08 Mar 06

Very generous of you to share this insightful knowledge — nice also that it’s UK-based.

Akkerfeld 08 Mar 06

I was also thinking about marketing. As I think of it marketing should be the single biggest investment after development, unless you’ve found a niche.

NorthernEurope 08 Mar 06

Just want to stress how different your situation is from that of a company with a legacy.
I run a “web 1.0.” survivor company.
Because of our legacy (old code, old practices etc) and the fact that local developers in Scandinavia charge USD 120 per hour your USD 45 000 would get us nowhere.

If you are doing something like this you have a huge huge advantage of starting from scratch.

Mukul Gupta 08 Mar 06

Great Post Ryan.

What did you wanted parimarily:

1. The product to meet a fix budget ? or.
2. The product to have all the features ? or,
3. The product to be developed in a specific timeline?

I was recently involved in a product development effort that was ad “boot strapped” as it can be and we basically started with following:

1. The most critical features that the product must have in order for us to sell it.

2. Maximum budget can we allocate for this

Did you had to make such features vs cost decisions? I guess they are the soul of the matter for all companies that are trying to make something with a limited “boot strapping” budget.

So I would say that a sensible businessman cannot budget for the unknown and if they can it wont be boot-strapping.

Stiennon 08 Mar 06

Very nice details. Thanks for the inspiration. Just a terminology nit to pick. I agree that you have built an “Enterprise Scale” product, especially if you have back end management tools to track usage, load, etc. But it is not an “enterprise product” An enterprise product is one sold to and used by enterprises. If you sold your whole set up for enterprises (think BT) to use internally *that* would be an enterprise product.

Great job on DropSend. I have used to to get around size limits and restrictions on executables.

-Stiennon

Chad Sakonchick 08 Mar 06

William

I don’t see what ethics has to do with that quote at all, please elaborate. My personal opinion is that I’d rather hire someone who does full-time freelancing. That way, if his/her other job’s demands become too much to handle I don’t get screwed.

FYI - Just to clear things up. I’m not “like a real asshole,” I am a real asshole ;-)

this is just??? 08 Mar 06

haven’t you heard of basis of estimate… did you try cocomo or one of the other customizable tools??

Chad Sakonchick 09 Mar 06

Neo

Wha!?!? You’ve got to be kidding me. Are you on the same page as the rest of us?

What you speak of might as well be garlic to vampires in this community. Task Management Systems and Source Control Systems? We are talking about 2-5 guys building something. Their Task Management System consists of a yellow legal pad and various color crayons.

Dave P 09 Mar 06

@Chad re: Neo

.edu domain dude. ‘nuff said! :-)

Jeremy 09 Mar 06

@Chad re: Neo

Totally agree except for source control / revision control system. That is absolute foundational stuff — as important as an editor, and preferably integrated directly with the editor (emacs for me, lest you think ‘integration’ means windows-style bloatware)

Neo 13 Mar 06

I don’t know about you, but w/o a version control system, even if you are 2-5 person company, u will be dead in the water! hell, I know one person companies utilizing version control effectively!

now, task management might seem like a huge deal, but if you look around, there are really cool nifty easy to use applications out there: backpack and fogbugz for example if you are a 2 person company.

If you guys don’t use these systems and e’thing works great for you, well and good. but for the vast majority of projects, you will need these systems to have any sort of scalability.

amit 14 Mar 06

Ryan,

great post. and i was reading your websites terms and conditions. i wonder if this is what your lawyers put.

imagine if you are buying a car and the comapny writes this:


Carson does not represent or warrant that:
(i) the use of the Services will be timely, uninterrupted or error-free or operate in combination with any other hardware, software, system or data,

(ii) the Services will meet your requirements or expectations,

(iii) errors or defects will be corrected,

(iv) the Services or the server(s) that make the Services available are free of viruses or other harmful components.

David Martinez 15 Mar 06

Really good stuff. With my full time job I am still able to come up with good ideas, wireframe them and even design them. I then start to rap with developers I know… it just seems really hard working nights and weekends to see one of my ideas really hit the ground as hard as I want it too.

I guess I am really lucky since I can design and do front end work and I do have good developer connections… my only problem is getting the time to manage my friends (cut deals and give them equity) to get started. Thanks for the great post.

Alrmhsdb 18 Mar 06

Ryan, I got a case of deja vu when I read your article. I was able to recover the source of it: Joel Spolsky’s article.

I hate to throw it on you, but you are that “trendy couple sipping Chardonnay”. What would you say is your added value?

Alrmhsdb 18 Mar 06

Chad, Neo has a very good point. While CRM and TMS are needed only on some scale, professional software developers use source control system even for their own pet projects and code snippets, let alone project involving more than one person. Not using source control system in that case is downright stupid.

Azzam Sheikh 24 Aug 06

Very interesting

I think this has been the best thing for me to have read today

I have started creating components and applications for the Joomla CMS. Zero budget, I mean it!

I outsourced a coder from Russia, brilliant guy, who built the 1st application and charged me $30 and the 2nd one $40. We got 1000 downloads from 300 registered users.

A guy from sweden whose wife is on the design team for volvo has taken the responsibilty logo/template design for free.

A coder from slovakia will secure all the components and make them xhtml compliant for free
.
a copywriter from USA will be writing future ad copies for exchange of my next component (free version to be released this week).

So far I have spent $500 dollars and got back $700, the 1st 2 components were distributed free! The 3rd (taken offline for security fixes) brought in the $700.

The current application in development is going to be awesome

The point here is, I foresee doing a major app that is going to be used globally, and will cost me a lot of money; but by the time I reach that stage the internet will be expecting it from me!

What have I got to lose setting my goals high. I am in debt 15k (that sterling), but great information in the article, I lot I can use and has stregthened my goals and objectives and put some perspective. I hope I am able to seek guidance and help from Ryan, as long as it is under $20 :)