Statistics Channels
Turn a channel's name into a live counter — members, roles, boosts, tickets, social followers — and set goals that fill up as you approach them.
A counter is a channel name. Nothing is posted and nothing is embedded — the number lives in the title, at the top of your channel list where everybody sees it. Every rule below follows from that one fact.
Creating a counter
Switch it on
Server Management → Statistics Channels.
Pick a metric
48 of them — total members, humans, bots, boosters, boost tier, channels, roles, emojis, stickers, bans, scheduled events, open tickets, giveaway entries, members holding a specific role, and more.
Write the name template
Your own words around the number:
Members: {count}or👥 {count} humans.Choose the channel type
Voice is the default and the best choice — its name is preserved exactly. Categories and stages behave the same way.
Save
Arclo creates the channel (in an
Arclo Statscategory if you have not made one), sets the permissions so nobody can join it, and starts updating.
Arclo Stats
Members: 24,318
Humans: 23,902
Bots: 416
Boosts: 14
Goal: 25K members — 97%
Text channels
general
roles
support
A counter is a channel name
Nothing is posted and nothing is embedded — the number lives in the title, at the top of the channel list. Voice channels are the default because Discord stores their names exactly as sent.
The rename budget
Discord allows two channel renames per ten minutes, per channel
That is the hard constraint the whole system is designed around. It is per channel, so it cannot be spent faster by spreading the work out — and Discord does not reject a third rename, it makes the bot wait, sometimes for minutes.
- The minimum update interval is five minutes. Anything faster burns both edits and freezes the counter for the rest of the window — the exact “it stopped updating” complaint.
- Arclo keeps its own budget and declines a rename rather than queueing one.
- A counter whose name already reads correctly is never rewritten.
- Gateway events (a member joining, a role being created) nudge the next update earlier; they never rename directly.
Number format
Set per counter, and it follows the channel type — because Discord slugs the names of text and announcement channels, turning both commas and spaces into dashes.
| Channel type | Formats offered | Why |
|---|---|---|
| Voice, stage, category | Plain, comma, spaced, compact | The name is stored exactly as sent |
| Text, announcement | Plain, compact | 1,250 would arrive as 1-250; 1.3K survives, which is why compact is offered |
Social counters
Eight platforms — Instagram, Reddit, Twitch, Kick, YouTube, X, Bluesky and Facebook — as a follower or subscriber count in a channel name. Give it a platform and a handle.
Note
Follower counts are cached across every server that watches the same account, so a streamer followed by a thousand servers is fetched once. Some platforms need a provider Arclo's operator has configured; a counter that cannot reach one says so on the dashboard rather than showing a wrong number.
Goals
A goal is its own kind of counter, not a flag on one: you can set “1,000 members” without already owning a member counter. It shows progress toward the target and announces when it is reached.
- Only metrics that climb can be goals — a target on your boost tier is a misunderstanding rather than a goal.
- A goal with no target is a blocking problem; a counter with a stray target is only a warning.
- Editing the target re-arms the announcement.
- Goals have their own
/goalcommand.
Problems
The dashboard distinguishes two kinds, which matters more than it sounds:
- Blocking — the counter cannot run, but you can still save and still switch it off. “Presence is unavailable” and “that platform is not configured” are problems with Arclo, not with your counter.
- Unsavable — something in the configuration is genuinely wrong, such as a goal with no target.
Twelve counters need the presence intent
Everything about who is online — the whole status group, plus online-in-role, offline-in-role and peak online — needs a privileged Discord intent that is not enabled by default. Those counters say so on the dashboard rather than silently reading zero.
A value that cannot be computed shows an error, never zero
A channel saying 0 members online during an outage is worse than one showing yesterday's number until it can tell the truth.
Commands
/counter create <type> [name] [channel_type] [category] [role] [game] [parent]Manage ChannelsCreates a counter channel for anything in the catalog.
/counter edit <counter> [name] [channel_type] [number_format] [category] [enabled]Manage ChannelsRenames a counter or changes how it looks.
/counter delete <counter>Manage ChannelsCannot be undoneDeletes a counter and removes its channel.
/counter listManage ChannelsLists every counter in the server and what it currently reads.
/counter refresh [counter]Manage ChannelsRefreshes counters now instead of waiting for the next cycle.
/counter checkManage ChannelsChecks every counter for permission and configuration problems.
/counter setupManage ChannelsCreates a starter set of counters in one go.
/counter resetManage ChannelsCannot be undoneDeletes every counter and goal, and removes their channels.
/counter social add <platform> <handle> [name] [channel_type]Manage ChannelsShows an account's follower count as a channel.
/counter social remove <counter>Manage ChannelsCannot be undoneStops following an account's follower count.
/counter category set [category] [no_category]Manage ChannelsChooses the category new counters are created under.
/goal create <metric> <target> [name] [channel_type] [category] [announce_in] [role] [platform] [handle]Manage ChannelsCreates a goal channel that climbs toward a target.
/goal edit <goal> [target] [name] [announce_in] [enabled]Manage ChannelsChanges a goal's target, name or announcement channel.
/goal delete <goal>Manage ChannelsCannot be undoneDeletes a goal and removes its channel.
/goal listManage ChannelsLists every goal and how far along it is.
/goal view <goal>Manage ChannelsShows one goal's progress in detail.
Still stuck? Ask in the support server — somebody there has almost certainly configured this before.
