Pokémon GO/Pokémon

CP (Combat Power)
The higher CP a Pokémon has, the stronger it will be during battle. You can increase the CP of your Pokémon by giving it a Power Up. This value is based on the Pokémon's Attack, Defense, and Stamina.

Level
Like the trainer each Pokémon has a level represented by the white semi-circle near the top of their screen. The max level is 40, requiring two Power Ups to gain one level. All wild Pokémon are caught at whole levels, never at half levels.

HP (Hit Points)
The more hit points a Pokémon has, the more damage it can sustain during a battle without fainting.

Type
Each species has a primary and sometimes a secondary associated type. During battle, strengths and weaknesses of each type will impact how effective attacks are against the opponent.

Weight/Height
Each species has an average weight and height. Some Pokémon captured may be significantly bigger or smaller than these sizes, and the game will label them as XS or XL.

Moves
Each Pokémon has two moves for use during Gym battles, a quick move and a special move. Each species has two quick moves and up to four special moves available. The two moves each Pokémon gets are random and cannot be changed, except by evolution which will assign a new set of moves.

Hidden attributes
Each Pokémon has a hidden Stamina, Attack and Defense stat that is represented in the game by their CP and HP. Each of these hidden stats is a combination of the species' base value plus a value specific to the Pokémon (IV). Each of the 3 IVs can can vary from 0 to 15. HP and CP are rounded down to the nearest integer with a minimum of 10.

$$Attack = Attack_{Species} + Attack_{IV}$$

$$Defense = Defense_{Species} + Defense_{IV}$$

$$Stamina = Stamina_{Species} + Stamina_{IV}$$

$$CP = \frac{Attack \times \sqrt{Defense} \times \sqrt{Stamina} \times CpMultiplier^2}{10}$$

$$HP = Stamina \times CpMultiplier$$

CpMultiplier
CP Multiplier is a hard-coded value in the game for each level. Since powering up goes in half-level increments, the half level CpMultiplier must be calculated. When looking up the relevant multiplier, use the Pokémon's level, not your trainer level.

$$CpMultiplier_{level + 0.5} = \sqrt{(CpMultiplier_{level}^2 + CpMultiplier_{level+1}^2)/2}$$

🇨🇴 🇨🇴 🇨🇴