JoinGG.cc
Features

Writing a Server Listing That Converts

Your server listing is an ad competing with thousands of rows. Learn what players read first, how to write a name and hook that earn the click, and what to cut.

By SweetMask · · updated · 18 min read

A listing is an advertisement in a scannable list, not a feature dump. A player reads your name, player count, ping and map in about two seconds and decides. Write the name for truncation, the hook for one specific thing, and never oversell, because a click that leaves is worse than no click.

Published 19 September 2026 · JoinGG · Guides

Most owners write their listing like a changelog: everything the server has, in the order they built it. That documents a project; it does not sell one. On the full server list there are 11,561 servers, and yours is one row about the height of a line of text. It is an ad in a classified column, read the way classified ads are read: fast, sideways, and mostly by people looking for a reason to skip it.

This guide covers the anatomy of that row: what a scanning player looks at and in what order, why a 90-character name padded with brackets loses to a 35-character one, how to write a hook that is not interchangeable with every other hook on the page, and why 0/32 needs a different strategy from 24/32.

What your listing is actually competing against

Start with the arithmetic, because it sets the tone for everything that follows. JoinGG carries 11,561 listed servers across the 147 games in the game catalogue, of which 31 currently have servers online. Around 10,700 answer any given hourly sweep, and roughly 156,000 players are connected across all of them at a typical moment.

Those totals split unevenly. Minecraft alone accounts for 4,230 listed servers holding about 56,400 players. FiveM has 1,854 servers and 72,600 players. Counter-Strike 1.6 has 1,588 servers and 10,800 players. CS2 has 859 and 4,020. Team Fortress 2 has 569 and 2,320. Garry's Mod has 351 and 2,700. The same breakdown is maintained live on the statistics section.

Divide those pairs and you get the number that should govern your writing. The average listed Minecraft server holds 13 players. The average TF2 server holds 4. The average CS 1.6 server holds 7. CS2 averages under 5. FiveM is the outlier at 39, and that is because FiveM servers are large roleplay projects running 64 to 300 slots, not because FiveM listings are better written.

So the realistic picture for a Minecraft owner is 4,229 other rows, most holding a single-digit or low double-digit count, every one of them written by someone who also believes their server is different. You are not trying to be the best server on the list. You are trying to be legible in two seconds to the small subset of people who want the specific thing you run. Those are different goals, and only the second is achievable.

That reframing changes what a listing is for. It is not a pitch aimed at everyone browsing; it is a sorting device aimed at a few dozen people a day. The rest of this guide treats every field as a filter, judged by how quickly and honestly it sorts the right person in.

What a player scanning a list sees first

A row carries roughly five fields: name, game, players over slots, ping or region, and current map. Everything else is one click away. That holds for the Source browser, the Minecraft multiplayer screen, the FiveM browser and the live Minecraft server list, because the query protocols underneath return the same things. Players do not read that row left to right. They pattern-match it, and the order depends on how the list is sorted, which is the part most owners never consider.

Sorting destroys the information value of the sorted column

When a list is sorted by player count, the count column is monotonic. It descends smoothly down the page, so it says nothing about any individual row beyond position, and within half a screen the eye moves to the only column that still varies: the name. Sort by ping and the same happens to ping. Whichever column the player sorted by is the one they have stopped reading, which is why the name matters more than owners assume.

The five fields, and what each is really answering

Four of those five are generated by your server, not written by you. JoinGG documents where each number originates in its measurement methodology, and the trust implications are in the guide to what makes a listing trustworthy. Your writing budget is the name, the hook, the description and the tags.

The server name is the only field guaranteed to be read

Every other piece of copy is conditional. The name is read every time the row appears, which makes it the most valuable 40 characters you own, and it is the field owners abuse hardest.

The truncation math nobody runs

List rows and browser columns cut long names. The exact cut depends on client and window width, but assume 35 to 50 characters survive a scan. Take a real-shaped Counter-Strike hostname:

»» [EU] ★★★ DUST2 ONLY 24/7 ★★★ FREE VIP | 128 TICK | !ws !knife ««

That is 67 characters. Cut at 40 and the scanner sees:

»» [EU] ★★★ DUST2 ONLY 24/7 ★★★ FREE VIP

Sixteen of those forty characters are decoration. The owner spent a fifth of their guaranteed real estate on symbols and lost the tick rate and the mod list. Compare a 37-character version:

[EU] Dust2 24/7 · 128 tick · free !ws

Same offer, nothing truncated, every character carrying information. On the Counter-Strike 1.6 server list that second style is a minority. Whether it actually holds players better is not something the listings can answer — they record names and populations, not the link between them — but it is the one I would write.

Why decoration and keyword stuffing actively hurt

  1. Uniform decoration carries zero information. If every row has stars, the stars distinguish nothing. A signal everyone sends is not a signal.
  1. Keyword stuffing is a search-engine habit applied where there is no search engine. Owners cram SURVIVAL SKYBLOCK PRISON BEDWARS FACTIONS into a name believing it improves discovery. List filters read the tag and game fields, not the hostname string.
  1. Encoding is not guaranteed. Source hostnames are UTF-8, but older CS 1.6 clients and many scrapers render decorative symbols as boxes. Your stars can arrive as ???? on the exact client your audience uses.

The one bracket that earns its place is a leading region tag. [EU] costs four characters and answers a question the player has before they finish reading the name, faster than the ping column can be parsed. If you are unsure which label is honest for your setup, the trade-offs are in the guide to choosing a hosting region.

A name checklist

Listing elements ranked by how much they move a click

The table below ranks each element by how much it influences whether a scanning player clicks, not by whether they stay. Some are near-worthless for the click and decisive for retention, and those are marked.

Two conclusions fall out. First, the highest-influence elements are the name and the ratio, and only one is copy; if your ratio reads dead, no rewrite fixes the row. Second, placement multiplies rather than fixes. Whether it comes from community votes, described in the explanation of how server voting works, or from paid placement on JoinGG, moving a bad listing higher only exposes more people to it.

The one-line hook, and why most of them say nothing

The hook is the single line beneath or beside the name, read when the name has bought a pause, which happens on maybe one row in thirty. You get one sentence, and nearly every hook on nearly every list fails the same test. Four real-shaped examples:

The test: could a competitor put this exact sentence on their listing without lying? For all four, yes. Every owner believes their staff is friendly; every FiveM project calls itself serious roleplay with a custom economy. A claim every listing makes cannot discriminate between listings, so it occupies your one sentence while communicating nothing. If a competitor could copy it verbatim, delete it. What survives is specific and falsifiable, and usually contains a number, a proper noun, a schedule, or a constraint:

Every one of those repels somebody, which is the point. The second loses everyone who wanted casual deathmatch and wins the retake players who were about to stop scrolling. Genre vocabulary does the filtering, so it is not optional. For FiveM, the distinctions players care about are in the guide to choosing a FiveM roleplay server; on the Team Fortress 2 server list, vanilla versus x10 versus a custom gamemode is the entire decision for most people scanning it.

One structural note: put the constraint before the flavor. Whitelist by application, then serious roleplay beats the reverse, because a reader who cannot get past a whitelist stops immediately instead of clicking, finding the whitelist, and leaving annoyed.

Writing a description that answers what playing here is like

The description is the body copy on your listing page, read only after the click. Its job is not to sell; the selling is done. It is to answer one question: what would the next hour here be like. Owners answer a different question, what this server has, and the two produce very different documents.

The feature dump and its replacement

Here is the shape of what most owners write:

Welcome! We have over 100 custom plugins, a custom economy, ranks, crates, pets, McMMO, land claims, an active staff team, weekly events, a Discord with 5,000 members and 24/7 uptime. Vote for us daily!

That is 35 words describing an inventory. A reader still cannot tell what an hour there feels like, or whether they will be one of four people or forty. Compare:

Semi-vanilla survival, Java 1.21, 40 slots, EU host in Frankfurt. Land claims and McMMO, nothing else that changes gameplay. Map running since March 2024, no reset planned. Busiest 19:00 to 23:00 CET, usually 12 to 20 players. No whitelist. If you want a long map and small numbers, this is it. If you want 40 people online at all hours, it is not.

That is 62 words and it answers the question. It also loses readers deliberately in the last sentence, which is why it works. Note the vocabulary: semi-vanilla, land claims, nothing that changes gameplay. Those are the terms players sort by, broken down in the guide to SMP, anarchy and skyblock server types, and the equivalent for Rust is the split covered in the modded and vanilla comparison.

Order it by disqualification, not by pride

Put what eliminates people at the top. Every reader you lose in the first two lines is one who does not click join, spend eleven minutes on a modpack download, and leave. Front-load in this order:

  1. Region and host location. Eliminates the wrong continent instantly.
  1. Access gate. Whitelist, application, Discord, age or mic requirement. If you run applications, say so in line one; the mechanics are in the guide to whitelists people actually apply to.
  1. Install cost. Modpack size, launcher, client mods. A 4 GB pack is not a flaw, it is a filter.
  1. Schedule. The hours you are populated, in a named timezone, with a realistic range.
  1. Ruleset in one line. PvP or not, wipe cycle, gather rate, difficulty. Then flavor.

What does not belong: staff recruitment, changelogs, the full rules document, donation pitches, a list of every plugin. None answer the question and all push the answer below the fold, a failure mode catalogued in the analysis of why nobody joins your server.

Tags decide which list you appear in at all

Tags are the least glamorous field and the highest-leverage one, because they operate before anything you wrote gets read. A tag does not persuade. It sets the size of the list your row competes in, and that is a bigger multiplier than any sentence. An untagged Minecraft server competes against 4,229 rows; one tagged into a specific mode filter competes against a few dozen. Nothing you write to the name or hook produces a hundredfold change in visibility. Correct tagging does, and it takes ninety seconds.

Use the words the community already uses

Players filter with vocabulary they learned from other players, not vocabulary you invented. Your custom island progression experience is skyblock, and if you do not tag it skyblock, the people searching for skyblock never see it. The working vocabularies are narrow and stable:

Over-tagging is not free

The temptation is to claim every applicable tag and appear everywhere. It costs more than it returns: every filter you appear in wrongly delivers a click from someone who wanted the other thing. They join, spend forty seconds establishing that your DarkRP server is not a TTT server, and leave. You paid for that click with your reputation. There is a measurement cost too. If you track your numbers against a public baseline such as the Counter-Strike statistics page, broad tagging makes your join data uninterpretable, because you cannot tell whether a bad retention hour was your server or the wrong audience arriving. Three accurate tags beat nine aspirational ones.

Why 0/32 and 24/32 need different listings

The ratio is the second most influential element on the row and you cannot write it. What you can do is write a listing appropriate to the number you have, and the correct strategy inverts between the two ends.

The empty server: stop competing on the scan

A server showing 0/32 will not win a count-sorted scan, not with a better name and not with a better hook. Change where the fight happens. Four moves, in order of effect:

  1. Fix the denominator. Four players in 64 slots is 6 percent full and reads as abandoned. The same four in 12 slots is 33 percent full and reads as a game in progress. Nothing changed but a config line. The caveat: do not go below your genuine peak, because turning people away at 12/12 costs more than the ratio gains. The guide to choosing a slot count covers that line.
  1. Concentrate into one window. Twenty player-hours spread across a day is never more than two people online. The same twenty inside 19:00 to 22:00 puts six or seven on the row while people scan.
  1. Win on the filter instead. A narrow, accurate tag set moves you into a small list where a low count is normal.
  1. Let the description carry the weight. It performs identically at 0 players and at 24, and it converts the curiosity clicks, which are the only clicks you are getting.

Timing compounds all four. The busiest hour JoinGG has measured is Saturday 18:00 UTC at 242,719 players; the quietest is Wednesday 06:00 UTC at 73,158, a 3.3x swing in how many people are scanning at all. If your server has three good hours in it, they should be Saturday evening in your region.

The busy server: the name stops selling and starts identifying

At 24/32 the ratio has made the argument already. That changes the name's job from persuasion to identification, and most owners never switch. They keep the FREE VIP and the 128 TICK and the stars, all redundant against a count that reads healthy.

Both patterns show in aggregate. On the FiveM statistics page, 1,854 servers average 39 players each, but that hides a distribution where a few hundred large roleplay projects hold most of the 72,600 players and the tail sits near empty. That tail is not badly written; it is badly sized and badly scheduled.

The honesty problem: overselling wins the click and loses the player

This costs owners the most and gets discussed the least, because the incentive runs the wrong way. Every exaggeration raises the click rate, and the click is the thing you can see. The cost lands later, in no metric you are watching.

Work the example. Listing A oversells: it claims an active community, promises 128 tick it does not run, and tags itself into four modes it half-supports. It gets 100 clicks in a day and six people stay past ten minutes. Listing B is exact: real schedule, real tick rate, one mode. It gets 40 clicks and twelve stay.

Listing B produced twice the players from 40 percent of the traffic, and it left 28 people who never clicked and never formed an opinion, against Listing A's 94 who clicked, were disappointed, and now associate your name with a letdown. That is the real cost: not the wasted click but the burned name. Someone who never saw you is neutral; someone who tried you and left is negative, and in small communities they talk.

The claims that cost most are the ones easiest to check in the first sixty seconds:

The reframe that makes this easy: your listing is a filter, not a funnel. Cheap repulsion happens in the name and the first line of the hook. Expensive repulsion happens after a download, a join and ten minutes. Every honest disqualifier you move earlier turns an expensive rejection into a free one.

Frequently asked questions

How long should a game server name be?

Land the identity inside the first 40 characters, because that is roughly where list rows and in-game browser columns begin cutting. Everything past the cut still exists in the data, it is simply not read during a scan. A 90-character name is not a longer advertisement. It is a 40-character advertisement with 50 characters of waste attached.

Do brackets, stars and emoji in a server name help?

A region tag like [EU] earns its brackets because it answers a question the player already has. Decoration does not. When every row on a list carries stars, the stars stop distinguishing anything and only consume characters. Older clients and some scrapers render decorative symbols as boxes or question marks, so the decoration can arrive as noise.

Should I put the player count or slot count in the server name?

No. The list already prints both in their own column, so repeating them spends characters on something the player read a tenth of a second earlier. The one thing worth stating is a schedule rather than a count. Naming the hours you are actually populated tells a scanner something the count column cannot.

What do I write when the server is empty?

Write for the filter and the schedule rather than the scan. State the region, the exact hours you run, and the one thing that is specific about the server. Then cut the slot count so the ratio reads honestly. Four players in 12 slots reads as a game in progress. The same four in 64 slots reads as abandoned.

Do tags actually change how many people find my server?

They change which list you appear in, which is a larger effect than anything you can write. A Minecraft server competing in a 4,230-row list is invisible, while the same server inside a narrow mode filter competes against dozens. Tag only what you genuinely are, because appearing in the wrong filter buys clicks that leave.

Is paid placement a substitute for rewriting the listing?

No, it changes where the row appears, not whether it converts. Placement raises how many people see the row, but the name, count and hook still decide whether they click, and the accuracy of that copy still decides whether they stay. Fix the copy first, because paid traffic hitting a bad listing only spends money faster.

Finish with an editing pass. Cover everything past the first 40 characters of your name and see whether it is still identifiable. Ask whether the server above you could print your hook without lying, and whether a stranger could predict the next hour from your description. If your ratio reads dead, the config file is the edit, not the prose. If your server is not listed yet, submit it with the correct query port, then write the row for the two seconds it will get.

JoinGG lists 11,561 game servers across 31 games with servers online, roughly 10,700 of them answering any given hourly sweep. Figures in this article reflect measurements taken on 9 September 2026.

server listingserver namegame server descriptionserver tagsserver list conversionempty server

More