# Experience points
Experience points or XP measure your progress toward gaining experience levels.  You gain an experience level when your XP crosses the next threshold.  They are shown in the status line when the showexp option is on (default: off).
Experience points can be gained by:

Killing monsters, with stronger monsters awarding more points.
Eating tripe, yielding 1 XP (50% chance).
The first minor consultation from the Oracle gives 5 XP.
The first major consultation gives 55 XP or more, depending on your level.
Quaffing from sinks, which can give 1 XP (5% chance).
Untrapping squeaky boards, for 1 XP.
The first novel you read gives 20 XP (Nethack 3.6)
See the oracle page for the precise mechanics, in particular, order matters.
A blessed potion of gain level increases your level by 1, and gives you enough XP to put you part of the way to the next level, while an uncursed potion, a wraith corpse or a "very educational experience" with a foocubus just gives you enough XP needed to gain the one level.
When you lose a level, your XP is set to 1 less than your current level needs.

Experience points from killing monsters
The number of experience points obtained by killing a monster of level ML is computed as follows:[1]

Start with (ML)*(ML) + 1;
Add 3 if the monster's speed is between 13 and 18, and 5 if the monster's speed is at least 19;
Add a bonus for low armor class monsters: +5 for AC 2, +6 for AC 1, +7 for AC 0, and +(14-2*AC) for negative AC;
Add 1000 for a sea monster with a drowning attack, if you don't have magical breathing and are not polymorphed into an amphibious monster;
Add 7*ML if the monster is M2_NASTY;
Add 50 if ML is at least 9;
For each attack that the monster has, add a bonus based on attack type: +10 for spellcasting attacks, +5 for weapon attacks, +3 for all other attack types, except for passive, claw, bite, kick and headbutt attacks, which give no bonus;
For each attack that the monster has, add a bonus based on damage type: +(50-ML) for sliming, stoning or drain life, and +ML for a damage type that is the same as a dragon's breath attack (fire, cold, shock, sleep, disintegration, magic missiles, acid, or strength-draining poison — but not for dexterity- or constitution-draining poison);
For each attack that the monster has, add a +ML bonus if the attack's maximum damage is at least 24.
If the monster has been cloned or revived, there is a penalty to experience gained based on the total number of monsters of that type that have been killed. 

No. kills
Xp penalty

1..20
None

21..40
xp/2

41..80
xp/4

81..120
xp/8

121..180
xp/16

181..240
xp/32

241..255+
xp/64

The result is the number of points you earn for killing the monster. Mail daemons are a special case; they are only worth 1 experience point.
This calculation takes into account all attacks listed in the monster's definition from the source code, including attacks that are not implemented (such as the green slime's passive sliming attack). The armor class and speed used in this calculation are the base values; they do not take into account the armor that the monster might have worn, or the extra speed that the monster might have had from a wand of speed monster, a monster spell, etc. On the other hand, the monster level used here is the monster's actual level at the time it was killed, not the base level or the level at which it was created.

References

↑ src/exper.c in NetHack 3.6.0, line 73

This page may need to be updated for the current version of NetHack.
It may contain text specific to NetHack 3.6.0. Information on this page may be out of date.
Editors: After reviewing this page and making necessary edits, please change the {{nethack-360}} tag to the current version's tag or {{noversion}} as appropriate.