What is a product launch? When people hear about product or feature launches, they might think a product team spends weeks and months working on a feature, and then comes the big reveal of a killer feature at a big tech conference. ​

In reality, product launches are rarely linear. More often, product launch is an iterative process where the launch is just the beginning of the product development process. It's one of the best ways to validate that the feature you built is useful. Then through usage data and user feedback, your team can continue to improve on your product.

How to launch a new product or feature?​Once your feature or product has been built. There are many ways that you can test or rollout your feature to your users. How you launch your feature depends on many factors - the maturity of your product, your existing user base, the type of product/feature you are launching, the goal/the metric you want to achieve with this feature, etc.

Limited rollout/testsLimited rollout gives the product team the benefit of controlling the size and types of users.Before running a limited rollout, you should set a quantitative goal that you want to reach before rolling out to more users.

Employee only - This is also referred to as dogfooding. Originated at Microsoft it is often used by large tech companies as it's a low risk way to test new features with their employees and get feedback.

Invite only rollout - The product team can send invite users to try out a new feature, very often, only the most interested users will sign up. This is a great way to gauge interest of this feature from your most engaged users.

A/B test - This is often used to test UI/UX changes with the goal of optimizing a specific metric.

A great resource to monitor different rollout or tests that companies run is @wongmjane's Twitter account.

Gradual rolloutAfter you've validated a new feature and is ready to rollout to a big number of your users, you can roll out to 5%, 20%, 80%, 99% of users gradually over time to reduce risks, etc. server crashes due to large number of requests caused by the new feature.

Full rolloutSometime a full rollout is required and it's needed to launch the new feature to all of your users at the same time. This could be due to a major product launch/promotion campaign or if a product or feature requires consistent experience for all users in order to bring customer value, for example, any social or chat features. Holdback group - even for a fully rolled out feature, many times you may want to leave 1-5% of users on the old experience, this allows you to monitor long-term impact of a feature and aid any troubleshooting and debugging needed.

Launch day checklist Prior to launch day, create a list of jobs that needs to be done, deadline, and owners. I've included an example, but your actual list may vary by product, context, and company.

End to end QA test for all use cases

Legal/

Company wide announcement

Stress test backend server

Inform customer service department

Log data and check it's logged correctly

Work with product marketing manager to create go market plan

On launch day, you may need to create an hour by hour list of what needs to be done in order to ensure the successful launch of your product

Smoke test - a less extensive QA test that covers only the major use cases

Send PR, blog announcement

Launch marketing campaign

In my experience, whatever your launch experience is, as a PM, putting your product in front of your users is the best way to validate and improve your product.

"If you're not embarrassed by the first version of your product, you’ve launched too late" - Reid Hoffman

I recently gave a talk at Product School on this topic, you can check out the full video here.