Halloween Edition36 maps, limited runlimited runShop the drop

25 September 2026 · 8 MIN READ

Working a palette out of a logo, a role colour and a city

An applied method for deriving a server palette from artwork, a role colour or a city, and for testing it against the formats rather than against a swatch.

A server with a free choice of palette is a server that has not started yet, and almost nobody is in that position. By the time anybody thinks seriously about colour there is already a logo somebody's friend made in 2023, a Discord with a role colour three hundred members recognise, and a handful of people who would describe the place as the purple one. The question is not which four colours are good. It is which four you can defend given what already exists, and where to test them, because a swatch tells you nothing useful.

Start from what is already fixed

Before choosing anything, write down what you are not allowed to change. There are usually one or two items on that list and they do most of the work for you. The mistake is treating them as obstacles rather than as the brief. A palette derived from a fixed point looks inevitable; a palette chosen freely and then forced to coexist with one looks like a compromise, because it is.

  • Artwork you already own. A logo, a badge, a vehicle wrap, a map banner somebody made for an event. Anything that members have seen enough times to associate with the server.
  • A Discord role colour. The owner or staff role colour is seen beside every message those people post, which over a year is far more exposure than any banner gets. If it has been the same hex for two years, it is your accent whether you chose it or not.
  • A real location. Servers built on a specific city inherit a palette from it. Miami gives you cyan and coral against warm concrete; Detroit gives you rust and steel; a Nordic map gives you pale blue and almost no saturation at all.
  • A sponsor, a host or a partner brand you cannot recolour. Rare, but if it exists it is a hard constraint and it is better to know on day one.

If there is nothing on the list, you have a genuinely open choice, and the theory for making it well is in 'Choosing a colour palette that still works at 40 pixels', which covers the four roles, the contrast numbers and the greyscale check. This piece assumes you have a fixed point and are working outwards from it.

Pulling a palette out of artwork

Eyedropping a logo is the obvious move and it reliably produces the wrong answer. What you pick up is a pixel, and a pixel from an image with a gradient, a glow or a drop shadow is an arbitrary point along a ramp. Three people eyedropping the same logo get three different accents, all of them slightly off, and none of them matching the colour the artist actually specified.

Quantise instead. Reduce the image to a handful of colours and read what the reduction chose, because that is weighted by area rather than by wherever the cursor happened to land.

magick logo.png -resize 25% -colors 6 -unique-colors txt:
magick logo.png -alpha remove -colors 8 -unique-colors -scale 800x100! swatch.png

The first line prints six hex values with their coordinates. The second writes a strip you can actually look at, which matters because the printed list always contains one or two colours that exist only in anti-aliased edges and should be discarded. Remove the alpha before quantising on a transparent logo, otherwise the dominant colour comes back as the transparent region and you lose a slot to nothing.

What you are looking for in the output is the saturated outlier. A logo reduced to six colours typically gives you two or three neutrals, a mid tone, and one colour that is clearly more saturated than the rest. That is the accent. The darkest neutral is a candidate sky. There is usually no horizon in a logo at all, because logos do not have light sources, so that one you choose rather than extract.

Test against the formats, not against a swatch

A palette looks good in every colour picker ever made. The picker shows you four large rectangles of flat colour on a neutral background at a size none of them will ever appear at. The twenty formats a full pack covers do not look like that, and five of them in particular will reject a palette that looked fine ten minutes earlier.

The formats that reject a palette first, and what each one exposes
FormatSizeWhat it exposes
Twitch panel320x100The accent against a dark sidebar column, at a third the width of a phone screen
Discord profile picture300x300A circular crop seen at 40 pixels, where only the accent and its partner survive
Animated banner468x60The horizon band is the entire backdrop, so there is nothing dark to set type on
FiveM info banner1865x108The sky is invisible at that height and the palette collapses to two colours
Story or Reel1080x1920A vertical crop where the sky dominates and the horizon is a thin line
Store banner1920x500Store pages that may be light themed, where a palette with no dark value disappears

The 1865x108 strip is the one that catches most palettes, and the reason is structural rather than aesthetic. At 108 pixels of height the composition sits almost entirely within the horizon band of whatever backdrop it uses. The sky, which in a 1920x1080 scene is half the frame and sets the whole mood, contributes perhaps the top twelve pixels. So a palette whose character comes from a dramatic sky has no character at all in the format a browsing player sees first.

The fix is not to change the palette. It is to know which two of the four are carrying the strip, and to make sure those two separate from each other without help from the other two. If your accent only reads because it sits against a deep sky, it does not read in the server browser.

When the name already owns a colour

Some server names arrive with a colour attached and arguing with it is a losing position. A name containing a colour word obviously does. So does a name referencing something with a known palette: a team, a drink, a car marque, a real district. If your members already call it the green server, green is your accent, and the interesting decision is which green.

That decision has more room in it than people expect. Saturated greens have unusually high relative luminance, which is why a bright green accent overpowers everything else in a frame and why white text on it fails contrast while black text passes comfortably. Pull the hue towards teal and the luminance drops, the colour stops shouting, and it is still unambiguously the green server. The same trick works in the other direction for blues and purples, which are luminance-poor and often need a brighter tint derived for text use.

The one case worth resisting is a name that implies a colour nobody can build a scene from. Black, white and silver are not accents. A server called something monochrome still needs one saturated colour somewhere, and the honest answer is to pick a cold steel blue or a warm brass, use it sparingly, and let the name carry the monochrome claim. Pure greyscale branding reads as unfinished at small sizes because there is nothing for the eye to lock onto in a list.

Palettes that fight the game

GTA's own colour is desaturated olive greens, concrete greys and warm browns, with a sky that is either hazy blue or a very specific orange. Every screenshot your players post, every clip, every piece of content made on your server arrives wrapped in that palette. Some accents sit next to it and some argue with it, and which is which is not a matter of taste.

Warm accents in the amber to coral range disappear into it, which is comfortable for a watermark and useless for a server icon. Cyans, hot pinks and electric violets have no counterpart anywhere in the base game, so they separate instantly in a server list and look synthetic over gameplay. Olive, sage, mustard and dusty teal are the genuinely bad choices, because they are close enough to the game's own colour to look like a rendering artefact rather than a brand.

  • If the accent will spend most of its life in a server browser and a Discord sidebar, pick the one that fights the game. Separation is the job.
  • If it will spend most of its life as a watermark over clips, pick the one that sits with the game. Legibility without intrusion is the job.
  • If it has to do both, which is the normal case, pick the cold accent and derive a warmer, lower-saturation variant for the watermark only. Same hue family, same identity, different luminance.
  • Never pick anything in the olive to sage band. There is no context in which it reads as deliberate.

Keeping a palette when the staff want to change it

Six months in, somebody with Discord admin will change a role colour, somebody designing an event poster will use a slightly different pink because they only had the JPEG, and a new staff member will suggest the whole thing would look better in blue. None of this is malice and all of it is how identities rot. The defence is boring and it works: one file, in a place everybody can find, containing exactly the values and nothing else.

{
  "serverName": "VELORA",
  "tagline": "Roleplay",
  "textCase": "upper",
  "accent": "#ff4fd8",
  "accent2": "#7b2ff7",
  "sky": "#2a0b2e",
  "horizon": "#ff7a59"
}

Pin it in a staff channel. The point is not the format, it is that there is one authoritative answer to 'what pink is our pink' and it takes four seconds to find. Most drift happens because the answer was in a Discord message from eight months ago and copying a colour off a screenshot was faster than scrolling.

On the question of whether to ever change a palette: yes, but only alongside something else that is changing. A rebrand attached to a new map, a wipe or a relaunch reads as a new chapter. A palette change on a Tuesday for no stated reason reads as instability, and the members who liked the old one will say so for a month. If the current palette is merely unfashionable rather than broken, leave it. Recognition is worth more than fashion, and the twenty formats will outlast whichever accent is popular this year.

Read next

Closest to this one by subject.