---
obsidianUIMode: preview
cssclasses: json5e-monster
tags:
- compendium/src/5e/mm
- monster/size/tiny
- monster/type/construct
aliases: ["Homunculus"]
---
# Homunculus
*Source: SRD / Basic Rules*  

```ad-statblock
title: Homunculus
![](compendium/bestiary/construct/token/homunculus.png#token)
*Tiny construct, Neutral*

- **Armor Class** 13  (natural armor)
- **Hit Points** 5 (`2d4`)
- **Speed** 20 ft., fly 40 ft.

|STR|DEX|CON|INT|WIS|CHA|
|:---:|:---:|:---:|:---:|:---:|:---:|
| 4 (-3)|15 (+2)|11 (+0)|10 (+0)|10 (+0)| 7 (-2)|

- **Proficiency Bonus** +2
- **Saving Throws** ⏤
- **Skills** ⏤
- **Senses** darkvision 60 ft., passive Perception 10
- **Damage Immunities** poison
- **Condition Immunities** charmed, poisoned
- **Languages** understands the languages of its creator but can't speak
- **Challenge** 0

## Traits

***Telepathic Bond.*** While the homunculus is on the same plane of existence as its master, it can magically convey what it senses to its master, and the two can communicate telepathically.

## Actions

***Bite.*** *Melee Weapon Attack:* +4 to hit, reach 5 ft., one creature. *Hit:* 1 piercing damage, and the target must succeed on a DC 10 Constitution saving throw or be [poisoned](rules/conditions.md#poisoned) for 1 minute. If the saving throw fails by 5 or more, the target is instead [poisoned](rules/conditions.md#poisoned) for 5 (`1d10`) minutes and [unconscious](rules/conditions.md#unconscious) while [poisoned](rules/conditions.md#poisoned) in this way.
```
^statblock