Hopper

A hopper is a block that can be used to catch item entities, or to transfer items into and out of containers.

Breaking
To break a hopper, it with a pickaxe. Using any other item to break a hopper drops only the contents.

Entity loot
A hopper can also be obtained by destroying a minecart with hopper.

Crafting
A hopper can be crafted from 5 iron ingots and a chest.

Usage


A hopper can be used as a container, as a crafting ingredient, and as a redstone component.

A hopper has an "output" tube at its bottom that can face down or sideways and provides a visual indication of which block the hopper is set up to drop its items into, if that block has an inventory. To place a hopper, use the control while aiming at the surface to which its output should face (Hoppers do not orient themselves automatically). To place a hopper directly on the face of an already interactable block, the player can while placing the hopper. Attempting to place a hopper aimed on the bottom face of a block instead faces downward. With some blocks, such as the furnace and brewing stand, the hopper has multiple uses. A hopper does not change direction after placement, and it is not attached to the container it faces; the container can be removed or replaced, and the hopper remains unchanged.

Hoppers cannot be moved by pistons. Despite not being a solid block, attached blocks such as rails, levers, tripwire and redstone dust can be placed on top of hoppers, but not on their sides.

Container


A hopper can be used as a container and has 5 slots of inventory space.

To open the hopper GUI, use the control. To move items between the hopper inventory and the player inventory or hotbar while the hopper GUI is open, drag or shift-click the items. To exit the hopper GUI, use the key, B button or circle button, depending on the device.

By default, the GUI of a hopper is labeled "Item Hopper". A hopper's GUI label can be changed by naming the hopper in an anvil before placing it, or, $$, by using the data command (for example, to label a hopper at (0,64,0) "Steve's Hopper", use ).

$$, a hopper can be "locked" (or subsequently unlocked) by setting the hopper's  tag with the data command. If a hopper's  tag is not blank, the hopper cannot be accessed except by players holding an item with the same name as the   tag's text. For example, to lock a hopper at (0,64,0) so that only players holding an item named "Steve's Key" can access the hopper, use. Powering a hopper with redstone also locks it so that it will stop collecting/pushing/pulling items itself, but it will still receive items that get pushed into it and allow a hopper below it to pull items out. In any edition, hoppers can be chained to form “conveyors” which isn’t recommended because large amounts of hoppers cause lag.

Crafting ingredient
A hopper can be used to craft a minecart with hopper.

Redstone component


A hopper's behavior is the opposite of most redstone mechanisms as a redstone signal turns the hopper off rather than turning it on. Because of this reverse behavior, a hopper is actually turned off when it is activated (it receives a redstone signal). To avoid confusion over the terms activated and deactivated, powered hoppers are often described as being locked and unpowered hoppers described as being unlocked (as previously mentioned). Hoppers do not push/pull in the same redstone tick that they are unlocked; they have a 1 tick delay before continuing to push/pull items.

Hoppers can be powered by soft powered blocks, meaning a redstone dust trail pointing into a block touching the hopper locks it just as effectively as a redstone block or any other power component touching the hopper.

An unlocked hopper has three functions:
 * Collect item entities (free-floating items in the world) into its inventory from the space above it
 * Pull a single item into its inventory from a container above it
 * Push a single item from its own inventory into a container it faces

For run-time efficiency a hopper with a container above it, such as a furnace, chest, or another hopper, does not collect dropped items; the hopper's code doesn't check for floating items in such cases. Dropped items can still be collected from a hopper with a regular block above it, however. $$ items are gathered from the entire 1 block space above the hopper, meaning that items sitting on partial blocks such as soul sand directly above a hopper can be collected. $$ items are gathered from the lower 3/4 of the block space above the hopper, so items sitting on a lower slab or bed can be collected while items sitting on an enchanting table or horizontal grindstone cannot. (Moreover, soul sand is a full block in Bedrock Edition. ) It is also possible for a hopper to collect items from inside a full, solid block, a situation that might come from items rising up through solid blocks or being summoned. Item entities are not collected when they are outside of the collection area however; for example, items on top of a stone block directly above a hopper are not collected.

$$, if there is no container above the hopper, then the hopper collects dropped items in the order in which they landed on the hopper. This order is remembered even while a hopper is locked. For instance, if a hopper is locked under a carpet while a fully equipped armor stand is broken above it, then it always collects items in this order when it is unlocked: armor stand, boots, leggings, chestplates, helmets. This is due to the order in which these items land. $$, hoppers do not remember the order in which items land on the hopper. Instead, hoppers with multiple dropped items above them collect the items in the order in which they entered the chunk in which the hopper is located. Items that drop from a broken armor stand are collected in a random order.

Hoppers usually check for dropped items every game tick and they can collect items even before they are picked up by a player or destroyed by lava. However, $$ hoppers have a "collection cooldown" time. After collecting an item (or stack of items), a hopper waits 4 redstone ticks (0.4 seconds, barring lag) before attempting to collect again.

Hoppers also have a "transfer cooldown" time. After pulling and/or pushing items, a hopper waits 4 redstone ticks (0.4 seconds, barring lag) before pulling or pushing again (a transfer rate of 2.5 items per second, barring lag). A hopper that has an item pushed into it from another hopper also starts a 4 tick cooldown period, regardless of whether it pushed or pulled items itself. Item entities can be collected at any time without affecting the transfer cooldown time. The transfer cooldown and the Bedrock Edition collection cooldown are independent of each other.

Hoppers collect groups of items all at once rather than collecting them as single items one at a time. As a result, hoppers can collect item entities much faster than they can pull items from a container. Pulling from a moving minecart with chest or minecart with hopper is even slower, since the minecart is not always above the hopper.

Item pushes and pulls are processed in the same game tick, but pushes are processed before pulls. In the schematic, the empty hopper first pulls an item from chest A as it cannot push anything into chest B. After the cooldown, the hopper first pushes its item into chest B before pulling another item from chest A, both pushing and pulling in the same tick, and the process repeats. The hopper stops pulling when A is empty, and stops pushing when B becomes full.

A hopper always tries to push, pull, and collect items using the leftmost available slot. When a hopper is removing items from a chest, the items disappear from left to right. Similarly, when filling up a chest, the chest fills up from left to right. Hoppers prioritize pulling from the first slot of a container over pulling into the first hopper slot. If a hopper has stone in its first slot and nothing in its second while the container it is pulling from has chicken in its first slot but stone in the second, the hopper pulls the chicken from the first slot of the container into its empty second slot. However, if the hopper is unable to pull the chicken, such as if all slots are filled with stone, the hopper pulls the stone from the second slot of the container instead. Similarly, hoppers prioritize pushing from their first slot over pushing into the first slot of a container. If a hopper has stone in its first slot and chicken in its second while the container it is pushing to has chicken it its first slot but stone in the second, the hopper pushes stone from its first slot into the second slot of the container.

Some containers interact with hoppers in specific ways:


 * Hoppers above composters can push compostable items into the composter's top face with a chance of increasing the level of the composter as if the player used the item on the composter. Items that are not compostable cannot be pushed into the composter. Hoppers below the composter can pull bone meal when the composter is in stage 8, emptying the composter and resetting it to stage 0. Hoppers to the side of a composter do not interact with it.
 * Hoppers above composters can push compostable items into the composter's top face with a chance of increasing the level of the composter as if the player used the item on the composter. Items that are not compostable cannot be pushed into the composter. Hoppers below the composter can pull bone meal when the composter is in stage 8, emptying the composter and resetting it to stage 0. Hoppers to the side of a composter do not interact with it.


 * A working hopper on the top face of a brewing stand deposits only into the ingredient slot and it can push only valid brewing ingredients. A hopper on side face of a brewing stand can deposit only blaze powder or filled bottles into the three brew slots. A hopper underneath a brewing stand always extracts from the three brew slots, whether brewing is finished or not&mdash;The hopper must be locked to allow potions to finish brewing.
 * A working hopper on the top face of a brewing stand deposits only into the ingredient slot and it can push only valid brewing ingredients. A hopper on side face of a brewing stand can deposit only blaze powder or filled bottles into the three brew slots. A hopper underneath a brewing stand always extracts from the three brew slots, whether brewing is finished or not&mdash;The hopper must be locked to allow potions to finish brewing.


 * Large chests and large trapped chests are treated as a single container: A hopper depositing into a large chest fills up the entire chest and a hopper underneath a large chest empties the entire chest. Trapped chests being accessed by a player lock any adjacent hoppers, per the standard behavior of a hopper next to an active power source.
 * Large chests and large trapped chests are treated as a single container: A hopper depositing into a large chest fills up the entire chest and a hopper underneath a large chest empties the entire chest. Trapped chests being accessed by a player lock any adjacent hoppers, per the standard behavior of a hopper next to an active power source.
 * Large chests and large trapped chests are treated as a single container: A hopper depositing into a large chest fills up the entire chest and a hopper underneath a large chest empties the entire chest. Trapped chests being accessed by a player lock any adjacent hoppers, per the standard behavior of a hopper next to an active power source.


 * A working hopper pointing into top of a furnace deposits only into the ingredient slot. It can push any item, including items that can't be smelted by the furnace. A hopper pointing into the side of a furnace deposits into the fuel slot, and only items that are usable as fuel. A hopper below a furnace pulls everything from the output slot and empty buckets from the fuel slot left over from using lava buckets as fuel. When a hopper removes items from a furnace, the experience points are 'stored' in the furnace until a player removes at least one smelted item, or the furnace block is broken.
 * A working hopper pointing into top of a furnace deposits only into the ingredient slot. It can push any item, including items that can't be smelted by the furnace. A hopper pointing into the side of a furnace deposits into the fuel slot, and only items that are usable as fuel. A hopper below a furnace pulls everything from the output slot and empty buckets from the fuel slot left over from using lava buckets as fuel. When a hopper removes items from a furnace, the experience points are 'stored' in the furnace until a player removes at least one smelted item, or the furnace block is broken.
 * A working hopper pointing into top of a furnace deposits only into the ingredient slot. It can push any item, including items that can't be smelted by the furnace. A hopper pointing into the side of a furnace deposits into the fuel slot, and only items that are usable as fuel. A hopper below a furnace pulls everything from the output slot and empty buckets from the fuel slot left over from using lava buckets as fuel. When a hopper removes items from a furnace, the experience points are 'stored' in the furnace until a player removes at least one smelted item, or the furnace block is broken.
 * A working hopper pointing into top of a furnace deposits only into the ingredient slot. It can push any item, including items that can't be smelted by the furnace. A hopper pointing into the side of a furnace deposits into the fuel slot, and only items that are usable as fuel. A hopper below a furnace pulls everything from the output slot and empty buckets from the fuel slot left over from using lava buckets as fuel. When a hopper removes items from a furnace, the experience points are 'stored' in the furnace until a player removes at least one smelted item, or the furnace block is broken.


 * Hopper
 * A sequence of three or more hoppers, each pushing items into the next, is called a hopper pipe. Working horizontal hopper pipes simply push items into each other at the expected rate of 2.5 items per second, but vertical hopper pipes are more complicated, as the hoppers are trying both to pull and to push. When a vertical pipe pulls from a single container, it simply transfers items at 2.5 items per second because the transfer rate is limited by the first hopper pulling items from the container. If a stack of items is in a vertical pipe, the items can be transferred twice as fast, because the hopper with the item stack is pushing items down while the hopper below it is also pulling items down.
 * A redstone comparator measuring the fullness of a hopper in a hopper pipe usually reads a continuous stream of items instead of blinking on and off as each item passes, but because pulls and pushes both occur in the same game tick, certain hoppers in a vertical hopper pipe may never power comparators even with a continuous stream of items: Their items get pulled out a single game tick after they're pushed in, which isn't measurable by a comparator&mdash;$$, comparators need measurements of at least 1.5 redstone ticks to produce a reading.


 * Unlocked hoppers fill chest minecarts and hopper minecarts if any part of the entity's hitbox is within the hopper's target block-space. Hopper minecarts try to pull items from the hopper at high speed. Hoppers can pull items from minecarts above them so rails can be placed directly on the top faces of a hoppers. If a detector rail is in the right position, it could lock the hopper per standard redstone-hopper behavior.
 * Unlocked hoppers fill chest minecarts and hopper minecarts if any part of the entity's hitbox is within the hopper's target block-space. Hopper minecarts try to pull items from the hopper at high speed. Hoppers can pull items from minecarts above them so rails can be placed directly on the top faces of a hoppers. If a detector rail is in the right position, it could lock the hopper per standard redstone-hopper behavior.
 * Unlocked hoppers fill chest minecarts and hopper minecarts if any part of the entity's hitbox is within the hopper's target block-space. Hopper minecarts try to pull items from the hopper at high speed. Hoppers can pull items from minecarts above them so rails can be placed directly on the top faces of a hoppers. If a detector rail is in the right position, it could lock the hopper per standard redstone-hopper behavior.


 * $$, discs play instantly when inserted.
 * $$, discs play instantly when inserted.


 * Hoppers cannot put shulker boxes into other shulker boxes. This allows for the creation of certain item filters.
 * Otherwise, hoppers interact with shulker boxes normally.
 * Otherwise, hoppers interact with shulker boxes normally.


 * Hoppers cannot remove or place books on lecterns. The redstone pulse emitted from a lectern when a page is turned can temporarily lock hoppers.
 * Hoppers cannot remove or place books on lecterns. The redstone pulse emitted from a lectern when a page is turned can temporarily lock hoppers.


 * Hoppers cannot interact with ender chests in any way.
 * Hoppers cannot interact with ender chests in any way.


 * Hoppers interact normally with Barrels, Dispensers and Droppers.
 * Hoppers interact normally with Barrels, Dispensers and Droppers.
 * Hoppers interact normally with Barrels, Dispensers and Droppers.
 * Hoppers interact normally with Barrels, Dispensers and Droppers.

Locking Hoppers
A hopper being powered is disabled or "locked": does not collect, pull or push items, but may receive items from dispensers, droppers and other hoppers, and may have its items removed by another hopper beneath it. To stop item transfer in a horizontal hopper pipe, only one hopper must be disabled, but to stop item transfer in a vertical hopper pipe, it is necessary to disable two hoppers in a row, because if a single hopper is disabled, the hopper above can still push items into it and the hopper below can still pull items from it.

Lag Reduction
A hopper that has open air, a non-solid block, or even a full solid block above it checks for item entities to collect multiple times per second. While for small number of hoppers the effect may not be noticed, long horizontal hopper chains used for transport or found in large storage systems tend to visibly impact the game's performance. Covering these hopper chains with containers is a frequently used solution to reduce lag because the hoppers switch from checking for entities at high frequency to checking the container outputs at a comparatively low frequency, while they push and pull items same as before.

Every container except for double chests (1 double chest over every 2 hoppers) offers a performance improvement over solid blocks. Based on tests made in Java Edition 1.14 and 1.15, the containers that offer the most improvement are composters, which perform about as well as or slightly better than droppers, which are slightly better than furnaces.

ID




Metadata
$$, a hopper uses its block data to specify its orientation and activation status.

Block data
A hopper has a block entity associated with it that holds additional data about the block.




 * See Bedrock Edition level format/Block entity format.
 * See Bedrock Edition level format/Block entity format.

Trivia

 * A real-life hopper is a large, pyramidal or cone shaped container used in industrial processes to hold particulate matter, like dust, gravel, nuts, seeds etc. and can then dispense them from the bottom
 * A Hopper can transfer 9000 items/hour or 150 items/minute.