Retention for Figma plugins: DAU, MAU, stickiness and week-one return
What each retention number means for a tool people open a few times a week, how tode computes them, and how to read a drop without panicking.
, by Ilia
Retention numbers come from consumer apps, where the ideal is someone opening the thing every day. A plugin is not like that. People open a font replacer when a font needs replacing. The best plugin in the world has a user who did not need it this week.
So the numbers need reading differently. Here is what each one in tode means, exactly how it is computed, and what I think it is good for.
Daily active users
The number of distinct Figma user ids with at least one event on a given day, in the time zone you set in the dashboard. An event is an action, an action with a metric or a session, so someone who opened the plugin and closed it without doing anything still counts.
The bar is split into new and returning. New means this user's first event ever, in the history tode has for the plugin, happened that day. Returning means they had been seen before. The split matters more than the total. A launch brings a tall bar of new users; the returning slice a week later is the part you keep.
Returning users for a range
For the selected range (last 30 days, say) the dashboard shows how many users were active and how many of them were new in that range. Users minus new is your returning base. Watch that base, not the total, when you change something.
Stickiness
Stickiness is DAU divided by MAU, computed over the 28 days that end at the range end. In practice: count every (user, day) pair with an event in those 28 days, divide by 28 and then by the number of distinct users in the same window. The dashboard also shows the same thing as days per month, which is just user-days divided by users: on average a monthly user opened the plugin this many days out of 28.
For a plugin, days per month is the readable one. A value around two means your users have a task for you every other week. That can be a great plugin. Daily use would be unusual for anything but a workflow tool that lives in the panel all day. Compare your own plugin to itself over time, not to an app benchmark.
Stickiness stays empty until the plugin has 28 days of data. There is no shortcut.
Week-one retention
Users are grouped into cohorts by the week in which they were first seen. For each cohort, the dashboard shows how many of them had any event in the following week. The last six cohorts whose follow-up week has already passed are listed, newest first.
This is the number that tells you whether first use leads to second use. Two things make it noisy for plugins. Cohorts are small, so one week with twelve new users and three returning is a 25 percent that means almost nothing. And a feature on Figma's Community page or a mention in a newsletter brings a cohort of curious people who were never going to come back, so that week's cohort returns worse than the quiet weeks around it. Read the trend over several cohorts, and read it against what happened that week.
Session length
Not a retention number, but it changes how you read the others. A plugin whose median session is twenty seconds is a tool that does one job fast. If a release makes sessions shorter and stickiness a little lower, you may have made the plugin better: people finish sooner and need it less often. Look at the actions chart before deciding a drop is bad.
What actually moves these numbers
Things that tend to help, in no particular order.
- Remember the user's last settings in
figma.clientStorage. Nothing kills a second use like re-entering everything from the first. - Use relaunch buttons (
setRelaunchDataon a node or the page) so your plugin is one click away from the thing it already touched, instead of a search in the plugins menu. - Make the first run do something visible within a few seconds. Week-one return tracks the first impression more than any later feature.
- If an action has high adoption and your sessions are long, the action is probably slow. Speed up the thing people actually do before adding the thing you think they want.
Plan limits that touch these charts
On the free plan history is seven days. Daily users and the new-against-returning split work, with "returning" meaning seen earlier in that week. Cohorts need a first-seen week and a follow-up week, and stickiness needs 28 days, so both stay empty on Free. Starter keeps 90 days, which is enough for all of it. The limits are on the pricing page.