When the focal length of a lens is given, for exampe f=8mm, some users expect the lens to have a focal length that is exactly 8mm and therefore expect the FOV (Field Of View) to be constant for alle lenses of the same type.
You should be aware however, that there are production tolerances that can’t not be avoided (at least not for the same price).
Typical focal length can vary up to 2-3%.
At the extreme an extreme an f=8mm lens can have a focal length between 8mm*0.97 = 7.76mm and 8mm*1.03 = 8.24mm.
While changes in focal length are “relatively harmless” when working at long distance, the influence on the FOV when working in short distances with wide angles can be quite large.
With the production tolerances, the distance from the iris to its neighbor lenses changes, and with that the entrance pupil and exit pupil change, because the pupils are the images of the iris.
As the viewing angle is given by the combination of principal point and size and position of the entrance pupil, the FOV changes with the production tolerances. As the focal length is given as distance between principal point and sensor for objects at infinity, the focal length also changes with production tolerances.
As an implication therefore the actual FOV chosen should a bit larger than the FOV needed and: you should never work with an uncalibrated image. Always work in millimeters and not in pixels!
These tolerances are natural can only be avoided by higher accuracy or by sorting. Both would involve higher cost.