This is because when you make silicon transistors that are that small there is a probability that you will have bad sectors. this is why there are intel chips with different numbers of cores as option. They produce all the chips with the same cores but some come out with faulty cores even if they did everything perfectly.
With an intel chip it is an expensive enough item to disclose the amount of breakage on the packaging. With usbs they are so cheap that they don't do this.
Also usbs can often have hidden sectors that are used by the operating system of the usb. Some usbs that sell as 16 gigs actually have closer to 32 gigs.