Growth Handbook
Measure some shit, try some shit, test some more shit, throw the stuff that doesn't work. It's not that complicated!
Chamath Palihapitiya
I spent almost 3 years on the Facebook Marketplace Growth team. I helped to grow Facebook Buy and Sell Groups, contributed to the growth of C2C Shipped transactions by 10x in less than 6 months, and led a team that increased young adults engagement on Marketplace and on Facebook App.
How did we do that? This post is a brain dump of all some things I learned during that journey and beyond.
Find Product Market Fit First
You shouldn’t focus on growth until you find PMF (Product Market Fit). PMF means - people actually find your product useful. If it’s shit, it won’t fly. By growing too early you may attract people who will try it once, and never come back. Even if you improve your product a lot. You need to focus on people with high intent who need your product the most.
How to determine whether you reached PMF? The most popular heuristic is to survey customers about your product asking them a question how would they feel if they could no longer use your product:
- Very disappointed
- Somewhat disappointed
- Not disappointed
If at least 40% percent of them say that they would be “very disappointed” then you have PMF.
Pioneer (an awesome platform supporting founders) has a nice course Find Product Market Fit that guides you through the process. I recommend checking it out if you want to learn more about what PMF is.
Another way to measure PMF is to look at your retention curves - whether people are coming back to your product or not. If you see a “smiling curve” as described in this article then you have PMF.
There is also a third way: if you have PMF you know it. There are usually multiple indicators: user growth, people reaching out with positive feedback, people talking about your product on Reddit or Hackernews, etc.
Growth strategies
After you determine that you have PMF, it’s time to grow. There are a lot of different ways to grow. This is a comprehensive, but not exhaustive, list of growth strategies:
Access
Allow more people to have access to your product. Examples:
- International Expansion - launching your product in more countries
- Demographics expansion - launching your product for different age groups, or creating value proposition for different generations
- relaxing requirements to use your product - removing the need to create an account, provide ID verification, etc.
- enabling third-party login (no need to create an account)
- providing logout experience (if your product requires login)
Is your product launched only in the US? Launch it to Canada, and Mexico as well. Then the EU, Asia, etc. Some Asian countries, like India or Indonesia, are huge markets! India has 1.5B people. It’s almost 5x US! Launching your product in India has the potential to grow the user base by 5x. EU is about 1.5x the size of the US. That’s an opportunity to at least double your user base.
Be aware of the cost of international expansion. Potential language translation, if you launching to non-English speaking countries, payments/taxes handling, operational cost, or compliance with different laws like GDPR in European Union. When doing international expansion always analyze the cost, and how big the opportunity is. Launching in Canada may have very little additional work, but not much user growth potential. Launching to India can be huge, but may require much more additional work. Try to find a sweet spot where a minimal amount of work will yield as much ROI as possible.
If you have never done international expansion before, try to start small. Launch to the “easiest” country first - one that requires a minimal amount of work from your side. This will help you to build muscle for future expansions, and an idea of the impact that you can expect from only opening your product to a different market.
There is another trap: you may have PMF in one country, but not in another. If possible, try to determine, which countries will adopt your product most likely. I.e., US and Europe are pretty similar, but South-East Asia is different.
If your product is not accessible for people under 18 you can consider fulfilling requirements that will make it so. Maybe you can create a separate version of your product for kids. Is your product tailored for a particular demographic, e.g., millennials? Consider expanding the value prop to Gen X or Gen Z.
Again, be aware of the cost of such expansion. Many times juice may not be worth the squeeze.
Another strategy to expand access is to enable login through 3rd parties like Google or Facebook so people don’t have to create new accounts. This can drastically improve your user acquisition. Creating an account, confirming email, etc. is a much higher cost for users compared to clicking “Sign in with Google”. You can also provide a logout experience if you always required a login before. This may help to capture some people who just want to lurk before committing to use your product.
Before growing through access, make sure you analyze the costs of expansion. Ideally, you should compare different access plays, and go after one that brings the most value (users) for the least amount of effort. I.e., expanding to Canada doesn’t require translation, and laws are pretty similar to the US.
Category expansion
You can grow your product by introducing a new variation of it for your current users or to acquire new users.
This is a very broad strategy and it depends on the type of your business. If you are selling t-shirts, start also selling hoodies. If you are selling subscriptions, introduce a new tier with more or fewer features. Selling for individuals? Start selling for businesses, etc.
Cloud providers nailed that strategy to the extreme. There are 10s of products, like Virtual Machines, Databases, etc., and 10s of variations of each product. VM with 8GB of RAM, VM with 4GM of RAM, VM with backup feature and without, Redis on-prem, or self-managed.
There is one thing to be aware of: introducing too many variations may cause analysis paralysis, which may lead to a decrease in sales. Make sure that growing through category expansion is slow, and intentional, and that people want particular variations of your product. Don’t throw at them 100s of options if they would be content with three.
Friction removal
How many clicks does it take to make a purchase on your website? Or any activity that your user wants to perform? Simply reducing the number of actions (clicks, filling out forms, etc.) that are required to achieve something on your website or app would make your users use your product more. There is nothing more frustrating than tens of clicks to go through multiple different views, with a lot of unnecessary information to achieve something. I’ve seen that removing 1 text input from a form can increase the completion rate by 10%! Imagine if you can increase your sales by 10% just by removing one field from a form your users fill out to purchase your product.
Friction is causing your users to feel not great. Is it me or does this app just sucks? Whichever is true, they will go and use an app that doesn’t make them feel that. You need to make your users feel awesome when they are using your product. Better, and more efficient they are at using your product, the more likely they will keep using it.
In-app upsells
To bring awareness of new features, or simply try to promote something on your website or app, you can add prompts across different surfaces. Your upsell will be more successful if it’s put in the right context, at the right time. E.g., if someone is buying a book, maybe they also want to buy a pdf summary for an extra $1? You might be less successful if someone came to your website to use a real estate investment calculator you created, and you are trying to upsell your Vue.js Tutorial.
Check out 9 awesome examples of upsells.
Notifications
The best way to increase your product retention is to send notifications to remind your users about your product. There are multiple notification channels: in-app (shown in the notification section), mobile push notification, or email. Push notifications are now also available in browsers!
Similarly like with in-app upsells, notifications will be most successful if targeting and timing are correct. You should also keep track of notification metrics like views (how many people have seen your notification), CTR (Click Through Rate), and CVR (Conversion Rate). Conversion Rate tells you how many people performed the desired action (like buying your product) as a result of the notification. You may have notifications with high CTR that do not result in any conversions.
Check out How 7 Companies are Using Push Notifications to Boost Engagement by Neil Patel.
Facebook or Google ads
Paid ads are easy to make, but not easy to make them cost-effective! It’s not do and forget thing. You need to constantly iterate and monitor your ad campaigns. By doing small tweaks in content, CTA text, or artwork you can increase efficiency by 2x, 5x, or even 10x. This can make it profitable or not. If you spend $10,000 on ads that generate $4,000 in sales that are not profitable. You need to improve the efficiency of your ads by 2.5x to make them break even.
Be aware of artificial growth! A few years ago Chamath claimed that 40 cents of every $1 VCs invest in startups go to Facebook, Google, or Amazon. It may make sense to grow your product at all costs in the beginning, but keep in mind that this strategy is not sustainable. Probably, sooner or later you will have to increase the efficiency of your ads or move to other growth channels.
Again, be aware that ads are easy to make, but not easy to make profitable and efficient. You can find many courses, books, and tutorials on runnings paid ads online. Be aware that they expire fast! Most advanced advertisers learn how to maximize them to their advantage every day, and you need to be on top of these tricks to keep your ads profitable.
Here is a sample Facebook ads tutorial and Google ads tutorial. I also like this Google ads beginner’s guide. You should also consider which platform is best for your product. You can also use both.
Julian Shapiro wrote great articles about “Making ads” and “Running ads”.
SEO
Search Engine Optimization. SEO is for making your website rank in search results as high as possible. If you are on page 2 of Google results, probably no one will visit your website through that channel. SEO is probably an even more advanced growth strategy than running ads, as you need to actively invest in it, and the effects are not immediate. You may need to wait for results even a few months. On the flip side, its effects may last for a long time.
SEO usually means optimizing for Google Search. Google has over 90% of the search engine market share. The second is Bing with less than 5%. This means that optimizing for Bing search will probably have 18x less impact than optimizing for Google. Fortunately, the majority of Google SEO tricks apply also to other search engines.
There is no good way to measure SEO efficiency as you cannot A/B test it. You need to apply all SEO changes across your website. The best you can do is to monitor the amount of traffic from searches.
Part of growing your product through SEO is content marketing. Recently, it’s very popular to share insights into building your product. Providing some interesting facts about how you run your business, how you started, showing your progress, how much money you made over time, etc. It may draw people’s attention better than your product itself, and by learning more about you, people are more likely to buy your product. If not today, maybe in the future.
6 simple steps to make your product rank better:
- Make sure that search engines can index your site - SPA or sites with login are not good
- High-quality and compelling content that people want to read that results in a low bounce rate
- Keyword optimization - use keywords that people would enter in the search input box
- Performance - fast-loading sites with good UX perform better and have a lower bounce rate
- Make content that people will want to share with others
- Title, URL, and description to draw high CTR in the rankings (be aware of bounce rate)
To start with SEO: audit your website with Site Audit Checklist from Moz. Check out Google Search Central - the bible of SEO, and for a more general guide check out Moz’s SEO guide.
Promotions
People love promotions. If you offer a 50% discount for 1 week you can sell more during that week than over the entire year. People are much more likely to buy the same product if you price it at $100 with a 20% discount than $80 product without any discounts. It’s behavioral economics effect.
What works well for promotions is also seasonal discounts. Black Friday, Holidays, Summer promotions, back-to-school promotions, etc.
Depending on your product you can also offer promotions where people are deciding whether to use it in the off-season.
For example Zwift - virtual cycling app is most popular in the winter months. Usually around November or December is when people are debating whether they should try indoor biking, and which platform to choose. That’s a good time to run a promotion. Another good time is after the season: in March/April, when people are going back to outdoor biking, throwing 3 months for free if you buy a yearly subscription might be attractive. Especially because they still remember the good experiences they had during the winter months. In July they will probably forget…unless there are forest fires, and it’s unhealthy to bike outside. Another good opportunity to run a promotion.
LeetCode runs promotions usually around holidays. This is a time of code freezes when engineers have more spare time for coding. Getting a LeetCode subscription is much more likely than during deadline times.
Running promotions can be a powerful tool to fight competition. Uber and Lyft use promotions to outcompete each other. The same with food delivery apps like DoorDash, Postmates, and Uber Eats. Do you remember a week without any promotion on Uber, Lyft, or DoorDash? Upsells like “$0 delivery in the next 3 days for orders above $20”, “Spend $100, get $15 coupon” are almost permanent elements of their apps. This game is still ongoing, but each of mentioned companies was able to build an advantage in some submarkets thanks to promotions.
You have to be careful when running promotions. Always consider the cost of promotions. If you run large-scale promotions it can kill your profits. People who would buy your product anyway will buy it at a discount, and instead of profiting from selling more, you may end up losing more money.
Referral Program
The referral program is rewarding your current users for inviting new users to use your product. You can offer monetary rewards, discounts, additional product features, or some internal currency like coins in games.
There was a time when Uber was offering $10 off for the next ride for you and a friend who you invited to the platform. In the early days, PayPal used a referral program to acquire new users. If you referred someone, both you and the new user got $10 on your PayPal account. Today, many banks use that strategy. Discover offers $50 for every friend you invite to start a credit card with them. Your friend also gets $50. Thus, the cost of acquiring customers is $100! If you want to run a similar referral program, make sure to run an analysis before! If your acquisition cost is higher than the lifetime value of the user it may not be the best strategy. Keep in mind that referral programs can be exploited, which would make it very costly, and not effective.
You do not necessarily have to offer monetary rewards. Dropbox offers 1GB of additional storage for you and the user invited by you to the platform. You can also offer on-platform “points”. For example, in FIFA World Cup you can buy players with coins. You could offer coins in exchange for the referral. Remember, that less attractive reward results in fewer referrals.
Another referral program strategy is to create an invite-only platform. Only people invited can use it. That strategy helps with the quality of users and creates an exclusivity impression. Gmail used that strategy in the early days. They discontinued that after reaching market domination.
The ultimate dream of a referral program is to achieve viral growth. Viral growth means that every user brings more than 1 new user. It’s not necessary 2, 3, or more. It could be 1.1, which means every 10 users bring 11 new users. Even 1.01 - every 100 users bring 101 new users - is great. If your product is good enough, you don’t even need to offer incentives. You just need to have a very frictionless referral flow: from sending a referral to a user sign up for the platform. It could involve enabling people to send invites directly to people from their Gmail contacts or their Facebook friends.
Running a referral program is not easy. You need:
- a mechanism to track who signed up through a referral
- keep track of how many referrals the given user has, and maybe even the lifecycle of referred customers
- keep track of potential rewards that should be awarded
- you need to shield from exploiting your program: i.e., one person can create multiple fake accounts to get referral bonuses
- you need to keep track of the cost and ROI of the program all the time
Similar to a referral program is an affiliate program. However, affiliate marketing focuses on using third parties to send customers to use your product. Amazon has an affiliate program. You can put personalized referral links on your blog, YouTube video or social media, and when people make purchases through these links you get a small share of profits.
Growth Hacks
In addition to the larger initiatives described above, you can also try simpler, faster-to-implement ways to grow - growth hacks.
Growth hacks are small changes that can implement quickly, and power your user’s growth.
Some example growth hacks you can apply to your product:
- Change Content - make it shorter and show DIRECT VALUE for the user; explain what is user getting by engaging with your product or taking a particular action.
- Change CTA (Call To Action) content or color of text or background.
- Add some unit/text/CTA to some impactful view - if you want people to take some action, upsell it where you get the most traffic.
- Add insights or remove not needed insights - people like seeing stats about how they are doing; e.g. if they listed something for sale, a notification saying “your product got X views in the last Y days” can increase engagement. Even without any explicit call to action in content, people tend to engage with the product to find out more. Strava is pretty good about it. Sometimes they send emails, like your monthly summary: “You ran X miles last month”. I found myself going to check more details about my performance in the app very often. It’s working!
- Improve performance (removing things from page/view helps with perf, adding things hurts perf) - better performance can lead to growth as users can be more productive, and less frustrated when using your app or website. It’s also good for SEO.
- Remove some not needed unit/text/CTA - an often overlooked growth hack is to just remove some of the least impactful or not relevant any more things from your product. It’s very easy to end up with feature bloat, but product teams rarely audit and remove them.
- Prefill the form with defaults (e.g., do not ask the user to select a subscription plan, preselect the most popular plan for them) - reducing friction in forms can drastically increase the completion rate, which can lead to a significant increase in sales.
- Change the number of items shown - if you are displaying, e.g., the newest 4 items, consider displaying 6 or just 2 or 3. If you display less, you may score performance gains. Displaying more may lead to more impact as people have more choices and opportunities for engagement.
You can find a lot of different growth hack ideas in Aladdin Happy’s books TOP 101 Growth Hacks and TOP 101 Growth Hacks 2. Both books contain 202 different ideas. This can help you with brainstorming your ideas.
What to work on? Use ICE framework
Coming up with ideas never was the biggest problem for my teams. We always had more ideas than what we could execute. Our brainstorming sessions (powered by mural) always produced 100s of ideas. The dilemma was what to work on.
The simple framework that can help you prioritize ideas is ICE Framework. ICE stands for Impact, Confidence, and Ease of implementation. You score ideas on a scale of 1-10 in every category and then rank them by summing them up.
I’ve seen a lot of engineers throughout my career focusing too much on impact while neglecting ease of implementation.
Examples:
- Redesign landing page:
- Impact: 7
- Confidence: 6
- Ease of implementation: 3
- ICE score: 16
- Create a new notification:
- Impact: 3
- Confidence: 6
- Ease of Implementation: 9
- ICE score: 18
- Launch product in India:
- Impact: 9
- Confidence: 5
- Ease of Implementation: 1
- ICE score: 15
Do this for all potential projects, narrow your list down to the top 10, and start working on the first one. You can keep other ideas in the backlog but don’t focus on them too much to not get too distracted. You should always be focused on 1 idea, keep 10 in mind, and the rest keep in the backlog.
How to estimate impact and confidence? Opportunity sizing
There is no straightforward formula for estimating ease of implementation. It depends on the engineers, their familiarity with the product, etc. However, you can estimate impact and confidence with opportunity sizing.
For example: you want to upsell a new product you are selling by creating a Facebook ad. You can estimate the number of people who will see the ad. Based on that you can estimate the number of people who will click on it, and the number of people who will purchase after visiting the product page.
Let’s say your ad will be seen by 100,000 people. Based on your past experiences, targeting quality or by just guesstimating based on some data found online about funnel performance, you can estimate your ad’s CTR. Let’s say it would be 2%. This gives you 2000 people visiting your landing page. How many people will buy the product? Ideally, you can estimate that based on the % of people who buy a product after visiting your landing page. If you’ve seen that 1% of people who land on the product page buy it (that would be pretty good!) then your opportunity size is 1% of 2000 = 20 products.
You can do a similar estimation for notifications or other growth channels.
Note: be aware of cannibalization. If you reach the same people with 2 growth channels they won’t produce a sum of expected results. I.e., if someone sees your ad twice you probably won’t double the number of visits. Maybe you will increase visits by 20-30%.
For more about opportunity sizing check out this, this or that.
Growth Lessons
After working on growth for a few years I noticed a few non-obvious things I wish I’d known before.
Doing trumps Planning
Trying things always produce better results than endless planning, and analyzing. Over the years I observed that growth is not proportional to how much effort you put into a single change, but rather to the number of different things you tried. It doesn’t mean to do some shitty changes and hope it will magically bring users. Rather, it emphasizes the importance of execution and trying different things. No matter how crazy and unlikely to bring growth they are!
MVE - Minimal Viable Experiment
When you are not sure if something is going to work, instead of building full-fledged features try to run a directional experiment that requires a minimal amount of work. If the experiment shows some positive results, double down and build a fully-fledged feature.
Make your users winners
In the book Badass: Making Users Awesome, Kathy Sierra explains the importance of making your users feel good while using your product. You need to make users feel “successful” when they are using your product. They need to feel like they are winning something while using your product. If there is no win, there is no point in using your product.
Iterate, iterate, iterate
If something didn’t work at first, but you have a strong hypothesis about why it should’ve (e.g., data or just intuition), you should iterate. I’ve seen many times people give up too early. I have also seen when something didn’t work because there was no trivial bug affecting a large portion of the users. I rarely see something taking off to the moon on the first try. Even if it does, there is probably still an opportunity to iterate and get an even greater impact from it.
Do not run too many experiments at once
In an ideal scenario, you just run 1 A/B test for your product. As you want to move fast you may need to run multiple experiments in parallel. In that case, you will get the best results if you isolate them. I.e., you experiment with one thing on the minimum population needed to show statistically significant results, e.g. 20% (10% get a test, 10% control treatment), another thing on different 20% of users, etc. What if you won’t get meaningful results with a running test on 20% of users? You may rerun it later with a larger population when you won’t have other experiments to run. Running a bunch of 50/50 A/B tests may result in randomizing user experience and you won’t be able to tell which of the changes is causing (or not) desired results.
Use back tests and holdouts
When you try new things, you may run into novelty effects. I.e., some new feature is causing a temporary spike in engagement, but after some time it goes back to neutral or even negative. Running a test for 2 weeks, and making a decision based on data from only week two should be sufficient to remove the novelty bias. But not always. Feature performance can degrade after a month or two. To monitor the long-term effects of a feature you should consider using backtests. This means launching new experiences for the majority of the population and keeping a small number of users who still get the old experience. To monitor the compound effect of changes made in some period of time, consider also using holdouts. Keeping a small number of users who won’t get any of the new features that you introduced in a given period. This can help you assess the total impact of changes you made over time. Usually, there is a cannibalization effect and the sum of all backtests won’t equal the holdout impact. Keep in mind that using backtest and holdouts require a pretty large number of users to get statistically significant results. Thus, consider these techniques only when your product is more mature, and you have a lot of experiments running at the same time.
What didn’t work in the past may work now
Before joining the Facebook Marketplace Growth team I often heard: “We tried this in the past, but it didn’t work. Don’t waste your time”. In my early days on the Growth team, when I was trying to find different ideas, one engineer advised me to look at past experiments that didn’t work. “If it didn’t work in the past, it may work now”. Timing is one of the key elements of building a successful product. If you are too early with an idea you won’t get anywhere. Another factor in addition to timing is execution. There were multiple attempts at Electric cars before Tesla, and there were a lot of different social networks before Facebook.
North Star Metric
North Star Metric is a metric that the best measures value of your product. It could be Daily Active Users, the number of transactions per day, or the number of posts users create on your service.
When you grow your product, you should have North Star Metric and focus all your efforts on growing it. Would some change increase your North Star Metric? Do it. Otherwise - abandon or postpone. This helps tremendously with correct focus and prioritization.
For more about North Star metric check out Does a North Star Metric Oversimplify Growth? by Sean Ellis.
Recommended Growth Resources
If you want to learn more about growth I recommend the below resources. Get familiar with them and try out some growth ideas in your product. Remember that the more things you try, the more likely you will be successful.
Books
- Hacking Growth - growth bible, strongly recommended!
- TOP 101 Growth Hacks and TOP 101 Growth Hacks 2
- Badass: Making Users Awesome
- Growth Hacking: Silicon Valley’s Best Kept Secret
Talks
Articles
- Awesome Growth Hacking - github repo with a lot of resources
- Growth Handbook by Kazuki Nakayashiki