I have a Phantom 3 4k and on examination of the geotag information the altitude reading is often inaccurate by 10-15 metres. Why is this? Is it because the drone only has a GPS rather than a DGPS unit?
10-15 m is indeed the uncertainty that you get with a normal GPS in Z (it is roughly 3 times less accurate than XY). Furthermore, the XY errors are compensated by the large number of photograph on nearly the same plane, but it is more difficult to calibrate in Z.
Another source of difference is the fact that GPS measures the height above ellipsoid and not above sea level, but this would results in a systematic error that is often corrected (I don't know in the case of your device).
The drone gps might have less accurate elevation than ground gps receivers. If this is the case for you, you might want to optimize your geotagged photos with some markers you have photographed and then collected gps waypoints from the ground, to get more accurate elevation. For example in the PhotoScan software, this is covered in Ch. 4 of the manual (Referencing) http://www.agisoft.com/downloads/user-manuals/