The problem with millivolts lies in making a galvanic connection. The least bit of oxide and it becomes nonlinear. But if you are working with ac it tends to average out as a first approximation.
Thermal voltages can be a problem if the circuit uses more than one material. Various grades of copper, tinned copper, iron, and so on will create thermal voltages all over the place.
Temperature variations cause resistance changes, resulting in drifting readings.
Nothing is ever as simple as you want, especially if you are looking for precise results.