Why Figma and tode show different user counts for the same plugin.
Figma's user number is a lifetime list that only grows. tode counts Figma account ids seen in its own history. How each one is counted, and why the weekly numbers differ.
, by Ilia
Figma sends plugin creators a weekly email with numbers for each of their resources. For the week of October 16 to 22, 2026, it said my plugin Font Replacer Ultimate had gained 852 users. tode runs inside the same plugin, and it counted 1,137 new users for that week, plus 1,819 people who used the plugin at all.
Both numbers are correct. They count different things, and once you know what each one counts, you can use them together.
What Figma counts
The Community page shows one user number for a plugin, and that number only grows. Font Replacer is at 168,963. Figma does not publish an exact definition. In practice the number works like a list of Figma accounts that have ever picked up the plugin. An account goes on the list once and stays there. Someone who tried the plugin in 2022 and never opened it again is still on it.
The weekly email tells you how much the list grew. "+852 users" means 852 accounts were added that week. People who were already on the list and opened the plugin again do not show up anywhere in the email.
The same email covers files you publish, like UI kits, and it adds views, saves and comments. Those are numbers about the Community page. Code running inside a plugin cannot see them, so tode does not have them.
What tode counts
A plugin knows which account is running it. If the manifest asks for the currentuser permission, figma.currentUser.id returns a stable id for the Figma account, the same on every device the person uses. The SDK attaches that id to every event. For tode, one distinct id is one user.
The dashboard builds three numbers from those ids:
- Active users: distinct ids with at least one event in the date range you picked. Any action, metric or session counts as an event.
- New users: active users whose first event for this plugin falls inside the range. "First" means the earliest event tode still has stored.
- Returning users: active users tode had already seen before the range started. Active minus new.
Days and weeks are cut in your own time zone, which the dashboard sends with every request. Without the currentuser permission, figma.currentUser is null. Actions and sessions still arrive and are counted, but there is no id to count people by. The details are in what a plugin knows about its users.
One week, three plugins
These are my three plugins for October 16 to 22, 2026. The tode columns use the same seven days in UTC.
| Plugin | Figma email | tode, new | tode, active |
|---|---|---|---|
| Font Replacer Ultimate | +852 | 1,137 | 1,819 |
| Links manager | +45 | 52 | 53 |
| Styles | +28 | 36 | 38 |
For all three, tode reports more new users than Figma reports added users. The reasons are worth knowing, because they tell you when to trust the new-user number and when to wait.
Why tode's new users run higher
tode has a shorter memory
Figma remembers every account since the day the plugin was published. tode only knows what it has stored. That history starts on the day you added the SDK, and old events are deleted once they are older than your plan keeps them: 7 days on Free, 90 on Starter, 365 on Pro and 730 on Business.
If someone last opened your plugin before that history begins, tode has never seen them. When they come back, tode counts them as new. Figma counts nothing, because they were added to its list years ago.
Font Replacer has a year of history in tode with 58,694 distinct users. Figma's lifetime number is 168,963. The difference is accounts Figma counted at some point that did not run the plugin during the last year. Each of them who returns this week is new to tode and old news to Figma.
A new SDK makes everyone new
Links manager and Styles have been sending events to tode since October 9. Two weeks in, almost everyone who opens them is a stranger to tode: 52 of 53 active users, and 36 of 38. Figma shows +45 and +28, because most of those people were on its list long before October.
The two numbers move closer once tode's history is longer than the usual gap between two uses of your plugin. For a tool people open every day, that takes a week or two. For something people need once a month, give it a couple of months.
Gaps in the history count too
If events stop arriving for a while, because a release shipped without the API key or the SDK was removed and added back, everyone who first used the plugin during the gap is missing from tode. The next time they open it, they count as new. The guide on publishing without losing analytics lists the usual ways that happens.
Week boundaries
Figma does not say which time zone its weekly email uses. tode cuts weeks in the time zone you view the dashboard in. A few people who used the plugin close to midnight can end up in different weeks in the two reports. That moves the numbers by a handful at most.
The number Figma does not show
1,819 people opened Font Replacer that week. The Figma email has no field for that. Of those people, 1,137 were new to tode and 682 had used the plugin before. Those 682 are the number I watch most closely: people who needed the plugin again and came back to it.
The daily split says something too. On weekdays tode saw 170 to 221 new users a day. On Saturday and Sunday it was about 80. People find and use the plugin at work, which matters for when you ship updates and when you answer support email.
Which number to use for what
- Figma's total and its weekly growth measure reach. Use them to judge a new cover, a rename or a post about the plugin.
- tode's active and returning users measure use. Use them to judge the plugin itself: does anyone open it, do they come back, which features do they press.
- In the first weeks after you add the SDK, treat tode's new-user count as an upper bound, and don't compare it with Figma's growth. Compare returning users week to week instead.
How the returning numbers turn into retention and stickiness is covered in the retention guide, and the wider gap between what the Community page shows and what happens inside the plugin is in installs vs usage.