Updated:
A standard potion by version
| Version | Swiftness II |
|---|---|
| Java 1.20.5+ | /give @p minecraft:potion[potion_contents={potion:"minecraft:strong_swiftness"}] |
| Java 1.20.4 and earlier | /give @p minecraft:potion{Potion:"minecraft:strong_swiftness"} |
| Bedrock | /give @p potion 1 16 |
Java 1.20.5 replaced item NBT in { } with components in [ ]. Using the other version's format gives an error or a water bottle.
Potion IDs (Java)
These are the brewable potions. Add long_ for the extended version and strong_ for level II.
| Potion | ID | Variants |
|---|---|---|
| Swiftness | swiftness | long_ / strong_ |
| Healing | healing | strong_ |
| Regeneration | regeneration | long_ / strong_ |
| Strength | strength | long_ / strong_ |
| Fire Resistance | fire_resistance | long_ |
| Night Vision | night_vision | long_ |
| Invisibility | invisibility | long_ |
| Water Breathing | water_breathing | long_ |
| Leaping | leaping | long_ / strong_ |
| Slow Falling | slow_falling | long_ |
| Turtle Master | turtle_master | long_ / strong_ |
Java 1.21 added wind_charged, weaving, oozing and infested.
Custom effects, level and duration
/give @p minecraft:potion[potion_contents={custom_color:16711680,custom_effects:[{id:"minecraft:speed",amplifier:4,duration:6000},{id:"minecraft:night_vision",amplifier:0,duration:6000}]}]
| Field | Meaning |
|---|---|
id | The effect ID, such as speed, not the potion name |
amplifier | Level counted from 0: 0 is I, 4 is V |
duration | Ticks; 20 ticks is one second, so 6000 is five minutes |
custom_color | Liquid color as a decimal RGB value; 16711680 is red |
On 1.20.2–1.20.4 the list is called custom_potion_effects:
/give @p minecraft:potion{custom_potion_effects:[{id:"minecraft:speed",amplifier:4,duration:6000}]}
Earlier versions used CustomPotionEffects with numeric IDs. The potion generator writes the right format for your version.
Splash, lingering and tipped arrows
| Type | Item ID |
|---|---|
| Drinkable | minecraft:potion |
| Splash | minecraft:splash_potion |
| Lingering | minecraft:lingering_potion |
| Tipped arrow | minecraft:tipped_arrow |
/give @p minecraft:splash_potion[potion_contents={potion:"minecraft:strong_healing"}] 3
Only the item ID changes. Lingering potions and tipped arrows give shorter effects than the drinkable potion.
Bedrock data values
Bedrock uses /give @p potion <amount> <data>. Use splash_potion or lingering_potion with the same number.
| Potion | Data value |
|---|---|
| Night Vision | 5 |
| Invisibility | 7 |
| Fire Resistance | 12 |
| Swiftness | 14 (II is 16) |
| Water Breathing | 19 |
| Healing | 21 (II is 22) |
| Regeneration | 28 |
| Strength | 31 |
Bedrock /give cannot make custom effects. Apply them directly with /effect instead.
When it does not work
- You get a water bottle: wrong format for your version, a typo, or a variant that does not exist, such as
strong_night_vision. - The effect is too short: duration is in ticks; 30 seconds is 600.
- The level is one too high: amplifier starts at 0, so level II is 1.
- custom_effects does nothing: use the effect ID (
speed), not the potion name (swiftness).
Check your command
The Command Error Doctor checks common syntax mistakes in your browser.