Updated:
A ready-to-ride horse (Java 1.21.5+)
/summon minecraft:horse ~ ~ ~ {Tame:1b,equipment:{saddle:{id:"minecraft:saddle",count:1}},attributes:[{id:"minecraft:movement_speed",base:0.3375},{id:"minecraft:jump_strength",base:1.0},{id:"minecraft:max_health",base:30}],Health:30f}
Tame:1b: already tamed, so it will not throw you off.equipment:{saddle:…}: saddled. Without a saddle you can sit on it but not steer.movement_speed0.3375: the best speed a natural horse can have.jump_strength1.0: the best natural jump, a little over five blocks.max_health30 withHealth:30f: 15 hearts. Raising the maximum alone does not heal the horse.
Compared with natural horses
| Stat | Natural range | This command |
|---|---|---|
| Speed | 0.1125–0.3375 | 0.3375 |
| Jump strength | 0.4–1.0 | 1.0 |
| Max health | 15–30 | 30 |
You can go higher. Above about 0.5 speed the horse catches on block corners and is hard to control, and a very high jump causes fall damage on landing.
What changed between versions
| Version | Saddle | Attribute names |
|---|---|---|
| 1.21.5+ | equipment:{saddle:{id:"minecraft:saddle",count:1}} | minecraft:movement_speed, minecraft:jump_strength |
| 1.21.2–1.21.4 | SaddleItem:{id:"minecraft:saddle",count:1} | Same as above |
| 1.20.5–1.21.1 | SaddleItem:{id:"minecraft:saddle",count:1} | minecraft:generic.movement_speed, minecraft:horse.jump_strength |
1.20.4 and earlier use capitalized tags such as Attributes:[{Name:"generic.movement_speed",Base:0.3375}]. Check this table first when an older tutorial command does nothing.
Add horse armor (1.21.5+)
/summon minecraft:horse ~ ~ ~ {Tame:1b,equipment:{saddle:{id:"minecraft:saddle",count:1},body:{id:"minecraft:diamond_horse_armor",count:1}}}
Horse armor goes in the body slot. Iron and gold horse armor work the same way.
Mount it straight away
/ride @s mount @e[type=minecraft:horse,limit=1,sort=nearest]
Java 1.19.4+ puts you on the nearest horse. See the ride command guide for more.
Bedrock Edition
Bedrock cannot set horse stats with /summon. Use /ride @s summon_ride horse to spawn one under you, give a saddle with /give @s saddle, and breed good horses for better stats.
Common problems
- Cannot steer: no saddle. Check the saddle format for your version.
- Thrown off:
Tame:1bis missing. - Speed unchanged: the attribute name does not match your version and was ignored.
- Health not raised: add
Healthas well.
Common questions
- Donkeys or camels? Replace horse with donkey or camel. Camels move differently, so test the numbers.
- Upgrade a horse you already have?
/execute as @e[type=minecraft:horse,limit=1,sort=nearest] run attribute @s minecraft:movement_speed base set 0.3375(1.21.2+ name). - Skeleton or zombie horses? Use skeleton_horse or zombie_horse with Tame and a saddle.
Check your command
The Command Error Doctor checks common syntax mistakes in your browser.