I was recently thinking about priorities for obtaining new users for a web application, and – since I’ve gotten pretty far in Codecademy‘s Code Year – I figured I would try to illustrate my thoughts using Javascript conditionals:

Screen Shot 2013-02-02 at 4.59.42 PM

Disclaimer: Obviously the code above wouldn’t be very useful as code, but it was a good exercise in thinking about hierarchies.

In plain English, the above code is an attempt to illustrate the following hierarchy:

1. Create an awesome product

Your number one user growth priority should be to create an awesome product that people will love, will use repeatedly, and will be compelled to share with their friends all on their own because they love it that much.

Granted, in the spirit of the lean startup approach, this may be a work in progress. Hopefully you have already validated or are currently validating the product’s awesomeness or future awesomeness with your customers.

IF awesomeness is (at least) being pursued…

THEN…

2. Bake shareability into the product

Build something into the product that amplifies the sharing process in number one.  An easy example of this is Dropbox’s referral engine, which has at least two important prongs: 1) the free additional space you receive for inviting friends; and 2) the ability to invite a non-Dropbox user to a shared folder.

The reason baked-in shareability is subordinate to product awesomeness in this hierarchy is that the baked-in shareability only amplifies sharing that would have taken place anyway. If the product is not worth sharing in the first place, amplifying that sharing won’t do much, just like a guitar amplifier doesn’t add anything when music is not being played.

IF baked-in shareability is underway…

THEN…

3. Create a structure measuring user experiences

If you’ve taken the broad steps of building an awesome product and have greased the wheels for the sharing of that product, then you will want to start zooming in on the details. Presumably, with steps 1 and 2 underway, people will start checking out and using the product. You will need a structure in place to measure everything you can about how users interact with the product, so that you can constantly make improvements to conversion and overall user experience. Do A/B testing to see what layouts and calls-to-action work best. Use analytics software to find ways to patch up any leaks in your conversion funnel.

This tactic falls where it does in the hierarchy because if users have no reason or opportunity to check out the product (i.e. if 1 and 2 are not satisfied), then improving those users’ experiences would be a fool’s errand.

IF all of the above are satisfied…

… and IF the cost-per-acquisition from paid marketing channels can be justified…

only THEN…

4. Consider paid marketing for your product and investing in PR

Without the previous three steps in place, marketing your product will be very expensive, as it will be swimming against a very strong current.  In this case, I am including investments in PR with paid marketing. (NOTE: achieving press is easier if you have an awesome product).

You’re much better off if your marketing spend is feeding additional visitors into a positive cycle where: 1) they are wowed by the product; 2) they feel compelled to share it with their friends (a $0.00 CPA); and 3) they keep coming back thanks to your understanding of their behaviors (gathered from all the testing you’ve done) and improving the product accordingly.

The above steps are not supposed to be a linear chronological timeline, but rather a hierarchy of what your priorities should be. For example, it makes sense to have an eye toward shareability and measurability from the beginning, so that it’s easy to implement them when the time is right.

In my previous startup, we hadn’t fleshed out numbers 2 and 3 before we dove into paid marketing techniques. Sure enough, our cost-per-acquisition on that marketing spend was incredibly high. So we turned off the paid marketing while we buckled down and worked on shareability and measurability. After implementing a referral engine in the site and robust analytics that could monitor what was going on, we resumed our paid marketing, and the results improved.