Banner Maker
Design custom banners with all Minecraft patterns. Drag layers to reorder. Get crafting recipes and /give commands.
Commands
Bedrock's /give takes <item> [amount] [data] [components], and its components argument accepts only can_place_on, can_destroy, item_lock and keep_on_death. There is no argument for banner patterns, so this command can only hand you the blank base banner — build the layers above on a loom.
Banner patterns: the full reference
A banner is two separate things stacked together. The base colour is baked into the item itself — there are sixteen distinct items, from white_banner to black_banner, and nothing you do at a loom changes which one you are holding. Everything drawn on top is a pattern layer: a shape plus a dye colour, stored as a list on the item. Understanding that split explains most of what confuses people about banners, including why you cannot recolour a finished banner and why the base colour never appears in a pattern list.
The loom, and the six-layer ceiling
Since Java Edition 1.14 the loom is where patterns are applied. It takes the banner, one dye, and optionally a Banner Pattern item, and it consumes one dye per layer. A loom will apply at most six layers; the seventh is refused. Commands and external editors are not bound by that limit — a banner obtained through /give can carry more than six layers, and the game will draw up to sixteen of them before it stops rendering the rest.
Layers are drawn in list order, each one painted over everything below it. Two banners with the same layers in a different order are different banners, and there is no way to reorder layers in-game short of starting again. That is the reason this tool lets you drag layers around before you commit to the dye cost.
Which patterns need a Banner Pattern item
Most patterns need nothing but a dye. Ten of them are gated behind a Banner Pattern item, which is placed in the loom's third slot and is not consumed. Two of those ten were free until recently: Field Masoned (bricks) and Bordure Indented (the curly border) were removed from the loom's no-item list in Java Edition 1.21.2, so guides written before that release will tell you they cost only a dye. They no longer do.
- Field Masoned and Bordure Indented — crafted from paper with bricks and vines respectively
- Flower Charge — paper and an oxeye daisy
- Creeper Charge — paper and a creeper head
- Skull Charge — paper and a wither skeleton skull
- Thing — paper and an enchanted golden apple; this is the old Mojang Studios logo
- Globe — bought from a cartographer villager for 8 emeralds
- Snout — found in bastion remnant chests
- Flow and Guster — trial chamber vault loot
Every pattern, with both sets of identifiers
Java Edition dropped the short codes in 1.20.5. Bedrock Edition still uses them, and so does any Java world running 1.20.4 or earlier, which is why both columns matter. The heraldic name in the first column is what the game shows on the item tooltip.
| In-game name | Java resource name | Code | What it draws |
|---|---|---|---|
| Fully coloured field | base | b | The whole field |
| Base | stripe_bottom | bs | Bottom third coloured |
| Chief | stripe_top | ts | Top third coloured |
| Pale Dexter | stripe_left | ls | Left third coloured |
| Pale Sinister | stripe_right | rs | Right third coloured |
| Pale | stripe_center | cs | Centre vertical line |
| Fess | stripe_middle | ms | Centre horizontal line |
| Bend | stripe_downright | drs | Line, upper-left to lower-right |
| Bend Sinister | stripe_downleft | dls | Line, upper-right to lower-left |
| Paly | small_stripes | ss | Vertical pinstripes |
| Saltire | cross | cr | An X shape |
| Cross | straight_cross | sc | An upright cross |
| Per Bend Sinister | diagonal_left | ld | Split diagonally, upper-left half |
| Per Bend | diagonal_right | rud | Split diagonally, upper-right half |
| Per Bend Inverted | diagonal_up_left | lud | Split diagonally, lower-left half |
| Per Bend Sinister Inverted | diagonal_up_right | rd | Split diagonally, lower-right half |
| Per Pale | half_vertical | vh | Split vertically, left half |
| Per Pale Inverted | half_vertical_right | vhr | Split vertically, right half |
| Per Fess | half_horizontal | hh | Split horizontally, top half |
| Per Fess Inverted | half_horizontal_bottom | hhb | Split horizontally, bottom half |
| Base Dexter Canton | square_bottom_left | bl | Square in lower-left corner |
| Base Sinister Canton | square_bottom_right | br | Square in lower-right corner |
| Chief Dexter Canton | square_top_left | tl | Square in upper-left corner |
| Chief Sinister Canton | square_top_right | tr | Square in upper-right corner |
| Chevron | triangle_bottom | bt | Triangle at the bottom |
| Inverted Chevron | triangle_top | tt | Triangle at the top |
| Base Indented | triangles_bottom | bts | Scallop shapes at the bottom |
| Chief Indented | triangles_top | tts | Scallop shapes at the top |
| Roundel | circle | mc | Circle in the centre |
| Lozenge | rhombus | mr | Rhombus in the centre |
| Bordure | border | bo | Plain border |
| Gradient | gradient | gra | Colour at the top, fading down |
| Base Gradient | gradient_up | gru | Colour at the bottom, fading up |
| Bordure Indented | curly_border | cbo | Fancy border — needs a pattern item |
| Field Masoned | bricks | bri | Brick pattern — needs a pattern item |
| Flower Charge | flower | flo | Flower icon — needs a pattern item |
| Creeper Charge | creeper | cre | Creeper face — needs a pattern item |
| Skull Charge | skull | sku | Skull and crossbones — needs a pattern item |
| Thing | mojang | moj | Former Mojang Studios logo — needs a pattern item |
| Globe | globe | glb | Cube-shaped earth — needs a pattern item |
| Snout | piglin | pig | Piglin snout — needs a pattern item |
| Flow | flow | flw | Spiral shape — needs a pattern item |
| Guster | guster | gus | Breeze body — needs a pattern item |
mc is the Roundel — a plain circle. It is not the Mojang pattern, which is moj. The two are confused often enough that copied-and-pasted commands regularly put a circle where somebody wanted a logo.
The 1.20.5 command break
Java Edition 1.20.5 replaced item NBT with item components, and banner commands were among the casualties. The old form put a BlockEntityTag compound in braces after the item id and identified patterns by short code and colour number. The new form puts a banner_patterns component in square brackets and identifies patterns by resource name and colour name.
A 1.20.4 command pasted into a current server does not silently degrade — it fails to parse. This tool emits both forms so you can take whichever one your server understands. The same banner_patterns component also works on shields; a shield without an explicit base_color component is treated as white.
Bedrock numbers run backwards
Bedrock Edition still addresses banners by numeric data value, and its numbering is the exact reverse of the order Java uses for dyes. In Java, 0 is white and 15 is black. In Bedrock, 0 is black and 15 is white, with every colour between mirrored the same way — so the Bedrock data value is 15 minus the Java number. Getting this backwards is a quiet failure: the command succeeds and hands you a perfectly good banner in completely the wrong colour.
Bedrock's /give also has no way to express pattern layers. Its signature is /give <player> <item> [amount] [data] [components], and the components argument understands only can_place_on, can_destroy, item_lock and keep_on_death. On Bedrock, the loom is the only route to a patterned banner.
Things that catch people out
Why does my banner look nothing like the preview?
Almost always layer order. The preview here draws layers bottom-to-top exactly as the game does, so if the shapes are right but the wrong one is on top, drag the layer list rather than re-dyeing anything.
Can I copy a banner design?
Yes. Put a patterned banner and a blank banner of the same base colour in a crafting grid and you get a duplicate, with the original returned. This costs no dye and is far cheaper than repeating six loom operations.
Can I get the pattern off a banner?
Using a banner on a cauldron containing water removes the topmost layer, one use at a time. There is no way to remove a layer from the middle.
Why is the preview not pixel-identical to the game?
The shapes here are vector approximations of the game's pixel textures, drawn to read clearly at preview size. They show which pattern you have selected and how the layers stack; they are not a substitute for the texture itself. The six detailed charge patterns — skull, flower, thing, snout, flow and guster — are omitted from the picker for that reason, though their identifiers are listed in the table above.
Sources
- Minecraft Wiki: Banner/Patterns — the code, resource name and in-game name for every pattern
- Minecraft Wiki: Banner pattern tag (Java Edition) — which patterns the loom allows without an item, and the 1.21.2 change
- Minecraft Wiki: Banner — layer limits, duplication, cauldron washing, Bedrock data values
- Minecraft Wiki: Banner Pattern — how each pattern item is obtained
- Minecraft Wiki: /give — the command signature in both editions
How Minecraft banner layering works
A loom will apply up to 6 pattern layers to a banner. The base colour is not one of them — it belongs to the banner item, which is why there are sixteen separate banner items rather than one banner with a colour field.
Rendering is a painter's algorithm: each pattern is drawn over everything already on the banner, in list order. Patterns later in the list appear on top. Reordering the same set of layers produces a genuinely different banner.
Commands are not held to the loom's limit. A banner given through /give can carry more than six layers, and the game draws up to sixteen before it stops rendering the remainder.
How the layers are stored, before and after 1.20.5
Java Edition 1.20.5 replaced item NBT with item components. Banners changed shape along with everything else, and the two forms are not interchangeable.
Java Edition 1.13 to 1.20.4 stored the layers as an NBT list, keyed by short code and colour number:
/give @p white_banner{BlockEntityTag:{Patterns:[
{Pattern:"mc",Color:15},
{Pattern:"cr",Color:14}
]}}
Java Edition 1.20.5 and later use the banner_patterns component, keyed by resource name and colour name:
/give @p white_banner[banner_patterns=[
{pattern:"minecraft:circle",color:"black"},
{pattern:"minecraft:cross",color:"red"}
]]
Each entry carries exactly two things — which shape, and what colour to draw it in. The base colour is not in the list; it is the item id itself.
Dye colour numbers (Java)
The pre-1.20.5 format identifies a colour by number. These are the standard Java dye ids, and the same numbers are used for dyed leather, collars, beacon beams and firework stars:
0 = White 8 = Light Gray
1 = Orange 9 = Cyan
2 = Magenta 10 = Purple
3 = Light Blue 11 = Blue
4 = Yellow 12 = Brown
5 = Lime 13 = Green
6 = Pink 14 = Red
7 = Gray 15 = Black
Bedrock Edition numbers banner items in the opposite direction, 0 for black through 15 for white. The two systems collide constantly in copied commands.
The colours in this tool
The sixteen swatches above are the dye colour codes the game uses to tint banner layers — white is #F9FFFE, red is #B02E26, black is #1D1D21. These are not the sixteen chat colours behind the § codes, which are a different and much more saturated palette. If you are picking a colour to match text, use the colour codes reference rather than this page.
The loom
Since Java Edition 1.14 the loom applies patterns; before that, patterns were crafted in a crafting table with the banner and dye laid out in the shape of the pattern. The loom takes:
- 1 banner, which is consumed and returned with the new layer
- 1 dye per layer, consumed
- optionally 1 Banner Pattern item, which is not consumed
Ten patterns require the pattern item. Two of them — Field Masoned and Bordure Indented — only started requiring one in Java Edition 1.21.2.