Skip to main content
A counter is a voice channel nobody joins — its name is the point. It renders a template with live data and updates itself on a schedule.
Requires Manage Channels.

Creating one

With no channel, one is created for you. With no template, the default is {members} members +{joins_today} td.
!counter preview resolves the template without creating anything — use it to check your syntax. Aliases: test, demo.

Variables

Counter templates use a flat variable set — no guild. or user. prefix, unlike scripting variables elsewhere. Run !counter variables to see them in Discord.

Live server state

Historical data

These take an optional period suffix — _today, _week, _month, _year, _total: Without a suffix they default to a sensible period.

Aliases

Plenty of natural spellings work: {msgs_today}, {msg_7d}, {weekly_joins}, {yearly_messages}, {growth_30d}, {vc_week}, {left_alltime}, {member_count}, {people}. If a variable reads correctly, it probably resolves.

Formatting

Counter templates support pipes and operators:

Social counters

Counters that track an account on another platform instead of your server:
!counter socialvars (aliases svars) lists them in Discord, optionally for one platform.

Live status

The Twitch counter is the interesting one, because {live} lets the channel change shape entirely:
Offline it advertises the channel; live it shows the viewer count. Twitch refreshes every 5 minutes for exactly this reason; the other platforms refresh every 15–60.

Update frequency

Discord rate-limits channel renames to twice per 10 minutes, per channel. Counters update roughly every 10 minutes as a result — a live view is not possible, and that’s Discord’s limit rather than the bot’s.Practical consequences:
  • Don’t make a counter that needs to be accurate to the second
  • !counter refresh forces an immediate update, but spend it wisely
  • Six counters cost six rename budgets — three or four is usually plenty

Some good ones

Put counters in their own category at the top of the channel list, denied Connect for @everyone so nobody can join them. !counter add does this automatically for channels it creates.

Command reference

Every command requires Manage Channels. Group aliases: cntr, counters.