Updated:

Banner basics (Java 1.20.5+)

/give @p white_banner[banner_patterns=[{pattern:"stripe_bottom",color:"red"},{pattern:"creeper",color:"black"}]] 1

The base color comes from the item ID (white_banner, red_banner and so on). Patterns stack in order, so later ones appear in front.

Common pattern IDs

PatternID
Base stripestripe_bottom
Chief stripestripe_top
Pale (vertical center)stripe_center
Fess (horizontal center)stripe_middle
Crossstraight_cross
Saltire (diagonal cross)cross
Borderborder
Roundelcircle
Lozengerhombus
Gradientgradient
Creepercreeper
Skullskull
Flowerflower
Thing (Mojang logo)mojang
Globeglobe
Snoutpiglin
Flow, Guster (1.21)flow, guster

Colors

white, orange, magenta, light_blue, yellow, lime, pink, gray, light_gray, cyan, purple, blue, brown, green, red, black.

Shields

/give @p shield[base_color="blue",banner_patterns=[{pattern:"border",color:"yellow"},{pattern:"cross",color:"white"}]] 1

A shield has only one ID, so its base color is set with base_color.

Design tips

Older Java and Bedrock

Java 1.20.4 and earlier used short codes and numbers, such as {BlockEntityTag:{Patterns:[{Pattern:"bs",Color:14}]}}. Rewrite old commands in the current form. Bedrock /give cannot set patterns; use a loom.

Common questions

Check your command

The Command Error Doctor checks common syntax mistakes in your browser.