Metric

What is feature adoption rate?

Definition

Feature adoption rate is the share of eligible active accounts (or users) that use a feature in a period. The two words that keep it honest are eligible — accounts whose plan can't access the feature don't belong in the denominator — and active, so churned accounts don't quietly drag the rate down.

Formula: Adoption rate = accounts using the feature in the window / eligible active accounts

What data do you need?

  • Daily usage rollups per feature per account
  • An active-account dimension with plan and entitlement fields
  • Feature launch dates for cohort framing
  • A qualifying-usage definition (which events count)
  • Internal and test account exclusion flags

SQL pattern

Trailing 28-day adoption per featurePostgreSQL
WITH eligible_accounts AS (
  -- One eligible population, used on BOTH sides of the ratio.
  -- Add plan/entitlement filters here if the feature ships on some plans only.
  SELECT id AS account_id
  FROM accounts
  WHERE is_active
    AND NOT is_internal
), adoption AS (
  SELECT
    r.feature_name,
    COUNT(DISTINCT r.account_id) AS adopting_accounts
  FROM product_usage_rollups r
  JOIN eligible_accounts e ON e.account_id = r.account_id
  WHERE r.usage_date >= CURRENT_DATE - INTERVAL '28 days'
  GROUP BY r.feature_name
)
SELECT
  a.feature_name,
  a.adopting_accounts,
  (SELECT COUNT(*) FROM eligible_accounts) AS eligible_accounts,
  ROUND(
    100.0 * a.adopting_accounts
    / NULLIF((SELECT COUNT(*) FROM eligible_accounts), 0), 1
  ) AS adoption_pct
FROM adoption a
ORDER BY adoption_pct DESC;

Common pitfalls

Counting one accidental click as adoption.→ Define qualifying usage (a meaningful event, N times, or in N distinct weeks) and report tried vs. adopted as separate tiers.
Including accounts that can't use the feature.→ Filter the denominator to plans and roles with access — otherwise entitlement mix masquerades as adoption change.
Letting your own team inflate the numerator.→ Internal users are often a feature's heaviest users. Exclude internal domains and test accounts from headline adoption.

Where does this metric apply?

This metric commonly uses data from Pendo, Contentsquare (Heap), Fullstory, PostHog, Amplitude, Mixpanel, plus any warehouse models that provide the same grain.

Dashboards

Integrations

Metrics

Analytics

FAQ

Account-level or user-level adoption?
Both, for different questions. Account-level suits B2B value stories (did the customer adopt it?); user-level shows depth within accounts. Report them separately — one account with one power user is not an adopted account.
When after launch should I measure?
Report adoption by weeks-since-launch cohorts rather than one global number, so a feature launched last month isn't compared to one with a year of accumulation.