Minecraft banner letters
The full alphabet as loom recipes. Every letter uses stripes, corners, halves and diagonals only, so it needs dye and nothing else, and every one fits in the six-layer survival limit.
Want a different colour, or to add a border?Click "Recolour" under any letter to open it in the Banner Generator with the layers already stacked.How the recipes work
Start with a banner in your background colour. At the loom, apply the layers in the order listed, top to bottom, each with the dye shown. A few letters use a layer in the background colour to erase part of an earlier layer; those are marked. Shown here as black on white. Swap the two dyes for the reverse, or pick any pair in the generator.
A
4 layers- Top stripeblack dye
- Left stripeblack dye
- Right stripeblack dye
- Middle stripe (horizontal)black dye
Open at the bottom. Four dyes, no special items.
/give command (Java 1.20.5+)
/give @p minecraft:white_banner[banner_patterns=[{pattern:"minecraft:stripe_top",color:"black"},{pattern:"minecraft:stripe_left",color:"black"},{pattern:"minecraft:stripe_right",color:"black"},{pattern:"minecraft:stripe_middle",color:"black"}]]B
6 layers- Left stripeblack dye
- Top stripeblack dye
- Middle stripe (horizontal)black dye
- Bottom stripeblack dye
- Right stripeblack dye
- Top right cornerwhite dye (erase)
A box with a middle bar, then the top-right corner knocked off so it reads as B rather than 8.
/give command (Java 1.20.5+)
/give @p minecraft:white_banner[banner_patterns=[{pattern:"minecraft:stripe_left",color:"black"},{pattern:"minecraft:stripe_top",color:"black"},{pattern:"minecraft:stripe_middle",color:"black"},{pattern:"minecraft:stripe_bottom",color:"black"},{pattern:"minecraft:stripe_right",color:"black"},{pattern:"minecraft:square_top_right",color:"white"}]]C
3 layers- Top stripeblack dye
- Left stripeblack dye
- Bottom stripeblack dye
Three stripes.
/give command (Java 1.20.5+)
/give @p minecraft:white_banner[banner_patterns=[{pattern:"minecraft:stripe_top",color:"black"},{pattern:"minecraft:stripe_left",color:"black"},{pattern:"minecraft:stripe_bottom",color:"black"}]]D
6 layers- Left stripeblack dye
- Top stripeblack dye
- Bottom stripeblack dye
- Right stripeblack dye
- Top right cornerwhite dye (erase)
- Bottom right cornerwhite dye (erase)
A box with both right corners knocked off.
/give command (Java 1.20.5+)
/give @p minecraft:white_banner[banner_patterns=[{pattern:"minecraft:stripe_left",color:"black"},{pattern:"minecraft:stripe_top",color:"black"},{pattern:"minecraft:stripe_bottom",color:"black"},{pattern:"minecraft:stripe_right",color:"black"},{pattern:"minecraft:square_top_right",color:"white"},{pattern:"minecraft:square_bottom_right",color:"white"}]]E
4 layers- Left stripeblack dye
- Top stripeblack dye
- Middle stripe (horizontal)black dye
- Bottom stripeblack dye
Four stripes.
/give command (Java 1.20.5+)
/give @p minecraft:white_banner[banner_patterns=[{pattern:"minecraft:stripe_left",color:"black"},{pattern:"minecraft:stripe_top",color:"black"},{pattern:"minecraft:stripe_middle",color:"black"},{pattern:"minecraft:stripe_bottom",color:"black"}]]F
3 layers- Left stripeblack dye
- Top stripeblack dye
- Middle stripe (horizontal)black dye
E without the bottom stripe.
/give command (Java 1.20.5+)
/give @p minecraft:white_banner[banner_patterns=[{pattern:"minecraft:stripe_left",color:"black"},{pattern:"minecraft:stripe_top",color:"black"},{pattern:"minecraft:stripe_middle",color:"black"}]]G
5 layers- Right stripeblack dye
- Horizontal half (top)white dye (erase)
- Top stripeblack dye
- Left stripeblack dye
- Bottom stripeblack dye
Right stripe, erase the top half, then top, left and bottom stripes: a C with a lower-right upright.
/give command (Java 1.20.5+)
/give @p minecraft:white_banner[banner_patterns=[{pattern:"minecraft:stripe_right",color:"black"},{pattern:"minecraft:half_horizontal",color:"white"},{pattern:"minecraft:stripe_top",color:"black"},{pattern:"minecraft:stripe_left",color:"black"},{pattern:"minecraft:stripe_bottom",color:"black"}]]H
3 layers- Left stripeblack dye
- Right stripeblack dye
- Middle stripe (horizontal)black dye
Three stripes.
/give command (Java 1.20.5+)
/give @p minecraft:white_banner[banner_patterns=[{pattern:"minecraft:stripe_left",color:"black"},{pattern:"minecraft:stripe_right",color:"black"},{pattern:"minecraft:stripe_middle",color:"black"}]]I
3 layers- Top stripeblack dye
- Center stripe (vertical)black dye
- Bottom stripeblack dye
Serif I: top, centre, bottom.
/give command (Java 1.20.5+)
/give @p minecraft:white_banner[banner_patterns=[{pattern:"minecraft:stripe_top",color:"black"},{pattern:"minecraft:stripe_center",color:"black"},{pattern:"minecraft:stripe_bottom",color:"black"}]]J
3 layers- Right stripeblack dye
- Bottom stripeblack dye
- Bottom left cornerblack dye
Right stripe, bottom stripe and a bottom-left block for the hook.
/give command (Java 1.20.5+)
/give @p minecraft:white_banner[banner_patterns=[{pattern:"minecraft:stripe_right",color:"black"},{pattern:"minecraft:stripe_bottom",color:"black"},{pattern:"minecraft:square_bottom_left",color:"black"}]]K
2 layers- Left stripeblack dye
- Diagonal crossblack dye
Left stripe over a diagonal cross. Two dyes.
/give command (Java 1.20.5+)
/give @p minecraft:white_banner[banner_patterns=[{pattern:"minecraft:stripe_left",color:"black"},{pattern:"minecraft:cross",color:"black"}]]L
2 layers- Left stripeblack dye
- Bottom stripeblack dye
Two stripes.
/give command (Java 1.20.5+)
/give @p minecraft:white_banner[banner_patterns=[{pattern:"minecraft:stripe_left",color:"black"},{pattern:"minecraft:stripe_bottom",color:"black"}]]M
3 layers- Left stripeblack dye
- Right stripeblack dye
- Top triangleblack dye
Two stripes and the top triangle for the V in the middle.
/give command (Java 1.20.5+)
/give @p minecraft:white_banner[banner_patterns=[{pattern:"minecraft:stripe_left",color:"black"},{pattern:"minecraft:stripe_right",color:"black"},{pattern:"minecraft:triangle_top",color:"black"}]]N
3 layers- Left stripeblack dye
- Right stripeblack dye
- Down right stripeblack dye
Two stripes and the down-right diagonal.
/give command (Java 1.20.5+)
/give @p minecraft:white_banner[banner_patterns=[{pattern:"minecraft:stripe_left",color:"black"},{pattern:"minecraft:stripe_right",color:"black"},{pattern:"minecraft:stripe_downright",color:"black"}]]O
4 layers- Left stripeblack dye
- Right stripeblack dye
- Top stripeblack dye
- Bottom stripeblack dye
A box.
/give command (Java 1.20.5+)
/give @p minecraft:white_banner[banner_patterns=[{pattern:"minecraft:stripe_left",color:"black"},{pattern:"minecraft:stripe_right",color:"black"},{pattern:"minecraft:stripe_top",color:"black"},{pattern:"minecraft:stripe_bottom",color:"black"}]]P
5 layers- Top stripeblack dye
- Right stripeblack dye
- Horizontal half (bottom)white dye (erase)
- Left stripeblack dye
- Middle stripe (horizontal)black dye
Top and right stripes, erase the bottom half, then the left stripe and middle bar.
/give command (Java 1.20.5+)
/give @p minecraft:white_banner[banner_patterns=[{pattern:"minecraft:stripe_top",color:"black"},{pattern:"minecraft:stripe_right",color:"black"},{pattern:"minecraft:half_horizontal_bottom",color:"white"},{pattern:"minecraft:stripe_left",color:"black"},{pattern:"minecraft:stripe_middle",color:"black"}]]Q
6 layers- Left stripeblack dye
- Right stripeblack dye
- Top stripeblack dye
- Bottom stripeblack dye
- Bottom right cornerblack dye
- Down right stripeblack dye
O with a diagonal through it. The closest a loom gets to a tail.
/give command (Java 1.20.5+)
/give @p minecraft:white_banner[banner_patterns=[{pattern:"minecraft:stripe_left",color:"black"},{pattern:"minecraft:stripe_right",color:"black"},{pattern:"minecraft:stripe_top",color:"black"},{pattern:"minecraft:stripe_bottom",color:"black"},{pattern:"minecraft:square_bottom_right",color:"black"},{pattern:"minecraft:stripe_downright",color:"black"}]]R
6 layers- Top stripeblack dye
- Right stripeblack dye
- Horizontal half (bottom)white dye (erase)
- Left stripeblack dye
- Middle stripe (horizontal)black dye
- Bottom right cornerblack dye
P with a bottom-right block for the leg.
/give command (Java 1.20.5+)
/give @p minecraft:white_banner[banner_patterns=[{pattern:"minecraft:stripe_top",color:"black"},{pattern:"minecraft:stripe_right",color:"black"},{pattern:"minecraft:half_horizontal_bottom",color:"white"},{pattern:"minecraft:stripe_left",color:"black"},{pattern:"minecraft:stripe_middle",color:"black"},{pattern:"minecraft:square_bottom_right",color:"black"}]]S
3 layers- Top stripeblack dye
- Down right stripeblack dye
- Bottom stripeblack dye
A mirrored Z. Reads as S at banner scale.
/give command (Java 1.20.5+)
/give @p minecraft:white_banner[banner_patterns=[{pattern:"minecraft:stripe_top",color:"black"},{pattern:"minecraft:stripe_downright",color:"black"},{pattern:"minecraft:stripe_bottom",color:"black"}]]T
2 layers- Top stripeblack dye
- Center stripe (vertical)black dye
Two stripes.
/give command (Java 1.20.5+)
/give @p minecraft:white_banner[banner_patterns=[{pattern:"minecraft:stripe_top",color:"black"},{pattern:"minecraft:stripe_center",color:"black"}]]U
3 layers- Left stripeblack dye
- Right stripeblack dye
- Bottom stripeblack dye
Three stripes.
/give command (Java 1.20.5+)
/give @p minecraft:white_banner[banner_patterns=[{pattern:"minecraft:stripe_left",color:"black"},{pattern:"minecraft:stripe_right",color:"black"},{pattern:"minecraft:stripe_bottom",color:"black"}]]V
3 layers- Down right stripeblack dye
- Down left stripeblack dye
- Horizontal half (top)white dye (erase)
A diagonal cross with the top half erased.
/give command (Java 1.20.5+)
/give @p minecraft:white_banner[banner_patterns=[{pattern:"minecraft:stripe_downright",color:"black"},{pattern:"minecraft:stripe_downleft",color:"black"},{pattern:"minecraft:half_horizontal",color:"white"}]]W
3 layers- Left stripeblack dye
- Right stripeblack dye
- Bottom triangleblack dye
M upside down: two stripes and the bottom triangle.
/give command (Java 1.20.5+)
/give @p minecraft:white_banner[banner_patterns=[{pattern:"minecraft:stripe_left",color:"black"},{pattern:"minecraft:stripe_right",color:"black"},{pattern:"minecraft:triangle_bottom",color:"black"}]]X
1 layer- Diagonal crossblack dye
One pattern.
/give command (Java 1.20.5+)
/give @p minecraft:white_banner[banner_patterns=[{pattern:"minecraft:cross",color:"black"}]]Y
2 layers- Center stripe (vertical)black dye
- Top triangleblack dye
Centre stripe with the top triangle as the fork.
/give command (Java 1.20.5+)
/give @p minecraft:white_banner[banner_patterns=[{pattern:"minecraft:stripe_center",color:"black"},{pattern:"minecraft:triangle_top",color:"black"}]]Z
3 layers- Top stripeblack dye
- Down left stripeblack dye
- Bottom stripeblack dye
Top stripe, down-left diagonal, bottom stripe.
/give command (Java 1.20.5+)
/give @p minecraft:white_banner[banner_patterns=[{pattern:"minecraft:stripe_top",color:"black"},{pattern:"minecraft:stripe_downleft",color:"black"},{pattern:"minecraft:stripe_bottom",color:"black"}]]Spelling words
One letter per banner, hung side by side. Keep the same background and letter colour across the word, and leave a one-block gap between banners on a wall so the shading doesn't merge. For a sign that reads from a distance, use a dark letter on a light base; white on black looks sharper up close but disappears at night without lighting.
Why some letters are approximate
The loom only has straight stripes, halves, corners, two diagonals, two triangles, a circle and a lozenge. There is no curve, so B, D, G, P, R and S are built from squares and diagonals and read correctly at banner size rather than in close-up. Q is an O with a diagonal because there is no way to draw a tail. If you want a cleaner Q, put the letter on a shield or a map art instead.
Bedrock
The loom recipes work everywhere. The /give commands are Java only; Bedrock can't give a banner with patterns by command.
Try it: Banner Generator →All 43 patterns, loom recipe and /give in both formats.