In short: DecentHolograms is the most versatile option: Paper, Spigot and Folia, pages, animations, click actions, hex colours and gradients, PlaceholderAPI placeholders, and import from HolographicDisplays, CMI and other plugins. FancyHolograms is built on display entities: scale, rotation, text background and shadow, MiniMessage formatting — but it runs on Paper and Folia only and has no pages or clicks of its own. The old HolographicDisplays is no longer developed: its repository has been archived since June 2024.
How holograms work
Holograms used to be built from invisible armor stands with a name tag — one stand per line. Java Edition 1.19.4 added display entities: text_display, item_display and block_display. They have no hitbox, take no damage and don't collide with players, and in vanilla they can only be created with /summon. Hologram plugins usually don't spawn armor stands or display entities in the world at all — they send them to players as packets: the hologram exists only on the client, so each player can see their own text, such as their name and balance.
| Armor stands | Display entities | |
|---|---|---|
| Versions | Any | 1.19.4 and newer |
| Text | Always faces the player; size and font can't change | Rotation, scale, background, shadow, alignment |
| Multiple lines | One stand per line | Several lines in one entity |
| In the plugins | Regular DecentHolograms holograms (/dh h) | FancyHolograms; DecentHolograms since 2.10.0 — /dh displays |
Hologram plugins compared
| DecentHolograms | FancyHolograms | |
|---|---|---|
| Server software | Paper, Spigot, Folia | Paper and Folia only (Paper forks should work) |
| Code | Open source, GPL-3.0 | Open source, MIT |
| Built on | Armor stands via packets; since 2.10.0 display entities too | Display entities via packets |
| Lines | Text, floating item, head, entity | The whole hologram is text, an item or a block |
| Colours | &a, &#rrggbb, <#rrggbb>, gradients <#rrggbb>…</#rrggbb>, rainbow | MiniMessage |
| Placeholders | PlaceholderAPI, parsed per viewer | PlaceholderAPI and MiniPlaceholders |
| Pages and clicks | Pages and actions: message, command, console, network server, teleport, sound | Holograms aren't clickable; can be linked to a FancyNpcs NPC |
| Import | /dh convert: CMI, FutureHolograms, GHolo, Holograms, HolographicDisplays | /fancyholograms convert decentholograms |
| Versions on Modrinth | Up to 26.3 | Up to 26.3 |
DecentHolograms: first commands
/dh h create spawn &aWelcome to the server
/dh l add spawn 1 &7Hi, &f%player_name%
/dh l add spawn 1 <#55FF55>Click to play</#2E8B57>
/dh p addaction spawn 1 RIGHT CONNECT:survival/dh h create <name> [text]creates a hologram where you stand;-l:<world>:<x>:<y>:<z>places it at given coordinates,--centercentres it on the block./dh l add <hologram> <page> [text]adds a line,/dh l set <hologram> <page> <line> <text>replaces one. Pages and lines count from 1.#ICON: <item>,#HEAD:and#SMALLHEAD:lines show a floating item or a head.- Click actions (
LEFT,RIGHT,SHIFT_LEFT,SHIFT_RIGHT) are added per page:MESSAGE:,COMMAND:(as the player),CONSOLE:(as the console),CONNECT:(to a network server),TELEPORT:,SOUND:. - All permissions at once —
dh.admin; per command —dh.command.<command>.<subcommand>.
FancyHolograms: first commands
/hologram create text spawn
/hologram edit spawn setline 1 <gradient:#55FF55:#2E8B57>Welcome to the server</gradient>
/hologram edit spawn addline <gray>Hi, <white>%player_name%</white></gray>
/hologram edit spawn updatetextinterval 3s
/hologram edit spawn billboard center- The type is set at creation:
text,itemorblock. Text holograms havesetline,addline,removeline,insertbeforeandinsertafter. billboarddecides whether the hologram turns to face the player:center,fixed,vertical,horizontal. Withfixed, set the angle withrotateandrotatepitch.scale,background,textshadow,textalignmenthandle the look;visibilitydistancesets how far away it can be seen.- Per-line settings aren't supported — the FAQ puts it down to a display entity limitation: a differently styled line needs a separate hologram.
linkwithnpcturns a hologram into the name of a FancyNpcs NPC — more on NPCs in NPCs on a server. All commands needfancyholograms.admin.
Gradients and hex colours
Both plugins go beyond the 16 standard colours, but in different formats. FancyHolograms reads MiniMessage: a gradient is <gradient:#55FF55:#2E8B57>text</gradient>. DecentHolograms has its own formats: &#rrggbb, <#rrggbb>, and a gradient as <#start>text</#end>. You can build a gradient and copy it as MiniMessage or &#RRGGBB in our free gradient text generator.
Placeholders and load
- Placeholders are parsed per viewer. In DecentHolograms
%player_name%shows each player their own name — in lines, actions and animations. What placeholders are and where they come from is in PlaceholderAPI. - Don't refresh more often than needed. In FancyHolograms
updatetextintervalsets how often the text refreshes — the docs suggest it precisely for placeholders. A kills leaderboard doesn't need updating every half second. - Placeholders inside DecentHolograms animations are off by default to avoid performance issues;
allow-placeholders-inside-animationsin config.yml turns them on. - If placeholder holograms still load the server, find the culprit with a profiler — see the spark profiler.
Which one to pick
- You need clicks, pages, animations or a Spigot server — DecentHolograms.
- Paper or Folia and good-looking text: scale, background, exact rotation — FancyHolograms, especially if your NPCs already run on FancyNpcs.
- You had HolographicDisplays — move on:
/dh convert HolographicDisplaysbrings its holograms into DecentHolograms.
Leaderboard holograms and fair play
Holograms often show leaderboards: kills, minigame wins, resources mined. A leaderboard is only as honest as the game behind it — one player with KillAura or an AutoClicker takes the top line in an evening. DGuard — the best anticheat for a modern Minecraft server — watches combat, movement, packets, inventory, building and the world and covers all 47 cheat types in our comparison. It gathers evidence and doesn't rush to a verdict, and you set how strict punishments are. DGuard is free up to 30 players online, with the same protection as on paid plans.
FAQ
How do I make a hologram on a Minecraft server?
Install a hologram plugin. In DecentHolograms use /dh h create <name> <text>; in FancyHolograms, /hologram create text <name> and then /hologram edit <name> addline <text>.
How do I make a gradient on a hologram?
In FancyHolograms use the MiniMessage tag <gradient:#colour1:#colour2>text</gradient>; in DecentHolograms, <#colour1>text</#colour2> or &#rrggbb per letter. You can build the string in the gradient text generator on our site.
Why doesn't a placeholder work on my hologram?
Check that PlaceholderAPI and the right expansion are installed: /papi parse me %placeholder% should print a value. In DecentHolograms placeholders inside animations aren't parsed by default.
Can players click a hologram?
In DecentHolograms, yes: left- and right-click actions, with or without Shift. FancyHolograms holograms aren't clickable on their own.
Is HolographicDisplays still supported?
No: its GitHub repository has been archived since 21 June 2024. DecentHolograms can import its holograms with /dh convert HolographicDisplays.
Sources
- Minecraft Wiki: Display (display entities)
- DecentHolograms Wiki
- DecentHolograms: your first hologram
- DecentHolograms: line types and colours
- DecentHolograms: click actions
- DecentHolograms: compatibility and import
- DecentHolograms on GitHub
- FancyHolograms: documentation
- FancyHolograms: the /hologram command
- FancyHolograms: FAQ
- MiniMessage: format
- HolographicDisplays on GitHub (archived)
- DGuard, the best anticheat for a modern Minecraft server: checks compared with GrimAC, Vulcan, Polar, Intave and Matrix
- DGuard: installation, requirements and troubleshooting
- DGuard: supported Paper and Leaf versions