GuidesActivation and time to value
SaaS activation rate benchmark: what good is and how to raise it
Verified SaaS activation rate benchmarks, how to pick the activation event for an e-commerce app, and the product changes that move the number.
In short: Activation rate is the share of new accounts that reach the moment your product first does something useful for them. The two largest public datasets put the SaaS average in the mid-30s: Userpilot's 2025 benchmark report shows a 37.5% average across 62 B2B SaaS companies, and Lenny Rachitsky's survey of 500+ products found a 36% average and 30% median for SaaS. For an e-commerce app, the number only means something once you have picked the right event, measured per store rather than per user, and set a window.
What is an activation rate?
Activation rate is the percentage of new signups, or new installs for an app, that complete the one action which shows the product working for them. Lenny's Newsletter defines it as "the percentage of your new users who hit your activation milestone," where the milestone is the earliest point in onboarding that shows product value and predicts long-term retention. Userpilot's benchmark report uses the same idea: the share of new users "who complete a specific action" that shows initial value.
The formula is simple. Accounts that reached the activation event in the window, divided by accounts that signed up or installed in the same period.
What is not simple is choosing the event. An install is not activation. Finishing a setup wizard is not activation. A merchant who installs a review app and completes the five-step setup but never collects a review has not been activated. They have been onboarded, which is not the same thing, and that merchant is the one who uninstalls in week three.
What is a good SaaS activation rate?
Two sources publish numbers with a stated sample. Both are worth reading with their caveats.
| Source | Sample | Average | Median | Caveat |
|---|---|---|---|---|
| Userpilot, Benchmark Report 2025 | 62 B2B SaaS companies, first-party data from Userpilot's own dashboards | 37.5% | 37.04% | Companies that use Userpilot, each with its own activation definition |
| Lenny's Newsletter survey, run with Yuriy Timen | 500+ self-reported responses, SaaS rows only | 36% | 30% | Self-reported, each respondent defined activation their own way |
Across all product types in Lenny's survey, including marketplaces and e-commerce, the average drops to 34% and the median to 25%. The post notes that marketplaces and e-commerce have the lowest rates. That row is for e-commerce products themselves, not for the SaaS tools that serve e-commerce stores, so I would not transfer it directly.
Userpilot's report also splits by industry, and the spread is wide: AI and ML tools at 54.8%, CRM and sales at 42.6%, MarTech at 24%, HR at 8.3%, FinTech at 5%. Those are small sub-samples of an already small sample. What they tell you is that the "average" hides enormous variation, and that the right comparison is your own number last quarter, not a cross-industry mean.
I could not find a verified benchmark specific to Shopify apps or TikTok Shop seller tools, so I will not offer one. If someone quotes you a number for your category, ask for the sample.
My working rule, which is an opinion and not a benchmark: if fewer than a third of new installs reach a real result within your window, the onboarding is the problem. If more than half do and merchants still churn, the event is the problem.
How do you pick the activation event for an e-commerce SaaS?
The best public write-up of a method is PostHog's. In their newsletter on activation they describe gathering a big list of events that might "hook" users, creating "groups of 3-5 events to test together," then writing a query to see "how they correlate with retention," measured as still using the product three months later. The group with the best retention and a large enough sample wins. They also set a window per product, 14 days for some and 30 for others.
I adapt that method for merchants in three ways.
First, count stores, not users. A Shopify app can have three staff accounts logging in from one store. One of them creating a campaign is the store activating, not a third of it. PostHog's group analytics exists for exactly this, aggregating events "by entities like organizations or companies instead of individual users," and funnels can be set to aggregate by that group. Make the store the unit from day one.
Second, the candidate events should be things that happened in the merchant's business, not in your interface. Here is how I would sort candidates for a few categories:
| App type | Too early (setup) | Activation candidate | Too late (lagging) |
|---|---|---|---|
| Affiliate or referral app | Program created | First affiliate joined, or first referred order tracked | Monthly payout run |
| Review app | Widget installed | First review collected | 50 reviews |
| Creator outreach for TikTok Shop | Seller account connected | First creator reply, or first sample request accepted | First creator video posted |
| Email or SMS app | List imported | First campaign sent to real customers | Revenue attributed |
| Upsell or bundle app | Offer configured | First order containing the offer | Attributed revenue target |
The "too early" column is where most teams put the event, because it is the first thing the product can confirm. The "too late" column is where finance wants it. The middle column is the first event that is both caused by the merchant's setup and visible to the merchant as a result.
Third, test the candidates against uninstalls, not just logins. For an app, the retention signal that matters is whether the store still has it installed and in use at 90 days. Run each candidate group through that and keep the one that separates the two populations most cleanly.
Having spent a large part of my six years in e-commerce SaaS on an affiliate app for Shopify brands, I can say that the gap between "program created" and "first affiliate joined" is where the real work was. The first is a form. The second requires the merchant to have put the signup page somewhere customers see it.
How do you measure activation rate without fooling yourself?
A funnel in your product analytics tool, with the install webhook as step one and the activation event as the last step, aggregated by store. Three settings matter:
- The window. Pick it from the data, not from a round number. PostHog uses 14 and 30 days depending on the product. For an app installed from an app store I would start at 14 days, because most uninstall decisions happen before then, and tighten it if the median time to activate is far shorter.
- The cohort. Report by install week. A single rolling number smooths over the week you changed the first screen.
- The breakdowns. Split by plan, by store size at install (order volume is better than plan), and by acquisition source. App Store installs and installs from a partner referral behave differently, and averaging them hides both.
Do not count stores that installed in the last window as not-activated. They are still in play. Either exclude the incomplete cohorts or label them.
How do you raise the activation rate?
Once the event is right, raising the rate is a matter of shortening and clearing the path to it. In rough order of impact:
- Cut every step between install and the event that could be a default. Commission rates, cookie windows, email templates, widget colours. Each one is a place to stop. The guide on Shopify app onboarding walks through this stage by stage.
- Use the store's data before asking the merchant for anything. You have order and customer access the moment OAuth completes. Show the merchant what the app found, then ask them to turn it on.
- Put the activation event on the home screen as the one thing to do, not item four of a checklist. If you use a checklist, order it by value rather than by setup sequence. The guide on onboarding checklist design covers that ordering.
- Follow up on the stall. If a store installed four days ago and has not hit the event, that is a specific, known state. Send one email that names the missing step, and show the same message in the app. Generic "getting started" drips do not do this.
- Have a human reach out to the installs that matter. A store doing serious order volume that stalls at setup is worth a message from customer success. When I ran a CS team, this is the hour I would protect first.
- Measure time to the event, not just whether it happens. If activation rate is fine but it takes merchants nine days, you are winning on the count and losing on the timing. The guide on time to value deals with that.
If you do all of this and the rate climbs but 90-day uninstalls do not move, go back to the event. A rising activation rate with flat retention means you are measuring a setup step, not value.
Where to start
- Write down the event you currently call activation. Ask whether it happened in the merchant's business or only in your interface.
- Pull the last six months of installs and list three to five candidate events that merchants who are still installed at 90 days did early and churned merchants did not.
- Build the funnel in your analytics tool, aggregated by store, with a 14-day window and weekly install cohorts.
- Compare the result with the 30 to 37% range from the sources above, then put the benchmark away and compare against your own number next month.
- Pick the single biggest drop-off step between install and the event and remove it or default it.
Frequently asked questions
What is the difference between activation and onboarding completion?
Onboarding completion means the merchant finished your setup steps. Activation means the product did something for them, such as tracking the first referred order or collecting the first review. Merchants can complete onboarding and never activate, and those are the ones who uninstall quietly.
Should activation be measured per user or per store?
Per store. One Shopify store may have several staff accounts, and the store is the unit that pays, churns, and leaves a review. Product analytics tools support this through group or company-level aggregation, and the funnel should be set to count unique stores.
How long should the activation window be?
Long enough that most merchants who will ever activate have done so, and short enough that you learn quickly. PostHog uses 14 or 30 days depending on the product. For apps installed from an app store I start at 14 days and shorten it if the median time to activate turns out to be a day or two.
Is 37% a good activation rate for a Shopify app?
It matches the averages in the two largest public datasets, but those datasets mix many kinds of SaaS with different definitions of activation. Treat it as a sanity check, not a target. Your own activation rate trend, split by install cohort, is the number worth managing.