DGuard

The TAB plugin: tab list, prefixes, nametags and scoreboard

TAB by NEZNAMY is a free, open-source plugin that handles everything players see in the player list and above heads: the tab list header and footer, prefixes, nametags, the scoreboard and boss bars. It takes groups from LuckPerms, reads PlaceholderAPI placeholders and can run on a proxy — the recommended setup for a network.

The DGuard team6 min read

In short: download TAB for your server version from Modrinth, drop it into plugins/ and restart — it has no dependencies. LuckPerms prefixes take one line, %luckperms-prefix%, in groups.yml; everything else lives in sections of config.yml. On a Velocity or BungeeCord network, install TAB on the proxy only and TAB-Bridge on the game servers.

What TAB does

FeatureWhere it's configuredWhat it shows
Header and footerheader-footer in config.ymlText above and below the player list: server name, online count, ping
Tab list namestabprefix, tabsuffix in groups.yml and users.ymlA player's prefix and suffix in the list
Nametagsscoreboard-teams in config.yml, tagprefix/tagsuffix in groups.ymlThe prefix above the head, collisions, name visibility
Scoreboardscoreboard in config.ymlThe sidebar on the right; off by default, players hide it with /sb
Boss bar, belowname, sortingTheir own config.yml sectionsA bar at the top, a value under the name, the order of players in tab
From the TAB wiki. According to the author, disabled features don't use the CPU at all

Since Minecraft 26.1 a single jar can no longer support every version, so the author recommends getting TAB from Modrinth with the filter set to your server software and version. At the time of writing TAB supports up to 26.3, and on Bukkit 1.19.4–26.3 plus a few older versions. After editing the files, run /tab reload (permission tab.reload).

Prefixes from LuckPerms

TAB takes a player's primary group from the permissions plugin: LuckPerms is supported everywhere, and on Bukkit any permissions plugin that supports Vault. To manage prefixes in LuckPerms only, TAB's author suggests deleting the groups from groups.yml and keeping a single entry:

plugins/TAB/groups.yml
_DEFAULT_:
  tabprefix: "%luckperms-prefix%"
  tabsuffix: "%luckperms-suffix%"
  tagprefix: "%luckperms-prefix%"
  tagsuffix: "%luckperms-suffix%"
  • %luckperms-prefix% is TAB's own placeholder, no PlaceholderAPI needed. With another permissions plugin, use %vault_prefix% through PlaceholderAPI.
  • If a player is in several groups, check the weights: /lp group <group> setweight <number>. Groups and weights are explained in LuckPerms.
  • /tab dump <player> shows which group a player got: look for permissionGroup in the report.
  • Prefix not updating on a network? TAB suggests setting messaging-service: pluginmsg in LuckPerms so the proxy and servers share changes.

RGB, gradients and MiniMessage

Clients on 1.16 and newer understand RGB colors. TAB accepts them in several notations — #RRGGBB, &#RRGGBB, &x&R&R&G&G&B&B — and gradients written as <#RRGGBB>Text</#RRGGBB>. The catch: a TAB gradient takes two colors only. For a blend through several colors, color each letter with its own &#RRGGBB — the gradient text generator builds that string for you.

config.yml — a header with a gradient and placeholders
header-footer:
  enabled: true
  designs:
    default:
      header:
        - "<#34D399>&lMyServer</#0EA5E9>"
        - "&7Online: &f%online%"
      footer:
        - "&7Ping: &f%ping% ms"
  • MiniMessage is used by TAB when the library ships with the server software itself — which is only the case for Paper and Velocity.
  • The name in a nametag on 1.13+ can have just one color or format code, and RGB there is rounded to the nearest legacy color. Prefixes and suffixes don't have this limit.

Placeholders

PlaceholderWhat it shows
%online%Players online on the server where TAB runs, vanished players excluded
%ping%The player's ping
%player%The player's name
%staffonline%How many players with tab.staff are online
%player-version%The player's client version, such as 1.21.11
TAB's internal placeholders — they work without PlaceholderAPI

Everything else — balance, kills, playtime — comes through PlaceholderAPI: installing expansions and testing placeholders is covered in PlaceholderAPI. The balance is %vault_eco_balance% — see economy and Vault.

TAB on a Velocity or BungeeCord network

  1. 1

    TAB on the proxy only

    The author calls this the recommended setup: a global player list without Redis, settings in one place, and no header that sticks around after a server switch. On the proxy the command is /btab instead of /tab.

  2. 2

    TAB-Bridge on the game servers

    Without it, TAB on the proxy can't see PlaceholderAPI placeholders from the game servers.

  3. 3

    VelocityScoreboardAPI on Velocity

    Needed on a Velocity proxy for scoreboard-related features to work.

  4. 4

    Don't install TAB on both the proxy and the servers

    The author doesn't support a mixed setup: two copies do the same job and get in each other's way. The one exception is the per-world player list, which a proxy can't do.

Looks and the anticheat

TAB decides how the server looks, not whether people play fair: a fancy prefix in tab won't stop KillAura. On a network the split shows in the install too — TAB on the proxy, the anticheat on every game server. DGuard — the best anticheat for a modern Minecraft server — is a Paper and Leaf plugin for 1.21–26.3 that works behind Velocity and BungeeCord and makes exceptions for Bedrock players joining through Floodgate. It checks combat, movement, building, inventory and packets, and its checks run in network threads — 0.03% of one core on the main thread.

FAQ

Where does TAB go on a network: the proxy or the servers?

The author recommends the proxy only, with TAB-Bridge on the game servers for PlaceholderAPI placeholders. On the proxy the command is /btab. Installing TAB in both places isn't supported.

Why doesn't my LuckPerms prefix show up?

Check that groups.yml uses %luckperms-prefix% and that your groups have the right weights. /tab dump <player> shows the group TAB sees. On a network, set messaging-service: pluginmsg in LuckPerms.

Can I use a gradient in the tab list?

Yes, for 1.16+ clients: <#RRGGBB>Text</#RRGGBB>. Such a gradient takes two colors only; for more, color each letter with its own &#RRGGBB.

How do I turn on the TAB scoreboard?

In config.yml, set enabled: true under scoreboard and run /tab reload. The scoreboard is off by default, and players can hide it with /sb.

Sources

All sections

Run the best anticheat for modern Minecraft

DGuard catches all 47 kinds of cheats in our comparison — the closest rival, Intave, has 27. Full protection on every plan, free up to 30 players online.