At Upsun, usage data showed customers paying for computing capacity they rarely used, provisioned for their busiest day and billed for it every day. I owned Autoscaling end to end: the feature, the launch, the adoption target, and the results report. The launch ran the full playbook, from announcement email to blog and changelog. Its most valuable channel turned out to be the product itself: we monitored for the moment Autoscaling became practical for each customer and informed them right then, and when that experiment won we built the prompts into the product. Adoption beat its target, adopters kept the feature on, support tickets about resource sizing fell, and the platform ran leaner.
Product Launch: The Lazy River to Product Adoption
Role: Product Manager (feature and go-to-market owner)
38%
eligible orgs adopted
Against a 25% target. The adoption metric was defined and instrumented before launch.
within 90 days
~4x
enable rate when prompted
Just-in-time, in-product prompts reached qualified customers at the moment the feature was relevant.
vs. unprompted baseline
~85%
still active at 90 days
Adoption only counted if it stayed on. Sustained engagement was the quality check.
of adopters
-30%
resource-sizing tickets
Customers stopped filing tickets about a decision they no longer had to make.
the following quarter
Company context

Company context

Upsun, the cloud application platform humans and AI agents love, is a Series D startup having raised over $180 million in equity funding. It is a fully managed cloud application platform (PaaS) designed to help developers build, test, and deploy software without managing underlying infrastructure.
- Company fact
- A Series D company
- Company fact
- Raised $180 million in total funding
- Company fact
- Developer platform / cloud infrastructure
The problem: paying for the busiest day, every day
Upsun customers choose in advance how much computing capacity their applications get, like renting an apartment big enough for the two weekends a year the in-laws visit. Usage data surfaced two costly patterns, and customer conversations confirmed both:
Over-allocators paid for headroom that sat idle almost all the time.
Ceiling-hitters sized for a normal day, then watched their apps slow down when traffic spiked.
Opposite symptoms, same root cause: customers were being asked to predict demand, and demand doesn't take appointments.
What shipped
Autoscaling removed the prediction. The platform watches demand and adjusts capacity automatically, adding it as traffic climbs and releasing it as traffic falls, with billing that follows actual use. The promise fit in one line: pay for what you use, and stop babysitting the dials.
Shipping the feature was half the job. A feature customers never find might as well not exist, so the launch plan mattered as much as the release.
How customers discovered Autoscaling
The launch ran the full playbook: announcement email, blog post, changelog, and documentation. Those channels did their job, building awareness with everyone at once.
But awareness and timing are different things. The right time for Autoscaling was different for every customer: a third manual resize of the month, or the traffic spike that just slowed their app. No email calendar can hit a moment like that. Just-in-time discovery was key. To accomplish this, the product monitored for signals that Autoscaling would be practical for the customer, then informed them right where they were working - just in time. In that moment, Autoscaling isn't an announcement to skim. It's the call-to-action to solve a the immediate need.
The Lazy River approach to adoption
I adhere to the Lazy River adoption philosophy. Ease customers down the stream, with no rapids and no eddies. Avoid dumping every capability on a customer at once. Each nudge arrives at the moment it's relevant and moves the customer exactly one step forward.
For Autoscaling, that worked like this:
Qualify. The product's usage data told us when Autoscaling had become practical for a customer: continual over-allocation, or repeated run-ins with resource ceilings.
Test. With Pendo (product analytics and engagement tooling), we conditionally injected prompts the moment those signals appeared, only for those customers and only in context, and measured whether informed customers enabled Autoscaling at a higher rate than the unprompted baseline.
Productize. They did, decisively. Once the experiment proved the channel, we retired the third-party prompts and built the guidance natively into the product, where it could run permanently and feel like part of the platform rather than a pop-up.
Orchestrating the launch end to end
The in-product channel was the centerpiece. Before launch, I defined the adoption metric (the percentage of eligible organizations enabling Autoscaling within 90 days) and set the target we'd be judged against. Around it:
Lifecycle marketing got a brief covering who to reach, what to say, and why: the segments, the pain, and the "pay for what you use" message, in that order.
Launch content across the blog, documentation, and changelog carried the same positioning, written so a reader didn't need to be the team's infrastructure expert to understand what they'd stop overpaying for.
Sales and support were enabled to explain the feature and handle the natural objection: "will this run up my bill?" (The honest answer was the message: it usually lowers it.)
Measurement was built with analytics before launch, tracking the full path from prompt seen to feature enabled to still active.
From adoption to lasting engagement
Adoption beat its target. 38% of eligible organizations enabled Autoscaling within 90 days, against a 25% target. Prompted customers enabled at roughly four times the unprompted rate.
It stuck. About 85% of adopters still had Autoscaling active 90 days after enabling it. Adoption only counted if it stayed on.
Support got quieter. Tickets about resource sizing fell roughly 30% in the following quarter, as customers stopped filing tickets about a decision they no longer had to make.
The platform ran leaner. Idle, over-provisioned capacity shrank across adopters. Fewer wasted server-hours meant a real efficiency and emissions win: good for the customer's bill, good for the platform's footprint.
- Self-service developers were asked to predict their own demand, and they paid for the guess either way.
- Usage data split the pain into two segments: over-allocators paying for idle headroom, and ceiling-hitters whose apps slowed under spikes.
- Customer conversations confirmed what the data suggested: the same root problem, felt from opposite directions.
Who it was for, and the signal
- Self-service developers were asked to predict their own demand, and they paid for the guess either way.
- Usage data split the pain into two segments: over-allocators paying for idle headroom, and ceiling-hitters whose apps slowed under spikes.
- Customer conversations confirmed what the data suggested: the same root problem, felt from opposite directions.
The Lazy River
- The adoption philosophy: ease customers down the stream with no rapids (overwhelming them with everything at once) and no eddies (letting them drift past value unused).
- Every nudge arrives at the moment of relevance and moves the customer exactly one step.
- For Autoscaling, the moment was concrete: a repeated manual resize, or a spike that just slowed their app.
Test, then productize
- Pendo let us conditionally inject prompts to qualified non-users without engineering time. An experiment, not a commitment.
- Prompted customers enabled Autoscaling at roughly four times the unprompted rate, and the channel earned its permanence.
- The winning prompts were rebuilt natively into the product: permanent, on-brand, and indistinguishable from the platform itself.
Measurement and handoffs
- The adoption metric, the share of eligible organizations enabling within 90 days, was defined and instrumented before launch rather than reverse-engineered after.
- Lifecycle marketing received a written brief: segments, pain, message. Launch content, sales, and support carried the same positioning.
- Tracking covered the full path (prompt seen, feature enabled, still active) so the readout separated adoption from mere curiosity.
How the work unfolded
- 1
The signal
2024
Usage data surfaced two costly patterns: capacity paid for but idle, and apps slowing at resource ceilings. Customer conversations confirmed both.
- 2
Ship the feature
2024
Autoscaling shipped with usage-based billing: capacity follows demand, cost follows use.
- 3
The launch experiment
2024
Conditional in-product prompts reached qualified non-users at the moment of relevance and beat the unprompted baseline decisively.
- 4
Productize and report
2025
The winning prompts were built natively into the product. Adoption beat its 90-day target, and the engagement, support, and efficiency results were reported.
Need a feature launch that finds its own customers?
I define the adoption metric, ship the go-to-market inside the product and out, and report what happened.