a branch point
When a function is multi-valued, the trouble does not happen uniformly across the plane; it concentrates at special points. A branch point is a point you cannot encircle by a small loop without the function's value changing when you come back. It is the pivot around which the multi-valuedness rotates.
Take log z. Start at any non-zero point, fix a value of log there, then carry that value continuously around a small circle once counterclockwise and return to the start. The modulus part ln|z| comes back to where it began, but the argument has increased by 2 pi, so log z has increased by 2 pi i and does not match its starting value. The point at the center of this behaviour, the origin z = 0, is the branch point of the logarithm. The defining test is exactly this failure to return: encircling a branch point switches you to a different branch. For log z the only finite branch point is 0 (with another, in a precise sense, at infinity). For a square root sqrt(z) the branch point is again at 0, but going around twice restores the value (because there are only two branches), so it is a branch point of order two.
Knowing where the branch points are tells you where the cuts must go: a branch cut has to connect or run out from the branch points so that loops around them become impossible inside your domain. For example sqrt(z^2 - 1) has branch points at z = 1 and z = -1, so you might cut along the segment between them or along two rays heading outward. Branch points are the immovable obstructions; cuts are the movable curtains you draw to avoid looping around them.
Walk around the unit circle starting at z = 1 with log 1 = 0. At angle theta the value is i theta; after a full loop theta = 2 pi, so log returned as 2 pi i, not 0.
A loop around 0 changes log by 2 pi i, so 0 is the branch point.
A branch point is not a pole or an ordinary singularity where the function blows up; log z stays finite near 0 except for the multi-valuedness. The defect is failure to be single-valued, not failure to be finite.