I have a Ruby on Rails app hosted on Heroku. The project is fairly far along, to the point where we are in talks with investors. We have all our numbers down except when it comes to hosting costs. How can I estimate what my hosting costs will be as my user base grows?
This is an awful oversimplification, but in my experience, there are two different kinds of applications:<p>- User-centeric (think: an e-commerce site): your costs are going to grow somewhat linearly with your userbase/traffic. Do a load test to figure out how many concurrent users each dyno supports and then model your costs with that in mind.<p>- Data-centric (think: an analytics platform): your costs are to going to grow linearly with the amount of data points each customer is going to be using. Figure out how many data points a single worker dyno (running 24x7) can process and then model your costs with that in mind.
You need to determine the cost per User. Different Users might represent different Usage Patterns, so I'd be looking for averages. If the Product is already in production and you have an existing user-base, this is how I'd do it; Correlate your user-base statistics (number of Users) in relation to your hosting costs at different milestones and/or points in time. This metric will give you some insight into how much it costs per User at different stages of growth. This could include the growth of the user-base as well as the growth of your Product (in terms of features and/or infrastructure changes). You would want to identify any trends and/or variations with the resulting averages over time. This will give you some data to work with in terms of making projections.