I spent 6 weeks building a feature that saved users 40 minutes per week.
Then I skipped it in user onboarding because “it felt too advanced” and “we didn’t want to overwhelm new users.”
Discovery rate after 90 days: 27%.
73% of users never found it. Not because it was bad. Because I decided not to show them it existed.
Support explained the same feature 412 times over three months. That’s 82.4 hours. At $60/hour blended rate: $4,944 spent explaining something I deliberately hid.
The feature worked perfectly. Users loved it once they knew it existed. I just decided they shouldn’t see it during onboarding flow because I was scared of “cognitive overload.”
Turns out the real cognitive overload was users spending 40 minutes per week doing manually what my hidden feature automated.
I Tracked User Onboarding on 8 Products – 73% of Features Skipped, Discovery Rate: 14%
I audited user onboarding across 8 SaaS products over 18 months. Tracked which features were shown during onboarding vs. which features users actually discovered and used.
The numbers:
| Metric | Average Across 8 Products |
|---|---|
| Total product features | 23 |
| Features shown in onboarding | 6 (26%) |
| Features skipped “to avoid overwhelm” | 17 (74%) |
| Skipped features discovered within 30 days | 3.2 (14%) |
| Skipped features discovered within 90 days | 5.1 (23%) |
| Skipped features NEVER discovered | 11.9 (53%) |
| Support tickets explaining skipped features | 31% of total tickets |
Translation: You built 23 features. Showed 6 during product onboarding. Users found 3 more on their own. The other 14 don’t exist as far as users are concerned.
What Gets Skipped (And Why)
Most common reasons features get excluded from onboarding experience:
“It’s too advanced for new users” (68% of products)
- Reality: Users graduated from “new” 3 weeks ago
- They’re still discovering features 6 months later
- “Advanced” usually means “I don’t know how to explain it simply”
“We don’t want to overwhelm them” (81% of products)
- Reality: Users are more overwhelmed finding nothing works the way they expected
- Showing 8 features during onboarding < spending 8 weeks discovering them randomly
“They can explore later” (43% of products)
- Reality: They won’t
- Average “exploration” clicks after onboarding: 2.3
- Users don’t explore. They give up.
“It’s only for power users” (52% of products)
- Reality: You invented this category
- Users become “power users” by discovering powerful features
- You’re creating artificial scarcity
The pattern: Teams skip features to make onboarding flow feel simpler. Then spend months explaining those features to confused users.
The Math on Hidden Features (Support Explained Same Feature 412 Times)
Let’s calculate what it costs to skip a feature in user onboarding.
Real Example: The Export Feature I Hid
Context: B2B SaaS product for data analysis. Built export feature (CSV, Excel, PDF formats).
Decision: Skipped it in onboarding checklist because “users need to have data first before exporting matters.”
Logic sounded reasonable.
The data:
Month 1-3 without onboarding mention:
- Users who discovered export feature: 18%
- Support tickets asking “how do I export?”: 137 tickets
- Support time per ticket: 6 minutes (show them the button, explain formats)
- Total support time: 822 minutes = 13.7 hours
Support cost: 13.7 hours × $60/hour = $822/month explaining where export button lives
Users manually copying data: 73% (clipboard, screenshots, retyping)
Average time wasted per manual copy: 8 minutes
If 500 active users, 73% copying manually = 365 users
Manual copy cost: 365 users × 8 min = 2,920 minutes = 48.7 hours of collective user time wasted monthly
Month 4: Added export to onboarding (2 seconds: “You can export to CSV, Excel, or PDF anytime”)
Month 5-7 with onboarding mention:
- Users who discovered export feature: 81%
- Support tickets asking “how do I export?”: 23 tickets (-83%)
- Total support time: 138 minutes = 2.3 hours
- Support cost: $138/month
Monthly savings: $822 – $138 = $684/month = $8,208/year
Cost of skipping one feature in user onboarding: $8,208 annually in support costs alone.
That’s not counting the 48.7 hours/month users spent copying data manually like animals.
Real Example: Built Great Feature, 8% Found It, Moved It, Adoption Hit 47%
Client came to me with adoption crisis. Built collaboration feature users kept requesting. Shipped it. Usage: 8%.
The feature: Real-time co-editing (like Google Docs, but for their data workflows).
Development cost: 9 weeks, $87K fully loaded.
Usage after 6 months: 8% of users.
Location: Settings → Workspace → Collaboration → Enable real-time editing
Also: Zero mention in onboarding flow.
The founder’s logic: “It’s a premium feature. We don’t want to confuse free users by showing it if they can’t use it.”
The data showed: 64% of users were on paid plans. They paid for collaboration features. They just didn’t know those features existed.
The Audit
I tracked feature discovery for 90 days:
| Discovery Method | % Who Found It | Time to Discovery |
|---|---|---|
| Stumbled on it in settings | 8% | 47 days average |
| Support explained it | 12% | 23 days average |
| Saw in changelog | 3% | 31 days average |
| Never found it | 77% | N/A |
Translation: You spent $87K building a feature. 77% of users never knew it existed after 3 months.
The Redesign
Changed 3 things:
1. Added to user onboarding (15 seconds): “You can collaborate in real-time. Click any document to invite teammates.”
2. Added empty state prompt: When user opened document alone: “Working solo? Invite teammates to collaborate in real-time.”
3. Made it visible: Moved from Settings → Workspace → Collaboration → buried toggle To: Collaboration button in every document header (always visible)
The Results
Before (hidden from onboarding):
- Discovery rate (90 days): 23%
- Feature usage: 8% of paid users
- Support tickets about collaboration: 47/month
- Average revenue per user: $127/month
After (included in onboarding + visible):
- Discovery rate (30 days): 81%
- Feature usage: 47% of paid users (+487%)
- Support tickets about collaboration: 11/month (-77%)
- Average revenue per user: $184/month (+45%)
Revenue impact: 47% adoption of collaboration feature correlated with 45% higher ARPU.
Users who collaborated stayed longer (churn: 12% vs. 28%), invited more teammates (viral coefficient: 1.8 vs. 0.4), and upgraded faster (trial→paid: 31% vs. 18%).
Cost of hiding it from user onboarding: Approximately $57/user/month in unrealized revenue.
With 2,400 users: $136,800/month left on the table because onboarding experience skipped the feature.
All because the founder thought showing it would be “confusing.”
Named Products With Onboarding Disasters (And What It Cost Them)
Real products. Real SaaS onboarding mistakes. Real consequences.
Example 1: Notion’s Databases (Early Years)
The feature: Databases – Notion’s most powerful feature.
The onboarding flow: Skipped entirely. Showed blocks, pages, formatting. Never mentioned databases.
Discovery pattern I tracked (2019-2020):
- Users discovered databases: 11% within first 30 days
- Most common discovery method: YouTube tutorials (not product itself)
- Support forum: 400+ threads asking “what are databases?”
The cost: Notion’s most compelling feature (the thing that makes it better than plain note apps) was invisible to 89% of new users for the first month.
What they did: Eventually added database templates to onboarding, made databases visible in sidebar, created interactive tutorials.
Result: Database adoption among new users jumped from 11% to 67% within first 30 days.
Example 2: Slack’s Channels vs. DMs
The problem: New users default to DMs. Don’t discover channels.
Early user onboarding: Explained workspaces, showed DM interface. Channels mentioned but not emphasized.
Discovery pattern:
- Users who primarily used DMs: 73% in first week
- Users who discovered channels early: 31% within 7 days
- Retention difference: DM-only users churned at 2.8× rate
The insight: Slack is differentiated by channels. Users who only use DMs are using it like email. They churn because it provides no unique value.
What they did: Redesigned onboarding experience to emphasize channels, default users into channels, show channel benefits immediately.
Result: Channel adoption in first 7 days increased from 31% to 78%.
Example 3: Figma’s Auto Layout
The feature: Auto Layout – transforms Figma from static design tool to responsive design system builder.
The product onboarding: Skipped. Showed frames, shapes, text. Auto Layout was “advanced.”
Discovery pattern I observed:
- Designers discovered Auto Layout: 8% within first month
- Average time to discovery: 6 weeks
- Most common discovery: Someone else’s file or YouTube
The cost: Users spent 6 weeks manually repositioning elements that Auto Layout would handle automatically. Hours of wasted work because onboarding flow categorized the feature as “advanced.”
What they did: Added Auto Layout to core tutorial, created interactive playground, made it visible in properties panel.
Result: Discovery within first week jumped from 8% to 52%.
Why Features Get Skipped in User Onboarding (The 5 Patterns That Kill Discovery)
I’ve audited 47 user onboarding flows. Same patterns keep killing feature discovery.
Pattern 1: “Don’t Overwhelm Them” Fallacy
The logic: “If we show too much, users will get confused and leave.”
The data: Users who see 8 features during onboarding experience have 34% better activation than users who see 3 features.
Why: Seeing features ≠ needing to master them immediately.
You can show a feature in 10 seconds: “You can also [X]. We’ll skip it for now, but it’s here when you need it.”
The mistake: Conflating “showing” with “forcing users to configure everything.”
You can introduce features without making users stop and configure them.
Pattern 2: “They’ll Explore Later”
The assumption: Users will click around and discover features naturally.
The data: After onboarding checklist ends, average “exploration” clicks: 2.3
Reality: Users don’t explore. They do the specific task they came for, then leave.
Exploration by user type:
- Technical users: 4.7 exploration clicks
- Non-technical users: 0.8 exploration clicks
- Average: 2.3 clicks
Most common “exploration” pattern: Click something by accident, panic, hit back.
Nobody’s systematically exploring your UI looking for hidden gems. They have work to do.
Pattern 3: “It’s Only For Power Users”
The belief: “This is advanced. New users aren’t ready.”
The data I tracked:
| Time to “Power User” Status | % Who Discovered “Advanced” Features |
|---|---|
| Shown in onboarding | 67% |
| Not shown in onboarding | 14% |
Translation: Users don’t become power users by aging. They become power users by discovering powerful features.
You’re not protecting beginners. You’re preventing them from becoming advanced users.
Pattern 4: “We’ll Add It To Onboarding Next Quarter”
The pattern: Ship feature → skip in user onboarding → plan to add it “later”
What actually happens:
- Quarter 1: Ship feature, skip onboarding, plan update
- Quarter 2: New feature ships, previous feature still not in onboarding
- Quarter 3: Onboarding now needs to show 6 new features, feels overwhelming, nothing gets added
- Quarter 4: Onboarding redesign planned, postponed
Result: Features stay hidden for 12+ months while “onboarding redesign” gets planned.
Pattern 5: “Legal/Compliance Won’t Allow It”
The claim: “We can’t show [feature] without showing [20 disclaimers] first.”
Reality: You can show the feature exists and explain details when they click it.
Example:
Bad: Skip data export in onboarding flow entirely because explaining GDPR compliance takes 3 screens.
Good: “You can export data anytime (GDPR compliant).” → If they click, then show details.
Don’t hide features because explaining them is complex. Show features exist, explain details in context.
How to Design User Onboarding That Reveals Features (With Data, Not Guesses)
Stop guessing what to show. Start tracking what users actually need.
Step 1: Audit Current Discovery Rates
Track every feature for 90 days:
| Feature | Shown in Onboarding? | Discovery Rate (30 days) | Usage Rate | Support Tickets/Month |
|---|---|---|---|---|
| Export | No | 18% | 14% | 23 |
| Collaboration | No | 8% | 6% | 31 |
| Templates | Yes | 73% | 61% | 4 |
| Integrations | No | 12% | 9% | 18 |
Calculate the cost:
Features hidden from user onboarding:
- Export: 23 tickets/month × 6 min = 138 min = $138
- Collaboration: 31 tickets × 8 min = 248 min = $248
- Integrations: 18 tickets × 5 min = 90 min = $90
Monthly cost of hiding features: $476 in support time alone
Step 2: Calculate Feature Value
For each hidden feature, track:
Activation impact: Do users who discover it early activate more?
Retention impact: Do they stick around longer?
Revenue impact: Do they upgrade or expand usage?
Example from my data:
“Templates” feature:
- Shown in onboarding experience: Yes
- Discovery within 7 days: 73%
- Users who used templates vs. didn’t:
- Activation: 67% vs. 34% (+97%)
- 30-day retention: 81% vs. 52% (+56%)
- Conversion to paid: 29% vs. 14% (+107%)
Cost of hiding this from user onboarding: Cut activation nearly in half.
Step 3: Progressive Disclosure (Not Hiding)
You don’t need to teach everything in onboarding flow. But you need to show things exist.
Framework I use:
Core Flow (must complete):
- Critical path only
- 3-5 steps maximum
- Gets them to first value
Feature Introduction (10 seconds each):
- “You can also [do this thing]”
- Show where it lives
- Don’t force configuration
Contextual Discovery (just-in-time):
- Show advanced features when user hits the moment they’d need them
- Empty states that explain features
- In-context prompts at decision points
Example:
Core flow: Create first project (3 steps)
Feature introduction during core flow: “You can invite teammates later” (shown, not required)
Contextual discovery: When user opens project alone: “Want to invite teammates to collaborate?”
Step 4: Test With Real Discovery Metrics
Don’t ask “Did you like onboarding experience?”
Track actual discovery:
Week 1 after new user onboarding:
- How many features did users discover?
- How many did they use?
- How many support tickets about “how do I…?”
My benchmarks:
| Onboarding Quality | Features Discovered (30 days) | Support Tickets (Feature Questions) |
|---|---|---|
| Poor | 3-5 (18%) | 31% of tickets |
| Average | 8-11 (42%) | 18% of tickets |
| Excellent | 15-18 (73%) | 7% of tickets |
Goal: 70%+ feature discovery within 30 days, <10% support tickets about basic feature location.
Step 5: The 10-Second Introduction Rule
Every feature in your product should be introducible in 10 seconds during user onboarding.
If you can’t explain it in 10 seconds, you have:
- A complexity problem (feature is too complicated)
- A naming problem (feature name doesn’t explain what it does)
- A confidence problem (you’re not sure why it exists)
Examples of 10-second introductions:
Export: “You can export to CSV, Excel, or PDF anytime. Button’s in the top right.”
Collaboration: “Invite teammates to work together in real-time. Click any document to share.”
Integrations: “Connect tools you already use. We sync with Slack, Google Drive, and 20 others.”
Templates: “Start from templates instead of blank. Browse them here.”
None of these require configuration. None interrupt the flow. All show the feature exists.
Result from one client:
Before: Skipped 8 features in onboarding flow to “avoid overwhelm”
After: Added 10-second mentions of all 8 features
Impact:
- Total onboarding time: 4:23 → 5:31 (+68 seconds)
- Feature discovery (30 days): 23% → 71% (+209%)
- User activation: 41% → 68% (+66%)
68 extra seconds showing features = 66% better activation.
You built something useful. Don’t hide it.
The data is clear:
- Features hidden from user onboarding have 14% discovery rates
- Features shown in onboarding experience have 73% discovery rates
- Support costs scale directly with hidden feature count
- User activation correlates with feature discovery
Stop protecting users from your features. Start showing them what your product can do.
Run the discovery audit. Track the support costs. Add features to onboarding.
Your users will thank you – not for building more features, but for finally showing them the ones you already built.
