Combat Power

Combat Power or CP is the overall measured strength of any Pokémon. The higher it is, the better the Pokémon will do in battle.

Combat Power is derived from a Pokémon's level, Base Stats and Individual Values, all of these statistics are hidden in Pokémon GO.

Details
When catching Pokémon, CP is either directly displayed, or three questions marks may show (???) if its CP is higher than any of already captured Pokémon in Trainer's collection. CP and the difficulty of catching a Pokémon is usually correlated, although this also depends on the species in question.

The higher the level a Trainer is, the higher the CP of a Pokémon can be. Trainer can Power Up their Pokémon up to ten levels above current Trainer Level. Wild Pokémon caught will also have higher CP as the Trainer levels up. Once the Trainer has reached Level 30, the CP ceiling for wild Pokémon is capped at level 35. A similar cap for Pokémon hatched from Eggs is reached at Trainer Level 20.

The arc above a Pokémon on its summary page indicates how high its CP is relative to its CP potential with a dot. For example, a dot on the arc of a Pokémon at its lowest CP level would be all the way to the left, while dot on the arc of a Pokémon at the maximum level at Trainer Level would be all the way to the right.

However, this arc scale is rather logarithmic than linear, as from a perspective of a Level 30 player, a level 10 Pokémon would have the dot roughly in the middle, while further powering up Pokémon to the same level as Trainer's one would move the dot only for a short distance.

Individual Values
Individual Values or IVs can determine if a Pokémon is stronger in battle than another Pokémon of the same species, as they are unique to each Pokémon obtained.

They have a range from 0 to 15. The 3 Individual Values are:
 * Attack – determines how much damage the Pokémon does in battle, and also has the highest influence on CP.
 * Defense – determines how much damage the Pokémon can receive in battle, and also has an influence on CP.
 * Stamina – mainly determines HP of Pokémon and also CP levels of the Pokémon.

Pokémon Appraisal allows Trainer to check them. Each Pokémon species has base stats. The base stats are the lowest possible IV for that species. If a Pokémon's stats matches the base value, they are considered to have an IV of zero.

There are external tools, such as Pokémon IV Calculator to help Trainer determine its chance of having "perfect" IVs.

Relationship with obtain methods
Pokémon obtained from different methods have IV floors, which mean all three values are not lower than a certain number. This is likely to make those obtain methods more rewarding.

Some methods include a set CP level of Pokémon given. Therefore, certain IV (especially maximum and minimum) can be interpreted by simply checking the CP value.

Pokémon from GO Snapshot are treated as wild Pokémon, but they cannot be weather boosted.

Combat Power formula
The following mathematics formula is used for Combat Power of Pokémon $${CP = \frac{(Base Atk + Atk IV) ~ \times ~ \sqrt{Base Def + Def IV} ~ \times ~ \sqrt{Base Stam + Stam IV} ~ \times ~ (Level Scalar)^{2}}{10}}$$

As it can be seen, Combat Power is heavily based on a Base Stats, Individual Values and Level Scalar.

Where  depends on level of Pokémon and it has following values for each level: