Module 7 · Execution

42

Launches: How to Ship Without Drama

Soft launches, betas, GA. The mechanics of launching well at every stage.

8 pages3.3K words16 min read

The Myth of Launch Day

There is a fantasy of the product launch that lives in everyone's head: a single dramatic day, a countdown, a button pressed, champagne. The feature goes live, the world notices, and the team celebrates. It is a satisfying story and it is almost entirely wrong. The launches that go badly are the ones run as a single dramatic event. The launches that go well barely feel like events at all, because by the time the thing is "live," it has already been quietly running for real users for days or weeks, and the risk has already been wrung out of it.

Launching well is unglamorous. It looks like staged rollouts, feature flags, readiness checklists, monitoring dashboards, and rollback plans. It feels less like a fireworks display and more like a plane's pre-flight checklist: methodical, a little boring, and the entire reason the plane doesn't crash. The drama people associate with launches is almost always the drama of doing it badly.

This essay is about the mechanics of launching without drama, at every stage from soft launch to beta to general availability. The core idea is that a launch is a process you run, not an event that happens to you. Once you internalize that, almost everything else follows: you stage the rollout, you control it with flags, you define readiness before you start, you coordinate the go-to-market motion, you watch it carefully, you keep a way to undo it, and you review it honestly afterward.

The Stages of a Rollout

A well-run launch moves through stages, each exposing the change to a larger and riskier audience only after the previous stage has shown it's safe. The names vary by company, but the shape is consistent. The point of staging is that you discover problems while they're cheap to discover, in front of the smallest, most forgiving audience possible.

Internal and Dogfood

The first audience is your own company. Turn the feature on for the team, then the broader org, and use it yourself. Dogfooding catches the embarrassing, obvious problems before any real user sees them, and it surfaces the experience issues that no spec review ever catches. If your own team won't use it or hates using it, that's the cheapest possible time to learn that.

Soft Launch

A soft launch puts the feature in front of real users without announcing it. You ship it, often to a small percentage or a limited market, and say nothing. Real users encounter it and use it naturally, giving you real-world signal without the pressure and attention of an announcement. If something is wrong, almost nobody noticed it was ever there. The soft launch is the workhorse stage where most of the real de-risking happens.

Beta

A beta is an explicit invitation to a self-selected, tolerant audience. Beta users know they're early, expect rough edges, and are usually willing to give feedback. This is where you learn how the feature performs across a wider range of real use, and where you collect the qualitative signal that tells you whether the thing is actually good, not just functional. Betas can be open or closed depending on how much exposure you want.

General Availability

GA is when the feature is on for everyone and you're willing to announce it and stand behind it. By the time you reach GA in a well-run launch, GA is almost anticlimactic, because the feature has already been running for a large fraction of users through the earlier stages. You're not flipping a switch into the unknown. You're formalizing something that's already been proven in production.

Feature Flags: The Control Surface

None of the staging above is possible without a way to turn things on for some users and not others, and to change that at runtime without a deploy. That mechanism is the feature flag, and it is the single most important piece of launch infrastructure a team can have. A flag decouples deploying code from releasing a feature, which is the technical foundation of drama-free launching.

What Flags Buy You

  • Decoupled deploy and release. Code can ship to production dark, behind a flag, and be turned on later. Deployment stops being the risky moment; the flag flip is, and the flip is controlled and reversible.
  • Percentage rollouts. Turn the feature on for one percent of users, then five, then twenty, watching metrics at each step. You expand only as confidence grows, and you stop the instant something looks wrong.
  • Targeted exposure. Enable for internal users, a specific market, a beta cohort, or a single customer. The same machinery serves every stage of the rollout.
  • Instant rollback. If something breaks, flip the flag off. No deploy, no revert, no waiting for a build. The feature is gone in seconds. This is the safety net that makes aggressive rollouts safe.

The Discipline Flags Require

Flags are not free. Every flag is a branch in your code, and a codebase full of stale flags becomes a tangle nobody understands. The discipline is to treat flags as temporary: a flag exists to control a rollout, and once the rollout is complete and the feature is permanent, the flag and its dead branch should be removed. Teams that never clean up flags accumulate technical debt that eventually causes its own incidents. Launch flags should have a planned death date.

Readiness Criteria: Deciding Before You're Emotional

The worst time to decide whether you're ready to launch is the moment of launch, when there's schedule pressure, executive attention, and a team that's emotionally invested in shipping. Decisions made under that pressure are bad. The answer is to define your readiness criteria in advance, when you're calm and objective, and then hold yourself to them.

What Goes on the Checklist

Readiness criteria are the concrete, checkable conditions that must be true before you advance to the next stage. The point of writing them down ahead of time is that they're a contract with your calmer, more objective self, immune to the pressure of the moment.

  • Functional readiness. The feature does what it's supposed to, the known critical bugs are fixed, and the core flows work across the platforms you support.
  • Operational readiness. Monitoring and alerting are in place, you know which metrics tell you it's healthy, on-call knows the feature exists, and the rollback path is tested, not just assumed.
  • Support readiness. The support team knows the feature is coming, has documentation, and knows how to handle the questions and complaints it will generate.
  • Go-to-market readiness. If the launch is announced, marketing, sales, and docs are aligned and ready. Nothing is worse than an announcement landing before the product is actually on.

The Power to Say Not Yet

Readiness criteria are worthless if you override them whenever they're inconvenient. The hard part isn't writing the checklist; it's having the discipline to honor it when the date is looming and everyone wants to ship. A criterion you'll abandon under pressure was never a criterion. The PM's real job here is to be the person willing to say "not yet" when the checklist says not yet, and to make that an early, calm decision rather than a frantic one at the last minute.

Coordinating Go-to-Market

A launch is rarely just an engineering event. Marketing wants to announce, sales wants to sell, support needs to be ready, docs need to exist, and legal may need to sign off. Coordinating all of this is squarely the PM's job, and it's where many otherwise-clean launches go wrong, because the product was ready but the surrounding org wasn't, or worse, the announcement fired before the product did.

Sequencing the Announcement

The cardinal rule is that the announcement follows the product, never leads it. The feature should be live, stable, and proven for real users before marketing says a word about it. An announcement that arrives before the product is on, or while it's still shaky, creates a flood of users hitting something broken, which is the most expensive possible way to discover a problem. Stage the rollout first, prove it works, then announce.

Aligning the Other Teams

Support needs to know what's coming, when, and how to handle it, before users start asking. Sales needs accurate messaging so they don't promise things the feature doesn't do. Docs need to be published when the feature lands, not weeks later. The mechanism for all of this is unglamorous: a shared launch plan that lists every team's dependencies and a clear owner who keeps them synchronized. The PM doesn't have to do every task, but the PM has to make sure no thread is dropped.

Matching GTM Intensity to Confidence

A useful discipline is to match the loudness of your go-to-market to your confidence in the product. A soft launch gets no announcement at all. A beta gets a quiet invitation to a tolerant audience. Only GA, after the feature has been proven, gets the full marketing push. Scaling the noise to the maturity of the product means that if something does go wrong early, you haven't told the whole world to come look at it.

Monitoring and Rollback

A staged rollout is only as good as your ability to see what's happening during it. Ramping to five percent of users teaches you nothing if you aren't watching the right signals, and the controlled exposure of a staged launch exists precisely so you can catch problems while they're still small. Monitoring is the eyes; rollback is the escape hatch.

Know Your Signals Before You Start

Decide in advance which metrics tell you the launch is healthy and which tell you it's going wrong. These usually fall into a few buckets: technical health like error rates and latency, product health like the feature's adoption and completion rates, and business health like effects on conversion or revenue. The key is to define what "bad" looks like before you launch, with specific thresholds, so that when you're staring at a dashboard mid-rollout you already know what should trigger a stop.

  • Technical signals. Error rates, latency, crash rates, resource usage. The first warning that something is broken usually shows up here.
  • Product signals. Are users finding and completing the feature? A feature that's technically fine but nobody can complete is a different kind of failure.
  • Guardrail signals. The metrics you don't want to harm. Did this change quietly hurt overall conversion, retention, or a neighboring flow? Watch the things the feature could break, not just the things it's meant to improve.

The Rollback Plan

Every launch needs a tested, ready way to undo itself, and "tested" is the operative word. A rollback plan you've never exercised is a hope, not a plan. With feature flags the rollback is usually trivial, flip the flag off, but you need to confirm that actually works cleanly, that turning the feature off doesn't leave users in a broken state or corrupt data. Decide in advance who has the authority to call a rollback and under what conditions, so that in the moment of an incident nobody is debating whether they're allowed to pull the cord.

The Migration Wrinkle

Not everything rolls back cleanly. Launches that involve data migrations, schema changes, or anything that writes irreversible state need extra care, because you can flip the flag off but you can't un-write the data. For these, the discipline is to make changes backward-compatible and reversible by design: write to new structures without removing old ones, migrate in stages, and keep the old path alive until the new one is fully proven. The harder the rollback, the more conservative the rollout should be.

The Post-Launch Review

The launch isn't over when the feature is at a hundred percent. The final stage, the one teams skip most often, is looking back honestly at how the launch went and what it actually produced. Skipping this means you never learn, and you repeat the same launch mistakes and miss the same launch opportunities forever.

Did It Do What We Said It Would

Before you launched, you presumably had a reason and a hypothesis about the impact. The post-launch review checks that hypothesis against reality. Did the metrics move the way you predicted? Did the feature get adopted? Did it produce the business outcome that justified building it? This is uncomfortable when the answer is no, which is exactly why it matters. Teams that don't measure their launches against their predictions never find out which of their bets are actually paying off.

How Did the Launch Itself Go

Separately from whether the feature worked, review how the launch process ran. Did the staging catch problems early? Was the monitoring adequate? Did the rollback plan hold up if you needed it? Were the other teams ready when the feature landed? Each launch teaches you how to run the next one better, and a short, honest review captures those lessons while they're fresh. The teams that launch smoothly are usually the ones that have done this review enough times to have ironed out their process.

Close the Loop

A review that produces no decisions is just a meeting. The output should be concrete: keep the feature as is, iterate on it, or in some cases conclude it didn't work and remove it. Killing a feature that didn't deliver is a legitimate and underused outcome, and being willing to do it keeps your product from accumulating dead weight. And clean up: remove the launch flags, retire the temporary monitoring, and fold the lessons into how you'll run the next launch.

Putting It Together

Lay the pieces side by side and a clean launch is just a sequence of small, controlled increases in exposure, each gated by a readiness check, controlled by a flag, watched through monitoring, protected by a rollback, coordinated with the rest of the org, and reviewed afterward. Internal, then soft, then beta, then GA. Each step exposes the change to a larger audience only after the previous step proved it safe. None of it is glamorous and all of it is the reason good launches feel calm.

The contrast with the dramatic launch is total. The dramatic launch commits a date, builds everything behind it, flips the switch for everyone at once on launch day, and then discovers in front of the entire user base whether it works. When it doesn't, the team scrambles, the rollback is risky because nothing was designed for it, and the post-mortem is about how to survive next time rather than how to improve. The staged launch front-loads all the de-risking so that by the time the world is watching, there's nothing left to go wrong.

A Final Word

The instinct to treat a launch as a heroic event is understandable. Events are exciting, and shipping something to the world is one of the genuine pleasures of building products. But the heroism is misplaced. The real craft of launching is in the unglamorous process that makes the event boring: the staging, the flags, the checklists, the monitoring, the escape hatches. The teams that ship without drama aren't braver or luckier than the ones that don't. They've just turned launch from an event they brace for into a process they run.

So the next time you're tempted to plan a launch around a single dramatic day, plan a ramp instead. Decide your stages, your readiness criteria, your signals, and your rollback before you write the announcement. Expose the change a little at a time, watch carefully, and expand only as your confidence grows. Do that, and you'll find that the best launches don't feel like launches at all. They feel like the quiet, controlled, almost anticlimactic turning of a dial, which is exactly what shipping well looks like.

Key Takeaways

  • A launch is a process, not an event. Move through internal, soft launch, beta, and GA so problems surface in front of the smallest, most forgiving audience while they're cheap to fix. A boring GA is the goal.
  • Feature flags are the control surface that makes staged rollouts possible: they decouple deploy from release, enable percentage and targeted rollouts, and give you instant rollback. Treat flags as temporary and clean them up.
  • Define readiness criteria, functional, operational, support, and go-to-market, in advance when you're calm, and have the discipline to say "not yet." Keep the launch date soft until the risk is retired.
  • The announcement follows the product, never leads it. Match go-to-market intensity to your confidence: soft launches get silence, betas get quiet invitations, only proven GA gets the full push.
  • Decide your health and guardrail signals before you ramp, keep a tested rollback ready, and treat rolling back as the system working, not as failure. Then run an honest post-launch review against your original hypothesis and close the loop.
↑ Back to the index