How to calculate Feature Adoption Rate

Feature adoption rate is the percentage of active users who used a particular feature in a period.

Formula

Feature adoption = users who used the feature ÷ active users × 100

SQL query

This example assumes: events(user_id, occurred_at, event_name). It is written in PostgreSQL syntax; date functions differ slightly in MySQL, BigQuery and SQLite, and your column names will differ from these.

WITH active AS (
  SELECT DISTINCT user_id FROM events
  WHERE occurred_at >= CURRENT_DATE - 30
), used AS (
  SELECT DISTINCT user_id FROM events
  WHERE event_name = 'created_dashboard' AND occurred_at >= CURRENT_DATE - 30
)
SELECT (SELECT COUNT(*) FROM used) * 100.0 / NULLIF((SELECT COUNT(*) FROM active), 0) AS adoption_pct;

Common mistakes that make Feature Adoption Rate wrong

  • Adoption among all users hides that some users never needed the feature; consider eligible users.
  • A one-off try is not adoption; require repeat use if that is the goal.
  • Newly shipped features need a cohort view, not a single percentage.

Ask for Feature Adoption Rate in plain English

Instead of writing the query yourself, you can type the question. SchemaChat turns it into SQL against your connected database or uploaded file, runs it, and shows the SQL and the figures it used so you can check the answer before you share it. It does not replace your judgement about the definition: check that the query matches the formula your business uses.

  • What share of active users created a dashboard in the last 30 days?
  • How did adoption change after the release?

Frequently asked questions

What is Feature Adoption Rate?
Feature adoption rate is the percentage of active users who used a particular feature in a period.
How do you calculate Feature Adoption Rate?
Feature adoption = users who used the feature ÷ active users × 100. The SQL example on this page shows the same calculation against a simple table.
What commonly goes wrong when calculating Feature Adoption Rate?
Adoption among all users hides that some users never needed the feature; consider eligible users.