Almost all components of banner blocks are lost when the banner is placed down, and later broken. This leads to behavior such as the banner not being able to stack with other similar banners when picked back up.
Steps to Reproduce:
Get the following item stack:
/give @p white_banner[minecraft:max_stack_size=99] 99
Place one banner down
Break it
→ ❌ The max_stack_size component is lost, and will not stack with the other banners it used to stack with.
Expected Results:
✔ - The banner would stack with the other items and keep it's components when placed.
Screenshots/Videos:
[media]Notes:
Related issues
relates to
Attachments
Comments

Code Analysis:
(Class: BannerBlockEntity / Method saveAdditional() & load() / Mappings: Mojang using MCPReborn)
Here, the only data which is saved, is "CustomName" and "patterns".
protected void saveAdditional(CompoundTag compoundTag, HolderLookup.Provider provider) {
super.saveAdditional(compoundTag, provider);
if (!this.patterns.equals(BannerPatternLayers.EMPTY)) {
compoundTag.put("patterns", Util.getOrThrow(BannerPatternLayers.CODEC.encodeStart(provider.createSerializationContext(NbtOps.INSTANCE), this.patterns), IllegalStateException::new));
}
if (this.name != null) {
compoundTag.putString("CustomName", Component.Serializer.toJson(this.name, provider));
}
}
public void load(CompoundTag compoundTag, HolderLookup.Provider provider) {
super.load(compoundTag, provider);
if (compoundTag.contains("CustomName", 8)) {
this.name = Component.Serializer.fromJson(compoundTag.getString("CustomName"), provider);
}
if (compoundTag.contains("patterns")) {
BannerPatternLayers.CODEC.parse(provider.createSerializationContext(NbtOps.INSTANCE), compoundTag.get("patterns")).resultOrPartial((p_329523_) -> {
LOGGER.error("Failed to parse banner patterns: '{}'", (Object)p_329523_);
}).ifPresent((p_330866_) -> {
this.patterns = p_330866_;
});
}
}
Thank you for your report!
After consideration, the issue is being closed as Invalid.
You have posted a feature request or a suggestion. This site is for bug reports only.
For suggestions, please visit The official Minecraft feedback site or visit the Minecraft Feedback Discord server.
Quick Links:
📓 Bug Tracker Guidelines – 💬 Community Support – 📧 Mojang Support (Technical Issues) – 📧 Microsoft Support (Account Issues)
📓 Project Summary – ✍️ Feedback and Suggestions – 📖 Game Wiki