Understanding the TeamSpeak 3 Permission System
TS3's layered permission system trips up a lot of admins. Here's how the five permission sources work, what Skip and Negate actually do, and how to avoid the most common mistakes.
How TS3 Permissions Work
TeamSpeak 3 doesn't use a simple on/off toggle for permissions — it uses a layered numeric system with five distinct sources. Each source can grant a permission value, and the server resolves them into a final effective value for each user in each context.
The five sources, from most general to most specific:
- Server Groups — applies to the user everywhere on the server
- Channel Groups — applies to the user only in channels where that group is assigned
- Channel Permissions — applies to everyone in a specific channel
- Client Permissions — applies to a specific user everywhere on the server
- Channel-Client Permissions — applies to a specific user in a specific channel only
When multiple sources grant the same permission, the highest numeric value wins — unless Skip or Negate flags override that behavior.
Permission Values
Every permission is a number. For boolean permissions (yes/no), the value is 1 (granted) or 0 (not granted). For power-based permissions, the value is a number from 0 to 100+.
Example: i_channel_create_permanent = 75 means this group can create permanent channels as long as the channel's i_channel_create_needed_permanent value is 75 or less.
Power-based permissions always work as a pair:
- The acting permission (e.g.,
i_client_kick_power) — what you have - The needed permission (e.g.,
i_client_needed_kick_power) — what's required to affect a target
You can only kick someone if your kick power is greater than or equal to their needed kick power. Admins set their own needed value high to prevent being kicked by moderators.
Skip and Negate Flags
These two flags modify how a permission resolves and cause the most confusion for new admins.
Skip flag: When checked on a permission in a lower-priority source, that source's value is ignored during the final calculation. Use this when you want a higher-priority source (like a Channel-Client permission) to take effect without interference from a group grant.
Negate flag: Forces the permission to resolve as false/zero, regardless of what any other source grants. This is how you hard-deny a permission — useful for a "restricted" group where you want to explicitly block something that other groups might otherwise grant.
Don't set Negate unless you have a specific reason. It can produce confusing results when users are in multiple groups.
Common Beginner Mistakes
Giving a group b_serverinstance_ permissions by accident. These permissions affect the server instance itself — things like modifying the license or creating virtual servers. Most of these should only ever be on the server admin account. If you see b_serverinstance_ in a regular group, remove it.
Confusing Server Group and Channel Group scope. A Server Group permission applies globally. A Channel Group permission only applies inside channels where that group is explicitly assigned. If you give a Channel Group "Moderator" kick power and assign it to one channel, those users can only kick in that channel — not server-wide.
Not testing permission changes before rolling out. Create a secondary TS3 account or have a trusted member with a lower-privilege group help you verify that a new permission configuration works as expected before it goes live.
Where to Edit Permissions
- Server Groups: Permissions menu → Server Groups → select group → adjust list on the right
- Channel Groups: Permissions menu → Channel Groups → same process
- Individual Channel: Right-click the channel → Edit Channel → Permissions tab
- Individual Client: Right-click user → Client Permissions → adjust list
Practical Tip: Use a Test Account
Before pushing major permission changes, create a throwaway TS3 identity (Tools → Identities → Create), connect with it, assign it the group you're modifying, and verify the experience. It takes two minutes and saves a lot of "why can guests suddenly kick people" moments.